:root{--layer-menu: 20;--layer-dialog: 50;--layer-toast: 60;--breakpoint-phone: 650px;--breakpoint-tablet: 900px;--code-keyword: #94362b;--code-string: #28685b;--code-number: #28685b;--select-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='m3 4.5 3 3 3-3' stroke='%236b7077' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--brand-coral: var(--accent);--brand-amber: var(--accent);--brand-lime: #00877c;--motion: .14s;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--font-sans: "Kompile Plex", "Segoe UI", system-ui, sans-serif;--font-code: "Kompile Plex Mono", monospace;--page: #eef1f4;--paper: #ffffff;--soft: #e6eaef;--hover: #f3f5f8;--line: #d5dbe2;--control-line: #86919e;--ink: #161b21;--muted: #535d69;--code-surface: #1d232a;--accent: #0046ad;--accent-hover: #003b93;--accent-ink: #ffffff;--accent-strong: #0046ad;--selection: #d6e3f7;--focus-ring: #161b21;--green: var(--ink);--green-hover: #2c333c;--success: #00776d;--run: #1d7f3b;--run-hover: #166a30;--run-ink: #ffffff;--positive-surface: #ddf1ee;--info: #1f5d99;--info-surface: #e5eef8;--warning: #7d5a1f;--warning-surface: #f6eddc;--error: #b42d36;--error-surface: #fde8e9;--radius-xs: 4px;--radius-sm: 6px;--radius: 8px;--control-height: 40px;--form-control-height: 40px;--header-height: 56px;--shadow-small: none;--shadow-menu: 0 10px 30px #0f172a26, 0 1px 3px #0f172a1f;--text-xs: 14px;--text-sm: 15px;--text-base: 17px;--text-lg: 20px;--text-title: 30px}:root[data-theme=dark]{--code-keyword: #ff9f8f;--code-string: #badc58;--code-number: #68b6a5;--shadow-small: none;--select-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='m3 4.5 3 3 3-3' stroke='%23a4a8b2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--page: #12161b;--paper: #1a1f26;--soft: #232a32;--hover: #1f252d;--line: #2e363f;--control-line: #66727f;--ink: #e9edf1;--muted: #a3adb8;--code-surface: #151a20;--accent: #7aa5f2;--accent-hover: #95b8f5;--accent-ink: #0b1424;--accent-strong: #9cbdf6;--selection: #1e3352;--focus-ring: #e9edf1;--green: var(--ink);--green-hover: #ffffff;--success: #5cc8b8;--run: #46b96a;--run-hover: #5ccb7f;--run-ink: #0b1a10;--positive-surface: #14322e;--info: #9ec7f5;--info-surface: #1b2b3d;--warning: #dcb36e;--warning-surface: #3a2e17;--error: #ff9fa5;--error-surface: #3d2226;--shadow-menu: 0 10px 30px #0008, 0 0 0 1px #2e363f}:root{font-family:var(--font-sans);color:var(--ink);background:var(--hover);font-synthesis:none;font-size:17px;line-height:1.55}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid var(--focus-ring);outline-offset:1px}h1,h2,h3,p{margin:0}h1{font-size:clamp(30px,3.2vw,42px);letter-spacing:-1.5px;line-height:1.18;font-weight:700}h2{font-size:22px;font-weight:620;letter-spacing:-.5px;line-height:1.3}h3{font-size:18px;font-weight:650}p{line-height:1.65}b,strong{font-weight:650}small,.small{font-size:16px}.muted{color:var(--muted)}.error-text{color:var(--error)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.eyebrow{font-size:16px;color:var(--muted);font-weight:550;letter-spacing:.025em;margin-bottom:10px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;gap:8px;justify-content:center;align-items:center;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:8px 14px;background:var(--paper);color:var(--ink);font-size:16px;font-weight:600;line-height:1.35;white-space:nowrap;text-decoration:none;transition:background .12s,transform .12s}.button:hover:not(:disabled){background:var(--soft)}.button:active:not(:disabled){transform:translateY(1px)}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:var(--green-hover);border-color:var(--green-hover)}.button.quiet{border-color:transparent;background:transparent;padding-left:10px;padding-right:10px}.button.quiet:hover:not(:disabled){background:var(--soft)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;background:transparent;color:var(--muted);padding:0}.icon-button:hover{background:var(--soft);color:var(--ink)}.text-link,.text-button{font-size:16px;font-weight:600;display:inline-flex;align-items:center;gap:6px;color:var(--ink)}.text-link:hover,.text-button:hover{text-decoration:underline;text-underline-offset:4px}.text-button{border:none;background:transparent;white-space:nowrap;padding:5px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skip-link{position:fixed;top:-100px;left:20px;background:var(--paper);padding:12px 18px;z-index:100}.skip-link:focus{top:12px}.app-shell{display:flex;min-height:100vh;flex-direction:column}.site-header{height:76px;background:var(--page);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-inner{height:100%;max-width:1420px;padding:0 42px;margin:auto;display:flex;align-items:center;gap:34px}.brand{display:inline-flex;gap:10px;align-items:center;font-size:30px;font-weight:700;letter-spacing:-1.2px;flex-shrink:0}.brand img{width:33px;height:33px;object-fit:contain;border-radius:8px}.brand.has-logo img{width:auto;max-width:86px;max-height:36px;object-fit:contain;border-radius:0}.brand-period{color:var(--muted)}.brand.compact{font-size:28px}.desktop-nav{display:flex;align-self:stretch;gap:24px;flex:1;align-items:center}.desktop-nav a{display:flex;align-items:center;height:100%;position:relative;font-size:16px;color:var(--muted);white-space:nowrap}.desktop-nav a.active{color:var(--ink);font-weight:650}.desktop-nav a.active:after{content:"";height:2px;background:var(--ink);position:absolute;bottom:0;left:0;right:0}.desktop-nav a:hover{color:var(--ink)}.header-actions{display:flex;gap:14px;align-items:center;margin-left:auto}.account-menu{position:relative}.account-menu summary{display:flex;align-items:center;gap:9px;font-size:16px;list-style:none;cursor:pointer}.account-menu summary::-webkit-details-marker{display:none}.avatar,.person-avatar{width:33px;height:33px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center;background:var(--soft);color:var(--muted);font-size:16px;font-weight:650}.account-dropdown{position:absolute;right:0;top:48px;width:250px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px #23281e15;padding:8px}.account-dropdown>div{padding:10px 12px;border-bottom:1px solid var(--line);margin-bottom:5px}.account-dropdown small{display:block;color:var(--muted);margin-top:3px;word-break:break-all}.account-dropdown a,.account-dropdown button{display:flex;align-items:center;gap:10px;border:none;background:transparent;padding:10px 12px;width:100%;text-align:left;font-size:16px;border-radius:6px}.account-dropdown a:hover,.account-dropdown button:hover{background:var(--soft)}.mobile-menu-button,.mobile-nav{display:none}.main-content{width:100%;max-width:1240px;margin:0 auto;padding:48px 42px 70px;flex:1;min-width:0}.main-content.compiler-main{max-width:1440px;padding-top:22px}.page-title{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:30px}.page-title .actions{flex-shrink:0}.page-description{color:var(--muted);font-size:16px;margin-top:12px;max-width:750px}.page-description p{line-height:1.5}.overview-line{display:flex;gap:38px;align-items:center;padding:0 0 29px;border-bottom:1px solid var(--line);font-size:16px;color:var(--muted)}.overview-line>span{display:flex;align-items:baseline;gap:9px}.overview-line b{font-size:27px;color:var(--ink);font-weight:600;letter-spacing:-.7px}.overview-line a{margin-left:auto;display:flex;align-items:center;gap:7px;color:var(--ink)}.section{margin-top:34px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.section-head p{margin:0}.record-list{border-top:1px solid var(--line)}.record{display:flex;align-items:center;gap:18px;padding:20px 4px;border-bottom:1px solid var(--line);transition:background .12s}.record:hover{background:var(--soft)}.record-main{flex:1;min-width:0}.record-main p{font-size:16px;margin-top:5px;color:var(--muted);line-height:1.45}.record-main small{display:block;margin-top:4px;color:var(--muted)}.record-title{font-size:18px;font-weight:600;line-height:1.4;display:inline-block}.record-title:hover{text-decoration:underline;text-underline-offset:4px}.record-icon{width:38px;height:38px;background:var(--soft);border-radius:11px;display:flex;align-items:center;justify-content:center;color:var(--muted);flex-shrink:0}.record-actions{display:flex;gap:2px;align-items:center;flex-shrink:0}.record.archived{opacity:.6}.row-number{font-variant-numeric:tabular-nums;font-size:16px;color:var(--muted);min-width:26px}.two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px}.three-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr);gap:18px}.dashboard-bottom{gap:45px}.dashboard-bottom .record-icon{display:none}.dashboard-bottom .record-title{font-size:16px}.dashboard-bottom .record{padding:19px 0}.dashboard-bottom .record .button{padding-right:0}.dashboard-bottom .record .button:hover{padding-right:8px}.dashboard-bottom .record-list{border-top:none}.empty{padding:42px 20px;text-align:center;border-bottom:1px solid var(--line);color:var(--muted)}.empty .empty-title{font-size:18px;font-weight:600;color:var(--ink);margin-bottom:8px}.empty p{max-width:440px;margin:0 auto}.empty .button{margin-top:18px}.loading{display:flex;gap:12px;align-items:center;justify-content:center;padding:55px 20px;color:var(--muted);font-size:16px}.boot-error{max-width:480px;margin:15vh auto;padding:24px}.boot-error h1{margin-bottom:24px}.breadcrumbs{font-size:16px;color:var(--muted);display:flex;align-items:center;gap:8px;margin-bottom:22px;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--ink)}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px;min-width:0}.field>label{font-size:16px;font-weight:600}.field small{color:var(--muted);line-height:1.5}.field .field-message{color:var(--error);display:flex;gap:5px;align-items:center}.field-error input,.field-error textarea{background:var(--hover)}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:7px;padding:10px 12px;min-height:42px;transition:background .12s;min-width:0}input::placeholder,textarea::placeholder{color:var(--muted)}textarea{resize:vertical;line-height:1.6}input[readonly]{background:var(--soft);color:var(--muted)}input[type=checkbox]{width:16px;height:16px;accent-color:var(--green);flex-shrink:0;cursor:pointer}select{padding-right:30px}.password-input{position:relative}.password-input input{padding-right:45px!important}.password-input .icon-button{position:absolute;right:4px;top:3px;height:36px}.check-field{display:flex;gap:10px;align-items:flex-start;font-size:16px;margin:18px 0;cursor:pointer}.check-field input{margin:3px 0 0}.check-field b{font-weight:550}.check-field small{display:block;font-size:16px;color:var(--muted);margin-top:3px;line-height:1.5}.compact-check{display:flex;gap:8px;align-items:center;font-size:16px;white-space:nowrap}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);padding:14px 22px;background:var(--ink);color:var(--paper);border-radius:10px;font-size:16px;z-index:100;box-shadow:0 8px 32px #2223;max-width:calc(100vw - 32px);text-align:center}.modal{padding:0;border:1px solid var(--line);border-radius:14px;width:480px;max-width:calc(100vw - 32px);max-height:90dvh;background:var(--paper);color:var(--ink);box-shadow:0 20px 90px #1b201d22}.modal.wide{width:750px}.modal::backdrop{background:#252d244d;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:1}.modal-head h2{font-size:20px}.modal-body{padding:24px}.modal-body>p{margin-bottom:22px;font-size:16px}.dialog-actions{justify-content:flex-end;margin-top:24px}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:26px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{white-space:nowrap;display:flex;gap:8px;align-items:center;background:transparent;padding:13px 0;border:0;border-bottom:2px solid transparent;font-size:16px;color:var(--muted)}.tabs button.selected{color:var(--ink);font-weight:650;border-bottom-color:var(--ink)}.tab-count{font-size:16px;color:var(--muted)}.file-button{position:relative;cursor:pointer;overflow:hidden}.file-button input[type=file]{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.open-link-row{display:flex;gap:8px;max-width:750px}.open-link-row input{font-size:16px}.compact-section h3{margin-bottom:5px}.compact-section .open-link-row{margin-top:14px}.search-bar,.people-search{display:flex;gap:12px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:4px 15px;margin-bottom:26px}.search-bar>svg,.people-search>svg{color:var(--muted);flex-shrink:0}.search-bar input,.people-search input{border:none!important;background:transparent!important;padding-left:0!important;outline:none!important;box-shadow:none}.search-bar>span{white-space:nowrap;font-size:16px;color:var(--muted)}.people-search{max-width:850px;padding:8px 17px}.people-search input{font-size:19px}.people-search>span{white-space:nowrap}.person-record{padding:22px 2px}.person-avatar{width:42px;height:42px;font-size:18px}.account-gate{max-width:560px;margin:70px auto;text-align:center;padding:15px}.account-gate>svg{color:var(--muted);margin-bottom:24px}.account-gate h1{margin-bottom:22px}.account-gate>p{margin-bottom:24px;color:var(--muted)}.account-gate .actions{justify-content:center}.account-gate form{text-align:left;max-width:360px;margin:24px auto}.account-gate .alert{text-align:left}.auth-page{min-height:100dvh;display:grid;grid-template-columns:46% 54%;background:var(--paper)}.auth-story{padding:46px 9vw 35px 5vw;background:var(--soft);display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-note{margin:auto 0;padding:52px 0}.auth-note .eyebrow{color:var(--muted);font-size:16px}.auth-note h1{font-size:clamp(42px,5.1vw,72px);font-weight:600;letter-spacing:-3px;line-height:1.08;margin:20px 0 25px}.auth-note h1 span{color:var(--muted)}.auth-note>p:not(.eyebrow){font-size:18px;color:var(--muted);line-height:1.8}.auth-code{font-family:var(--font-sans);color:var(--muted);font-size:17px;line-height:1.9;margin-top:35px}.auth-code>span:not(.code-comment){color:var(--ink)}.auth-code .code-comment,.auth-footer{font-size:16px;color:var(--muted)}.auth-form{display:flex;align-items:center;justify-content:center;padding:60px 40px}.auth-form-inner{width:360px;max-width:100%}.auth-form h2{font-size:35px;line-height:1.2;letter-spacing:-1px;font-weight:650;margin-bottom:14px}.auth-form .muted{font-size:16px;margin-bottom:30px}.auth-form form{margin-top:30px}.auth-form .field{margin-bottom:20px}.auth-submit{width:100%;margin-top:17px;min-height:44px}.forgot-link{display:block;font-size:16px;text-align:right;margin-top:-9px}.forgot-link:hover,.auth-alternate a:hover{text-decoration:underline;text-underline-offset:4px}.auth-alternate{font-size:16px;color:var(--muted);text-align:center;margin-top:24px}.auth-alternate a{color:var(--ink);font-weight:600;margin-left:3px}.back-link{display:flex;gap:7px;align-items:center;font-size:16px;margin-top:25px}.development-note{font-size:16px;color:var(--muted);margin-top:30px}.mobile-brand{display:none}.settings-form{max-width:960px}.form-section{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:44px;padding:30px 0;border-bottom:1px solid var(--line)}.form-section:first-child{padding-top:8px}.form-heading h2{font-size:19px;margin-bottom:9px}.form-heading p{font-size:16px;color:var(--muted);max-width:220px}.form-fields .field:last-child{margin-bottom:0}.form-fields .actions{margin-top:15px}.save-bar{padding:22px 0;display:flex;gap:20px;justify-content:space-between;align-items:center;position:sticky;bottom:0;background:var(--page);border-bottom:1px solid var(--line);z-index:5}.inline-form{display:flex;gap:12px;align-items:flex-end;max-width:630px;margin-top:20px;margin-bottom:25px}.inline-form .field{flex:1;margin:0}.content-tools{margin:8px 0 20px;flex-wrap:wrap}.question-form{max-width:900px}.question-form .field{margin-bottom:28px}.rich-editor{background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden}.rich-toolbar{display:flex;gap:3px;align-items:center;padding:7px 10px;background:var(--hover);border-bottom:1px solid var(--line)}.rich-surface{min-height:180px;padding:17px;outline:none;line-height:1.65}.rich-surface p+p{margin-top:8px}.rich-surface pre,.prose pre{font-family:var(--font-code);background:var(--soft);border-radius:5px;padding:12px;overflow-x:auto}.rich-surface a,.prose a{text-decoration:underline;text-underline-offset:3px}.code-editor{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink)}.code-editor>.cm-editor{flex:1;min-height:inherit;max-height:680px}.code-input{font-family:var(--font-code);tab-size:4;font-size:16px!important}.test-editor{border-bottom:1px solid var(--line);padding:16px 0}.test-summary{display:flex;align-items:center;justify-content:space-between;gap:15px}.test-heading{display:flex;gap:15px;align-items:center;border:none;background:transparent;flex:1;text-align:left;padding:5px 0;min-width:0;font-size:16px}.test-heading .muted{font-size:16px}.test-fields{padding:22px 0 8px}.test-fields>.two-column{gap:20px}.test-fields .actions .check-field{margin:0 20px 12px 0}.reference-section{max-width:1100px}.reference-section>p{margin:9px 0 22px}.reference-section>.actions{margin-top:18px}.detail-list{display:grid;grid-template-columns:140px minmax(0,1fr);gap:15px 18px;font-size:16px;margin:22px 0}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;overflow-wrap:anywhere}.logo-preview{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;gap:24px;align-items:center;margin-bottom:16px}.logo-preview img{width:auto;max-width:180px;max-height:70px;object-fit:contain}.logo-preview p{font-size:16px;color:var(--muted);margin-top:5px}.account-search{max-width:330px}.audit-row{display:flex;align-items:flex-start;gap:25px;padding:19px 0;border-bottom:1px solid var(--line);font-size:16px}.audit-person{min-width:130px;color:var(--muted)}.audit-row>div{flex:1;min-width:0}.audit-row p{font-size:16px;color:var(--muted);word-break:break-word;margin-top:5px}.audit-row time{font-size:16px;color:var(--muted);white-space:nowrap}.filter-bar{display:flex;gap:14px;align-items:center;padding-bottom:22px;flex-wrap:wrap}.filter-bar select{width:auto;min-width:175px}.table-wrap{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:16px;text-align:left}.data-table th{font-size:16px;font-weight:550;color:var(--muted);padding:13px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:18px 12px;vertical-align:middle;border-bottom:1px solid var(--line)}.data-table td:first-child,.data-table th:first-child{padding-left:0}.data-table td:last-child{padding-right:0;text-align:right}.data-table td small{display:block;margin-top:5px;font-size:16px;color:var(--muted)}.data-table a:not(.button){font-weight:600}.data-table a:not(.button):hover{text-decoration:underline;text-underline-offset:4px}.pager{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-top:24px;font-size:16px;color:var(--muted)}.status{font-size:16px;display:inline-flex;align-items:center;gap:6px;line-height:1.4;white-space:nowrap;color:var(--muted)}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--control-line);flex-shrink:0}.status.good{color:var(--success)}.status.good .status-dot{background:var(--success)}.status.bad .status-dot{background:var(--error)}.submission-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:30px;align-items:start}.submission-code{position:sticky;top:96px}.submission-code .code-editor{border-top:none;border-radius:0 0 8px 8px}.submission-result{min-width:0}.review-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:45px;border-top:1px solid var(--line);margin-top:38px}.review-grid h2{margin-bottom:10px}.review-grid .section>p{font-size:16px;margin-bottom:22px}.feedback-text{white-space:pre-wrap}.workspace-path{display:flex;gap:8px;align-items:center;font-size:16px;color:var(--muted);margin-bottom:22px}.workspace-path>a:hover{color:var(--ink)}.workspace-path>span:not(.workspace-clock){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-clock{margin-left:auto;display:flex;gap:6px;align-items:center;font-variant-numeric:tabular-nums;font-size:16px;color:var(--ink);flex-shrink:0}.workspace-clock.expired{color:var(--error)}.question-switcher{display:flex;gap:8px;overflow-x:auto;padding:0 0 16px;margin-bottom:10px;scrollbar-width:thin}.question-switcher a{display:inline-flex;gap:8px;align-items:center;padding:7px 12px;background:transparent;border:1px solid var(--line);font-size:16px;white-space:nowrap;color:var(--muted);border-radius:7px}.question-switcher a.current{background:var(--soft);color:var(--muted);border-color:var(--line)}.question-switcher a:hover{background:var(--soft)}.question-switcher a span{max-width:170px;overflow:hidden;text-overflow:ellipsis}.workspace-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.workspace-title h1{font-size:28px;letter-spacing:-.7px}.workspace-save{font-size:16px;color:var(--muted);display:flex;align-items:center;gap:6px;white-space:nowrap}.unsaved-dot{width:5px;height:5px;background:var(--success);border-radius:50%}.mobile-workspace-tabs{display:none}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px}.workspace-code{min-width:0}.workspace-code .code-editor{border-top:none;border-radius:0 0 7px 7px}.workspace-code .code-editor>.cm-editor{height:410px;min-height:410px;max-height:65vh}.editor-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:7px 15px;background:var(--soft);border:1px solid var(--line);border-radius:8px 8px 0 0;font-size:16px;min-height:44px}.editor-toolbar .actions{gap:0}.editor-toolbar .icon-button{width:31px;height:28px}.editor-toolbar .muted{margin-left:6px}.compiler-actions{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:15px 0}.compiler-actions .button{min-width:110px}.keyboard-hint{font-size:16px;color:var(--muted);display:flex;gap:4px;align-items:center;white-space:nowrap}.workspace-problem{min-width:0;border:1px solid var(--line);background:var(--paper);border-radius:8px;overflow:hidden;align-self:start}.workspace-problem>.tabs{padding:0 20px;gap:20px;margin:0;font-size:16px}.problem-content{padding:21px;max-height:480px;overflow-y:auto}.prose{font-size:16px;line-height:1.8;overflow-wrap:break-word}.prose h2,.prose h3{margin:20px 0 12px}.prose p+p{margin-top:14px}.prose ul,.prose ol{padding-left:22px}.prose table{border-collapse:collapse;width:100%;margin:16px 0;font-size:16px}.prose td,.prose th{border:1px solid var(--line);padding:8px}.prose code{font-family:var(--font-code);font-size:.9em}.reading{max-width:820px;margin-bottom:30px}.question-rules{display:flex;gap:10px 18px;flex-wrap:wrap;margin-top:25px;padding-top:18px;border-top:1px solid var(--line);font-size:16px;color:var(--muted)}.sample h3{font-size:16px;margin-bottom:12px}.sample+.sample{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.output-box{background:var(--soft);border:1px solid var(--line);border-radius:7px;min-width:0;overflow:hidden;margin:10px 0}.output-label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;font-size:16px;color:var(--muted)}.output-label .button{border:none;background:transparent;min-height:24px;padding:0 3px;font-size:16px;gap:4px}.output-label .button svg{width:12px;height:12px}.output-box pre{font-family:var(--font-code);font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;max-height:240px;overflow:auto;margin:0;padding:5px 12px 15px}.workspace-result{grid-column:1 / -1;margin-top:3px;padding-top:23px;border-top:1px solid var(--line);min-width:0}.workspace-result .section-head h2{font-size:19px}.result-empty{padding:28px 15px;text-align:center;color:var(--muted);font-size:16px}.result-empty>p{color:var(--muted);font-size:16px;margin:8px 0 4px}.result-heading{display:flex;gap:22px;align-items:center;padding:12px 0 20px;font-size:16px;flex-wrap:wrap}.result-heading .status{font-size:16px}.diagnostic-list{margin-top:18px}.diagnostic{display:flex;gap:17px;align-items:flex-start;justify-content:space-between;text-align:left;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:17px;width:100%;margin-bottom:9px;color:var(--ink)}.diagnostic:hover:not(:disabled){background:var(--soft)}.diagnostic>span:nth-child(2){flex:1;min-width:0}.diagnostic-line{color:var(--muted);font-size:16px;white-space:nowrap;margin-top:2px}.diagnostic b{font-size:16px;overflow-wrap:anywhere;display:block}.diagnostic small{display:block;margin-top:5px;color:var(--muted);font-size:16px;line-height:1.6}.diagnostic>svg{margin-top:2px;flex-shrink:0;color:var(--muted)}.raw-output{margin:20px 0;border-bottom:1px solid var(--line);padding-bottom:15px;font-size:16px}.raw-output summary{cursor:pointer;color:var(--muted)}.raw-output pre{font-family:var(--font-code);font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;margin:16px 0 0}.test-result{border-top:1px solid var(--line)}.test-result summary{display:flex;gap:15px;align-items:center;list-style:none;padding:15px 0;cursor:pointer;font-size:16px}.test-result summary::-webkit-details-marker{display:none}.test-result summary>b{flex:1;min-width:0}.test-result-number{font-variant-numeric:tabular-nums;color:var(--muted);min-width:15px}.test-result .status{margin-left:auto}.test-result-detail{padding:5px 0 20px}.test-result-detail .two-column{gap:14px}.test-result-detail>p{font-size:16px}.test-metrics{display:flex;gap:14px;font-size:16px;color:var(--muted);margin-top:12px}.result-time{margin-top:18px}.next-question{display:flex;align-items:center;gap:10px;padding:18px 0;color:var(--muted);font-size:16px;font-weight:600}.history-row{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;padding:17px 0;border-bottom:1px solid var(--line);font-size:16px}.history-row>div{flex:1;min-width:0}.history-row pre{font-family:var(--font-code);white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;color:var(--muted);max-height:110px;overflow:auto;margin:10px 0 0}.exam-entry{max-width:700px;padding:32px;background:var(--soft);border-radius:10px;margin-top:30px}.exam-entry h2{margin-bottom:18px}.exam-entry p{font-size:16px;margin-bottom:14px;color:var(--muted)}.exam-entry .button{margin-top:8px}.time-detail{display:flex;align-items:center;gap:7px}.about-page{max-width:690px;padding:35px 0}.about-page h1{font-size:62px;line-height:1.12;font-weight:600;margin-bottom:28px}.about-page>p:not(.eyebrow){color:var(--muted);font-size:18px}.about-code{font-family:var(--font-code);font-size:20px;line-height:1.9;color:var(--muted);margin:35px 0}.about-code span{color:var(--ink)}.ql-align-center{text-align:center}.ql-align-right{text-align:right}.ql-align-justify{text-align:justify}.ql-size-small{font-size:.75em}.ql-size-large{font-size:1.5em}.ql-size-huge{font-size:2.5em}.ql-font-monospace{font-family:var(--font-code)}.ql-font-serif{font-family:Georgia,serif}@media(min-width:1500px){.auth-story{padding-left:7vw}.auth-note{max-width:510px}}@media(max-width:1180px){.header-inner{padding:0 28px;gap:25px}.desktop-nav{gap:16px}.desktop-nav a{font-size:16px}.header-actions{gap:9px}.account-name{display:none}.main-content{padding:38px 28px 55px}.keyboard-hint{display:none}.workspace-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}@media(max-width:970px){.desktop-nav{display:none}.mobile-menu-button{display:inline-flex}.header-inner{gap:15px}.mobile-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:16px 24px;background:var(--paper);border-bottom:1px solid var(--line);position:fixed;top:76px;left:0;right:0;z-index:29;box-shadow:0 10px 24px #2221}.mobile-nav a{display:flex;align-items:center;gap:11px;border-radius:7px;padding:12px;font-size:16px;color:var(--muted)}.mobile-nav a.active{background:var(--soft);color:var(--ink)}.form-section{grid-template-columns:190px minmax(0,1fr);gap:25px}.submission-layout{grid-template-columns:1fr}.submission-code{position:static}.submission-code .code-editor>.cm-editor{max-height:420px}.workspace-grid{gap:18px}.workspace-problem>.tabs{gap:14px;padding:0 14px}.workspace-problem>.tabs button{font-size:16px}.people-search>span{display:none}.record .actions .button{padding:8px 10px}}@media(max-width:760px){h1{font-size:34px;letter-spacing:-1px}.site-header{height:64px}.header-inner{padding:0 20px}.brand.compact{font-size:25px}.brand img{width:29px;height:29px}.mobile-nav{top:64px}.main-content{padding:30px 20px 45px}.main-content.compiler-main{padding:18px 16px 40px}.page-title{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:24px}.page-description{font-size:16px;margin-top:10px}.page-title .actions{width:100%;gap:7px}.page-title .actions .button{min-height:38px}.overview-line{gap:24px;flex-wrap:wrap;padding-bottom:22px;font-size:16px}.overview-line b{font-size:23px}.overview-line a{margin-left:0;width:100%;margin-top:4px}.section{margin-top:28px}.section-head h2{font-size:20px}.two-column,.dashboard-bottom,.review-grid{grid-template-columns:1fr;gap:20px}.dashboard-bottom{gap:0}.record{gap:13px;padding:18px 0}.record-icon{width:33px;height:33px;border-radius:9px}.record-icon svg{width:17px;height:17px}.record-title{font-size:16px}.record .record-actions>.button svg{display:none}.record .record-actions .button{font-size:16px}.dashboard-bottom .record-icon{display:none}.row-number{min-width:20px}.tabs{gap:23px;margin-bottom:24px}.tabs button{font-size:16px;padding:12px 0}.form-section{grid-template-columns:1fr;gap:18px;padding:26px 0}.form-heading p{max-width:none}.form-heading h2{font-size:19px;margin-bottom:5px}.form-fields .two-column{gap:0}.form-fields .field{margin-bottom:18px}.save-bar{padding:15px 0}.inline-form{align-items:stretch;flex-direction:column}.inline-form .button{align-self:flex-start}.open-link-row{flex-wrap:wrap}.open-link-row input{flex:1;min-width:220px}.content-tools{gap:15px}.content-tools .actions{gap:3px}.test-summary{align-items:flex-start;gap:7px}.test-heading{flex-wrap:wrap;gap:7px;line-height:1.5}.test-heading .muted{width:100%;padding-left:27px;font-size:16px}.test-summary .actions{gap:0;flex-wrap:nowrap}.test-summary .button{min-height:32px;width:30px;padding:0}.three-column{grid-template-columns:1fr 1fr;gap:16px}.three-column>.field:last-child{grid-column:1 / -1}.test-fields .two-column{gap:0}.question-form .code-editor>.cm-editor{max-height:360px}.auth-page{display:block;min-height:100dvh}.auth-story{display:none}.auth-form{min-height:100dvh;padding:33px 25px 50px;align-items:flex-start;flex-direction:column;justify-content:flex-start}.mobile-brand{display:block;margin:0 0 60px}.auth-form-inner{width:100%;max-width:380px;margin:0 auto}.auth-form h2{font-size:34px}.auth-form-inner .eyebrow{font-size:16px}.auth-form .muted{margin-bottom:25px}.account-gate{margin:35px auto;padding:10px}.account-gate h1{font-size:34px}.search-bar{padding:3px 11px;gap:8px}.search-bar span{display:none}.people-search{padding:5px 12px}.people-search input{font-size:17px}.person-record{flex-wrap:wrap;padding:20px 0}.person-record>.actions{width:100%;padding-left:55px;margin-top:2px}.person-record .button{font-size:16px}.filter-bar{gap:12px}.filter-bar select{flex:1;width:auto;min-width:0}.filter-bar .compact-check{font-size:16px}.table-wrap{overflow:visible}.data-table,.data-table tbody{display:block}.data-table thead{display:none}.data-table tr{display:block;border-bottom:1px solid var(--line);padding:18px 0}.data-table td{display:flex;gap:15px;justify-content:space-between;align-items:center;text-align:right;padding:5px 0;border:none;font-size:16px;flex-wrap:wrap}.data-table td[data-label]:before{content:attr(data-label);margin-right:auto;color:var(--muted);font-size:16px}.data-table td small{width:100%;margin:0;font-size:16px}.data-table tr:hover td{background:transparent}.data-table td:last-child{margin-top:6px}.data-table td:last-child .button{margin-left:auto}.pager{font-size:16px}.pager .button{font-size:16px;min-height:34px;padding:8px 10px}.workspace-path{font-size:16px;margin-bottom:17px;gap:5px}.workspace-path>a{max-width:135px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.workspace-path>span:not(.workspace-clock){display:none}.workspace-clock{font-size:16px}.question-switcher{gap:7px;padding-bottom:12px;margin-bottom:12px}.question-switcher a{padding:6px 10px;font-size:16px}.question-switcher a span{max-width:110px}.workspace-title{gap:14px;margin-bottom:15px}.workspace-title h1{font-size:23px}.workspace-save{font-size:16px}.mobile-workspace-tabs{display:block}.mobile-workspace-tabs .tabs{margin-bottom:14px;gap:30px}.workspace-grid{display:block}.workspace-grid .workspace-code,.workspace-grid .workspace-problem,.workspace-grid .workspace-result{display:none}.workspace-grid.mobile-code .workspace-code,.workspace-grid.mobile-problem .workspace-problem,.workspace-grid.mobile-result .workspace-result{display:block}.workspace-code .code-editor>.cm-editor{height:calc(100dvh - 330px);min-height:330px;max-height:570px}.code-editor .cm-content{font-size:16px}.workspace-problem>.tabs{padding:0 16px;gap:24px}.problem-content{padding:20px;max-height:none;min-height:360px}.workspace-result{margin:0;padding-top:8px;border-top:none;min-height:350px}.compiler-actions{position:sticky;bottom:0;background:var(--page);padding:12px 0;z-index:5}.compiler-actions>.actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px}.compiler-actions .button{min-height:42px}.output-box pre{font-size:16px}.result-heading{gap:12px;padding:5px 0 19px;font-size:16px}.test-result summary{gap:10px;font-size:16px;flex-wrap:wrap}.test-result summary>.small{display:none}.test-result .status{font-size:16px}.test-result-detail .two-column{gap:0}.diagnostic{gap:10px;padding:13px}.diagnostic-line,.diagnostic b,.diagnostic small{font-size:16px}.submission-code .code-editor>.cm-editor{height:340px;min-height:340px}.review-grid{gap:0;margin-top:28px}.logo-preview{padding:21px;flex-wrap:wrap;gap:18px}.logo-preview img{max-width:150px;max-height:60px}.audit-row{gap:10px;flex-wrap:wrap;padding:17px 0}.audit-person{font-size:16px;min-width:0;width:100%}.audit-row time{font-size:16px}.modal{max-width:calc(100vw - 24px);border-radius:12px}.modal-head{padding:17px 20px}.modal-body{padding:20px}.about-page{padding:18px 0}.about-page h1{font-size:45px;letter-spacing:-1.6px}.about-page>p:not(.eyebrow){font-size:16px}.about-code{font-size:18px}.exam-entry{padding:23px}.exam-entry p{font-size:16px}.detail-list{grid-template-columns:95px minmax(0,1fr);gap:14px;font-size:16px}.account-search{max-width:none;flex:1}.history-row{gap:12px}.history-row .button{font-size:16px;padding:7px 10px;min-height:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition:none!important}}@media print{.site-header,.page-title .actions,.filter-bar,.pager,.toast,.mobile-nav,.button,.tabs,.breadcrumbs{display:none!important}.main-content{padding:0;max-width:none}.page-title{margin-bottom:20px}.data-table,.data-table tbody{display:table-row-group}.data-table{display:table;width:100%;font-size:16px}.data-table thead{display:table-header-group}.data-table tr{display:table-row}.data-table td,.data-table th{display:table-cell!important;border-bottom:1px solid #ddd;padding:10px 6px!important;text-align:left!important}.data-table td:before{display:none!important}.data-table td small{font-size:12px}.data-table tr{break-inside:avoid}.data-table td:last-child{display:none!important}.submission-layout{display:block}.submission-code{position:static}.code-editor>.cm-editor{max-height:none;height:auto}.review-grid{display:block}.prose{font-size:16px}}.qr-preview{text-align:center}.qr-preview img{max-width:100%;width:240px;height:auto}.qr-preview p{font-size:16px;overflow-wrap:anywhere;color:var(--muted);margin:15px 0 22px}@media(max-width:760px){.code-editor .cm-content{font-size:18px}.editor-toolbar .icon-button{width:39px;height:34px}.question-switcher a{padding-top:8px;padding-bottom:8px}}@media(max-width:760px){.header-inner{padding:0 18px;gap:12px}.header-actions{gap:8px}.brand.has-logo img{max-width:50px}}:root{font-family:var(--font-sans);color:var(--ink);background:var(--page);color-scheme:light}body{background:var(--page);color:var(--ink)}h1{font-size:clamp(26px,2.6vw,var(--text-title));letter-spacing:-.7px;font-weight:620}h2{font-size:var(--text-lg)}.main-content{padding-top:var(--space-6)}.page-title{margin-bottom:var(--space-6)}.button,.icon-button,input,textarea,select,.modal,.code-editor{border-radius:var(--radius)}.button{min-height:var(--control-height);transition:background var(--motion),transform var(--motion)}.button.primary{background:var(--brand-coral);border-color:var(--brand-coral);color:#242424}.button.destructive{background:var(--error-surface);border-color:var(--line);color:var(--error)}.button.selected,.question-switcher .current{background:var(--selection);border-color:var(--brand-coral);color:var(--ink)}.button:hover:not(:disabled),.button.quiet:hover:not(:disabled),.data-table tr:hover td{background:var(--soft)}.button.primary:hover:not(:disabled){background:var(--accent-hover)}.button:focus-visible,a:focus-visible,summary:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--focus-ring);outline-offset:3px}.button.quiet,.button.secondary,.icon-button{color:var(--ink)}input,textarea,select,.password-input,.sample-output,.output-box,.editor-toolbar,.code-editor{background:var(--paper);color:var(--ink);border-color:var(--line)}.site-header{background:var(--paper);border-color:var(--line)}.brand img{width:48px;height:32px;max-width:none;object-fit:contain}.brand.has-logo img{width:auto;max-width:140px;height:34px}.brand span{color:var(--ink);font-size:24px;letter-spacing:-.8px}.account-dropdown,.mobile-nav{background:var(--paper);border-color:var(--line)}.avatar,.course-icon{background:var(--soft);color:var(--ink)}.desktop-nav a.active,.tabs .selected{border-color:var(--brand-coral)}.theme-control{display:grid;gap:var(--space-2);padding:var(--space-3);font-size:var(--text-sm)}.theme-control select{width:100%}.diagnostic{background:var(--error-surface);border-color:var(--line);color:var(--ink)}.status.good{color:var(--ink)}.status.good .status-dot{background:var(--brand-lime);border:1px solid #28685b;width:7px;height:7px}.status.bad{color:var(--error)}.status.bad .status-dot{background:var(--brand-coral)}.status-dot{background:var(--muted)}.modal{background:var(--paper);color:var(--ink);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}.modal::backdrop{background:#0008;-webkit-backdrop-filter:none;backdrop-filter:none}.table-wrap{overflow:visible}.data-table{table-layout:fixed;width:100%}.data-table th,.data-table td{white-space:normal;overflow-wrap:anywhere;word-break:normal;border-color:var(--line)}.data-table td{padding-top:var(--space-4);padding-bottom:var(--space-4)}.data-table td small{overflow:visible;text-overflow:unset;white-space:normal}.data-table .actions{justify-content:flex-end}.question-switcher{flex-wrap:wrap;overflow:visible}.question-switcher a{white-space:normal;max-width:100%;font-size:var(--text-xs)}.footer-identity{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs)}.footer-identity>img{width:35px;height:24px;object-fit:contain}.footer-identity small{display:block;color:var(--muted);margin-top:var(--space-1)}.footer-identity a,.auth-attribution a,.about-institution a{text-decoration:underline;text-underline-offset:3px}.auth-attribution{font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-5)}.about-editorial{max-width:920px;margin-inline:auto}.about-editorial>p{max-width:680px;margin-top:var(--space-4)}.about-editorial .eyebrow{margin-top:var(--space-5)}.about-brand{background:#252525;padding:var(--space-5);width:240px}.about-brand img{display:block;width:100%;height:auto;object-fit:contain}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-block:var(--space-6)}.about-columns p{margin-top:var(--space-3);color:var(--muted)}.about-institution,.credits-section{border-top:1px solid var(--line);padding-top:var(--space-5);margin-top:var(--space-6)}.about-institution>span{font-weight:650}.about-institution p{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--muted)}.credits-section>p{margin-block:var(--space-3)}.puzzle-tray{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-4)}.credits-program{font-family:var(--font-code);font-size:var(--text-sm);background:var(--paper);padding:var(--space-4);line-height:2.6;overflow-wrap:anywhere}.credits-program>div{white-space:pre-wrap}.puzzle-gap{font:inherit;font-size:var(--text-xs);min-height:32px;padding:2px 8px;vertical-align:middle;background:var(--soft);border:1px dashed var(--muted);color:var(--ink);border-radius:var(--radius-sm)}.puzzle-filled{background:var(--positive-surface);padding:3px 5px}.puzzle-message{font-size:var(--text-sm);color:var(--muted)}.loading-state{padding-block:var(--space-6);min-height:220px}.loading-state.initial{display:flex;align-items:center;justify-content:center;min-height:100dvh}.loading-brand{display:flex;align-items:center;gap:var(--space-3);color:var(--muted);font-size:var(--text-sm)}.loading-brand img{object-fit:contain}.skeleton-layout{margin-top:var(--space-5)}.skeleton{display:block;background:var(--soft);height:14px;border-radius:var(--radius-sm);animation:skeleton-pulse 1.6s ease-in-out infinite}.skeleton-heading{width:35%;height:24px;margin-bottom:var(--space-6)}.skeleton-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-6);padding-block:var(--space-5);border-bottom:1px solid var(--line)}.skeleton-row:nth-child(odd)>span:first-child{width:75%}.skeleton-layout.workspace{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-5)}.skeleton-layout.workspace .skeleton-heading{grid-column:1/-1}.skeleton-layout.workspace .skeleton-row{display:block;background:var(--soft);height:350px;padding:var(--space-4)}@keyframes skeleton-pulse{50%{opacity:.5}}[data-theme=dark] .auth-panel,[data-theme=dark] .stat-strip,[data-theme=dark] .settings-section,[data-theme=dark] .identity-summary,[data-theme=dark] .workspace-code,[data-theme=dark] .workspace-problem,[data-theme=dark] .workspace-result{background:var(--page);color:var(--ink)}[data-theme=dark] .code-editor,[data-theme=dark] .output-box pre,[data-theme=dark] .sample pre,[data-theme=dark] .test-result pre,[data-theme=dark] .compiler-output pre,[data-theme=dark] .review-form,[data-theme=dark] .system-tab{background:var(--paper);color:var(--ink)}[data-theme=dark] .record:hover,[data-theme=dark] .person-row:hover{background:var(--soft)}[data-theme=dark] .field small{color:var(--muted)}@media(max-width:650px){.main-content{padding-top:var(--space-5)}.about-columns{grid-template-columns:1fr;gap:var(--space-5)}.footer-identity{align-items:flex-start}.footer-identity>div{max-width:250px}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block;width:100%}.data-table thead{position:absolute;width:1px;height:1px;clip-path:inset(50%)}.data-table tr{padding-block:var(--space-4);border-bottom:1px solid var(--line)}.data-table td{padding:var(--space-2) 0;border:0;text-align:left!important;display:grid;grid-template-columns:90px minmax(0,1fr);gap:var(--space-3)}.data-table td:before{content:attr(data-label);font-size:var(--text-xs);color:var(--muted)}.data-table td[colspan]{display:block}.data-table .actions{justify-content:flex-start}.filter-bar select{min-width:0;max-width:100%;width:100%}.skeleton-layout.workspace{display:block}.skeleton-layout.workspace .skeleton-row{margin-top:var(--space-4);height:240px}.pager{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.project-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-3);font-size:var(--text-xs)}.project-editor{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr);border-block:1px solid var(--line);background:var(--paper);color:var(--ink)}.project-files{padding:var(--space-3);border-inline-end:1px solid var(--line);min-width:0}.files-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.files-heading h3{font-size:var(--text-sm);font-weight:600}.files-heading>span{color:var(--muted);font-size:var(--text-xs)}.file-create-actions{display:flex;flex-direction:column;align-items:flex-start;margin-block:var(--space-2)}.file-create-actions .button{font-size:var(--text-xs);padding:var(--space-1);min-height:34px}.file-tree{padding:0;margin:0;list-style:none;font-size:var(--text-sm)}.file-tree .file-tree{padding-inline-start:var(--space-3)}.file-tree details{position:relative}.file-tree summary{display:flex;align-items:center;gap:var(--space-2);padding-block:var(--space-2);cursor:pointer}.file-tree summary span{overflow-wrap:anywhere}.folder-actions{display:flex;gap:var(--space-1);justify-content:flex-end}.folder-actions .icon-button{width:28px;height:28px}.file-item{border:0;background:transparent;color:var(--ink);width:100%;display:flex;align-items:center;gap:var(--space-2);font:inherit;text-align:left;padding:var(--space-2);min-height:38px;border-radius:var(--radius-sm)}.file-item>span{overflow-wrap:anywhere;min-width:0}.file-item>svg{flex-shrink:0}.file-item small{margin-left:auto;color:var(--muted);font-size:16px}.file-item.active{background:var(--selection)}.file-item:hover{background:var(--soft)}.project-build-settings{margin-top:var(--space-5);font-size:var(--text-xs);color:var(--muted)}.project-build-settings .field{margin-bottom:var(--space-3)}.project-build-settings select{font-size:var(--text-xs);padding-inline:var(--space-2)}.project-code{min-width:0}.project-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line)}.project-tabs button{border:0;border-bottom:2px solid transparent;background:var(--soft);color:var(--muted);font-size:var(--text-xs);padding:var(--space-2) var(--space-3);min-height:38px;display:flex;align-items:center;gap:var(--space-2);overflow-wrap:anywhere;max-width:100%}.project-tabs button[aria-selected=true]{background:var(--paper);border-color:var(--brand-coral);color:var(--ink)}.project-code .editor-toolbar{border:0;min-height:40px;padding:var(--space-2) var(--space-3);gap:var(--space-2)}.editor-path{overflow-wrap:anywhere;min-width:0}.project-code .code-editor{border:0;border-radius:0}.project-code>.check-field{margin:var(--space-3);font-size:var(--text-xs)}.project-undo{grid-column:1/-1;padding:var(--space-3)}.project-policy{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);padding-block:var(--space-5)}.project-policy>div>h3{margin-bottom:var(--space-3)}.project-policy .check-field{margin-block:var(--space-2)}.question-project-settings>h2{margin-block:var(--space-4)}.question-project-settings>p{margin-bottom:var(--space-4)}.protected-files{margin-block:var(--space-5)}.protected-files h3{margin-bottom:var(--space-3)}.submission-code .project-editor{grid-template-columns:minmax(110px,150px) minmax(0,1fr)}.diagnostic-line{max-width:150px;white-space:normal;overflow-wrap:anywhere}@media(max-width:900px){.submission-layout{display:block}.submission-code{position:static}.submission-result{margin-top:var(--space-5)}}@media(max-width:650px){.project-editor{display:block}.project-files{border-inline-end:0}.project-code{border-top:1px solid var(--line)}.workspace-grid.mobile-files .workspace-code{display:block}.workspace-grid.mobile-files .workspace-problem,.workspace-grid.mobile-files .workspace-result,.workspace-code .project-editor.code-only .project-files,.workspace-code .project-editor.files-only .project-code{display:none}.workspace-code .project-code .code-editor{min-height:320px!important}.project-heading{align-items:flex-start}.project-heading .actions{gap:var(--space-1);justify-content:flex-end}.project-heading .button{font-size:var(--text-xs);padding-inline:var(--space-2)}.project-policy{grid-template-columns:1fr}.compiler-actions .button{padding-inline:var(--space-3);font-size:var(--text-xs)}.compiler-actions .actions{gap:var(--space-2);flex-wrap:nowrap}.file-create-actions{flex-direction:row;gap:var(--space-3)}}.catalog-controls{display:grid;grid-template-columns:minmax(0,2fr) 1fr 1fr;gap:var(--space-4);align-items:end;margin-top:var(--space-5)}.catalog-controls .field{margin-bottom:var(--space-3)}.learning-progress{display:flex;align-items:center;gap:var(--space-4);font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap}.learning-progress progress{width:160px;height:7px;border:0;background:var(--soft);accent-color:var(--brand-lime);border-radius:var(--radius-sm)}.learning-progress progress::-webkit-progress-bar{background:var(--soft);border-radius:var(--radius-sm)}.learning-progress progress::-webkit-progress-value{background:var(--brand-lime);border-radius:var(--radius-sm)}.course-overview{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);padding-block:var(--space-4);margin-bottom:var(--space-5);border-block:1px solid var(--line)}.course-overview>.learning-progress{flex:1}.course-overview>.button{margin-left:auto}.continue-learning{margin-bottom:var(--space-6)}@media(max-width:900px){.desktop-nav{gap:var(--space-3);font-size:var(--text-xs)}}@media(max-width:650px){.catalog-controls{grid-template-columns:1fr}.course-overview{align-items:flex-start;flex-direction:column}.course-overview>.button{margin-left:0}}.question-switcher a.current{background:var(--selection);border-color:var(--brand-coral);color:var(--ink)}.record-icon{background:var(--soft);color:var(--ink);border-radius:var(--radius)}.diagnostic-line,.diagnostic small{color:var(--muted);font-size:var(--text-xs)}.audit-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}@media(max-width:650px){.audit-filters{grid-template-columns:1fr}}.diagnostic:hover:not(:disabled){background:var(--selection)}@media print{.full-report .data-table,.full-report tbody{display:table;width:100%}.full-report thead{display:table-header-group;position:static;width:auto;height:auto;clip-path:none}.full-report tr{display:table-row;break-inside:avoid}.full-report td,.full-report th{display:table-cell;width:auto;text-align:left!important}.full-report td:before{content:none}.full-report{color:#000;background:#fff}.full-report .page-title .actions{display:none}}.expand-problem{float:right;margin:0 0 var(--space-2) var(--space-2)}.expanded-output{font-family:var(--font-code);font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere;padding-block:var(--space-4);color:var(--ink)}.auth-form .footer-identity{align-items:flex-start}body{min-width:0}.record-title,.page-title h1,.workspace-title h1,.workspace-path a,.account-gate h1{overflow-wrap:anywhere;min-width:0}@media(max-width:650px){.filter-bar{display:flex;flex-direction:column;align-items:stretch}.filter-bar>input,.filter-bar>select{width:100%;min-width:0;max-width:100%;flex:none}.data-table td,.data-table td:first-child{display:block;position:relative;min-height:40px;padding:var(--space-2) 0 var(--space-2) 102px}.data-table td:before{position:absolute;top:var(--space-2);left:0;width:90px}.data-table td[colspan]{padding:var(--space-2) 0;min-height:0}}@media(max-width:360px){.compiler-actions .actions{width:100%;flex-direction:column;align-items:stretch}.compiler-actions .button{width:100%}}@media(min-width:1000px){.workspace-grid{grid-template-rows:auto 1fr;align-items:start}.workspace-code{grid-column:1;grid-row:1 / 3}.workspace-problem{grid-column:2;grid-row:1}.workspace-result{grid-column:2;grid-row:2;margin-top:0;padding-top:var(--space-4)}}html{scrollbar-gutter:stable}body{font:17px/1.55 var(--font-sans);min-width:0;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:700;color:var(--ink)}h1{font-size:34px;line-height:1.2;letter-spacing:-.5px}h2{font-size:23px;line-height:1.35;letter-spacing:-.15px}h3{font-size:20px;line-height:1.4}small,.small,.muted.small{font-size:17px;line-height:1.5}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:0;padding:9px 16px;border:1px solid var(--line);border-radius:6px;font:650 18px/1.25 var(--font-sans);text-decoration:none;background:var(--paper);color:var(--ink);box-shadow:none;transform:none;transition:background-color .12s,border-color .12s}.button svg{flex:none;width:17px;height:17px}.button:hover:not(:disabled){background:var(--soft);border-color:var(--muted);transform:none;box-shadow:none}.button.primary{background:var(--brand-coral);border-color:var(--brand-coral);color:#25282b}.button.quiet{background:transparent;border-color:transparent;color:var(--ink)}.button:active:not(:disabled){transform:none}.button:disabled{opacity:.55;cursor:default}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border-radius:6px;box-shadow:none}.field label,.field>label{font-size:18px;font-weight:650}.field input,.field select,.field textarea{font-size:19px}.field small{font-size:17px}input,select,textarea{line-height:1.45;border-radius:6px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}.app-shell{display:flex;flex-direction:column;min-height:100dvh}.main-content{flex:1;width:100%;max-width:1280px;margin-inline:auto;min-height:calc(100dvh - var(--header-height) - 112px);padding:28px 32px 36px}.site-header{height:var(--header-height);background:#252a2e;border:0;color:#f6f7f8;z-index:30}.header-inner{height:var(--header-height);min-height:var(--header-height);max-width:1440px;margin-inline:auto;padding:4px 32px;gap:24px}.brand,.brand.compact{padding:0;flex:none;line-height:1;background:transparent;border-radius:0}.brand img,.brand.has-logo img,.brand.compact img{display:block;width:164px;height:auto;max-width:100%;max-height:49px;object-fit:contain}.desktop-nav{gap:4px;align-self:stretch;align-items:stretch}.site-header .desktop-nav a{display:flex;align-items:center;position:relative;color:#c8cfd4;font:600 18px/1.3 var(--font-sans);padding:10px 12px;border:0;border-radius:0;background:transparent;white-space:nowrap}.site-header .desktop-nav a.active{color:#fff;background:transparent;border-radius:0}.site-header .desktop-nav a.active:after{content:"";position:absolute;inset:auto 12px 10px;height:2px;background:var(--brand-coral);border-radius:2px}.site-header .desktop-nav a:hover{color:#fff;background:transparent}.header-actions{gap:8px}.site-header .icon-button,.site-header .account-menu>summary{color:#f6f7f8}.site-header .icon-button:hover{background:#39434a}.account-menu>summary{min-height:42px;gap:10px;font-size:18px}.site-header .avatar{color:#fff;background:#3c454c;font:650 17px/1 var(--font-sans)}.account-dropdown{color:var(--ink);min-width:250px}.account-dropdown a,.account-dropdown button,.account-dropdown b{font-family:var(--font-sans);font-size:18px}.public-header .desktop-nav{display:flex;justify-content:flex-end;flex:1}.public-header .mobile-menu-button{display:none}.public-header .header-actions{margin-left:0}.public-header .header-actions>.button{min-width:82px;min-height:40px;padding:8px 15px}.notification-button{position:relative}.notification-button>span{position:absolute;top:-2px;right:-2px;min-width:19px;height:19px;background:var(--brand-coral);color:#242424;font:650 14px/19px var(--font-sans);border-radius:4px;display:grid;place-items:center}.page-title{margin-bottom:22px;align-items:center}.page-description{font-size:19px;max-width:720px}.eyebrow{font-size:16px;margin-bottom:8px;letter-spacing:.04em}.section{margin-top:24px}.section-head{margin-bottom:14px}.record{padding-block:16px}.record-title{font-size:20px;font-weight:650}.record p,.record-main p,.record-main small{font-size:17px}.data-table{font-size:18px}.data-table th{font-size:17px;font-weight:650;white-space:normal}.data-table td{font-size:18px;padding-block:12px}.data-table td small,.data-table .button{font-size:17px}.form-section{padding-block:24px;gap:24px}.form-heading p,.check-field small,.detail-list{font-size:17px}.tabs{gap:24px;min-height:49px}.tabs button{display:inline-flex;align-items:center;gap:6px;min-height:49px;padding:11px 2px;font:650 18px/1.3 var(--font-sans);border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);white-space:nowrap;box-shadow:none;transform:none}.tabs button:hover{color:var(--ink);background:transparent;transform:none}.tabs button.selected{color:var(--ink);border-bottom-color:var(--brand-coral);background:transparent}.tabs .tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 6px;margin:0;font-size:16px;font-weight:550;line-height:1;background:var(--soft);color:var(--muted);border-radius:4px}.auth-main{display:flex;align-items:flex-start;justify-content:center;padding-block:48px 56px}.auth-page{display:block;width:100%;max-width:440px;min-height:0;background:transparent}.auth-form{display:block;width:100%;padding:0;background:transparent}.auth-form-inner{width:100%;max-width:none;margin:0;padding:0}.auth-form h1{font-size:34px;margin:0 0 10px}.auth-form .eyebrow{display:none}.auth-form .field{margin-top:20px}.auth-form .muted,.auth-alternate{font-size:19px}.auth-form .auth-submit{width:100%;margin-top:24px}.auth-alternate{margin-top:24px}.auth-alternate a,.forgot-link,.back-link{font-weight:650}.registration-role{font-size:17px;margin:12px 0}.registration-role p{margin:0}.about-page{max-width:1180px;margin-inline:auto;padding:0}.about-intro{max-width:740px;margin-bottom:32px}.about-intro h1{margin:0 0 12px;font-size:36px;line-height:1.2;font-weight:700}.about-intro p{font-size:20px;line-height:1.55;color:var(--muted);margin:0}.about-layout{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.4fr);gap:56px;align-items:start}.about-notes section+section{margin-top:25px}.about-notes h2{font-size:22px;margin:0 0 8px}.about-notes p{font-size:19px;line-height:1.6;margin:0;color:var(--muted)}.about-authors p{color:var(--ink)}.about-source{min-width:0;overflow:hidden;background:#20262b;color:#e2e7eb;border:1px solid #3b454d;border-radius:8px}.about-source-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 16px;border-bottom:1px solid #3b454d;font-size:17px}.about-source-head>span{display:flex;align-items:center;gap:10px}.code-file-mark{font:650 14px/1 var(--font-sans);color:#b8c5cd;letter-spacing:-.3px}.about-source .button{color:#c6d0d7;min-height:34px;padding:6px 8px;font-size:16px}.about-source .button:hover:not(:disabled){background:#303b43;color:#fff}.credits-code{margin:0;padding:18px 16px 20px 8px;overflow-x:auto;color:#dce4ea;font:15px/1.85 var(--font-code);tab-size:2}.credits-code code{font:inherit}.credits-code-line{display:grid;grid-template-columns:30px minmax(max-content,1fr);gap:12px;min-width:max-content}.credits-code-number{color:#7f909c;text-align:right;-webkit-user-select:none;user-select:none;font-size:15px}.about-source-foot{display:flex;justify-content:space-between;border-top:1px solid #3b454d;padding:8px 16px;font-size:16px;color:#9eafb9}.about-source,.credits-program,.puzzle-tray{--syntax-keyword: #c7adf0;--syntax-type: #8bc6dc;--syntax-string: #b3d39b;--syntax-number: #ebc58f;--syntax-comment: #84969f}.tok-keyword{color:var(--syntax-keyword)}.tok-typeName,.tok-className{color:var(--syntax-type)}.tok-string,.tok-string2{color:var(--syntax-string)}.tok-number,.tok-bool{color:var(--syntax-number)}.tok-comment{color:var(--syntax-comment)}.tok-meta,.tok-processingInstruction{color:var(--syntax-type)}.about-page>.credits-puzzle{border-top:1px solid var(--line);margin-top:32px;padding-top:8px}.credits-puzzle>summary{font:650 19px/1.4 var(--font-sans);padding-block:16px;cursor:pointer;margin:0}.credits-puzzle-content>.muted{font-size:18px;margin:4px 0 18px}.puzzle-tray{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;--syntax-keyword: var(--ink);--syntax-string: var(--ink);--syntax-type: var(--ink)}.puzzle-tray .puzzle-token{font:550 16px/1.4 var(--font-code);padding:8px 12px;min-height:38px}.puzzle-tray .puzzle-token.selected{border-color:var(--brand-coral);background:var(--selection)}.credits-program{overflow-x:auto;max-width:100%;margin:0;padding:18px 20px;background:#20262b;color:#dce4ea;border:1px solid #3b454d;border-radius:8px;font:15px/2.3 var(--font-code);white-space:pre}.credits-program>div{min-width:max-content}.credits-program .puzzle-gap{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:29px;padding:1px 10px;border:1px dashed #71828e;border-radius:4px;background:#2a343c;color:#b9c9d4;font:550 16px/1.3 var(--font-code);vertical-align:middle;box-shadow:none}.credits-program .puzzle-gap:hover{background:#35414a;border-color:#b4c3cc}.credits-program .puzzle-filled{padding:0;background:transparent;border:0}.puzzle-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px}.puzzle-message{font-size:17px;line-height:1.5;min-height:0;margin:0}.compiler-main{padding:16px 24px 24px;max-width:none}.workspace{max-width:1800px;margin:auto}.workspace-path{font-size:16px;margin-bottom:8px}.question-switcher{margin:8px 0;gap:6px}.question-switcher a{font-size:16px;padding:6px 10px;min-height:36px}.workspace-title{margin:12px 0;align-items:center}.workspace-save{font-size:16px}.compiler-actions{position:sticky;top:var(--header-height);z-index:15;display:flex;align-items:center;gap:12px;justify-content:flex-start;background:var(--page);padding:8px 0;margin:0 0 12px;border-block:1px solid var(--line)}.compiler-actions .actions{gap:8px;width:auto;flex-direction:row;align-items:center}.compiler-actions .button{width:auto;min-height:42px}.compiler-actions .keyboard-hint{font-size:16px;margin-left:auto}.project-heading{min-height:44px;padding:6px 0;font-size:16px}.project-heading .actions{gap:4px}.project-editor{grid-template-columns:minmax(140px,175px) minmax(0,1fr)}.project-files{padding:10px}.project-files h3{font-size:18px}.project-files button,.project-file-row,.project-folder-row{font-size:16px}.project-files>ul{max-height:calc(100dvh - 560px);min-height:160px;overflow:auto}.project-tabs button{font-size:16px;padding:9px 12px;min-height:40px}.project-file-toolbar{padding:6px 12px;font-size:16px;min-height:42px}.workspace-code .project-code .code-editor{min-height:280px!important;height:clamp(260px,calc(100dvh - 470px),600px)}.code-editor .cm-content{font-size:var(--editor-font-size, 16px);font-family:var(--editor-font-family, var(--font-code));line-height:var(--editor-line-height, 1.6)}.code-editor .cm-line{line-height:var(--editor-line-height, 1.6)}.workspace-grid{gap:18px}.workspace-problem>.tabs{padding-inline:16px;gap:20px}.workspace-problem>.tabs button{font-size:17px}.problem-content{padding:16px}.question-rules{font-size:16px;gap:8px 16px}.workspace-result{margin:0}.workspace-result .test-summary{padding-block:12px;font-size:16px}.result-total,.compiler-message{font-size:18px}.output-box pre,.code-input{font-size:17px}.syntax-colors{border:0;margin:20px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.syntax-colors legend{font-weight:650;margin-bottom:12px}.syntax-colors label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:17px}.syntax-colors input{width:48px;height:36px;padding:2px;cursor:pointer}.notification-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.notification-row h3{font-weight:650;margin-bottom:6px}.notification-row p{margin-bottom:6px;overflow-wrap:anywhere}.notification-row small{color:var(--muted)}.notification-row.unread h3:before{content:"";display:inline-block;width:7px;height:7px;margin-right:9px;background:var(--brand-coral);border-radius:50%}.notification-row .actions{flex-wrap:wrap;justify-content:flex-end}.notification-center>.section{margin-top:32px}.topic-review-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:16px 0}.topic-access-time{font-size:17px;padding-block:10px;border-bottom:1px solid var(--line);margin-bottom:18px}.modal{max-height:calc(100dvh - 40px)}.loading-state{min-height:320px}@media(max-width:1100px){.desktop-nav{display:none}.mobile-menu-button{display:inline-flex}.mobile-nav{top:var(--header-height)}.compiler-actions .keyboard-hint{display:none}}@media(min-width:1000px){.workspace-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.workspace-problem{max-height:38dvh;overflow:auto}.workspace-result{max-height:calc(100dvh - 435px);min-height:180px;overflow:auto}}@media(min-width:651px)and (max-width:999px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.workspace-result{grid-column:auto}.workspace-problem{min-height:0}}@media(max-width:650px){.header-inner{height:64px;min-height:64px;padding:4px 12px;gap:8px}.brand img,.brand.has-logo img,.brand.compact img{width:154px;max-height:48px}.header-actions{gap:4px}.header-actions>a[aria-label="System administration"]{display:none}.account-name{display:none}.main-content{padding:20px 16px 24px}.page-title{gap:16px;align-items:flex-start}.page-title h1,h1{font-size:28px}.record{gap:12px}.record-title{font-size:18px}.data-table td,.data-table td:first-child{padding:8px 0 8px 102px;min-height:40px}.data-table td:before{font-size:16px}.data-table td[colspan]{padding:8px 0}.compiler-main{padding:12px 12px 20px}.workspace-title h1{font-size:24px}.workspace-title{gap:12px;margin-block:10px}.workspace-path{flex-wrap:wrap}.compiler-actions{gap:8px;padding-block:8px;margin-bottom:10px}.compiler-actions .actions{width:auto;flex-direction:row}.compiler-actions .button{width:auto;padding:8px 11px;font-size:17px}.compiler-actions .editor-settings-button span{display:none}.compiler-actions .editor-settings-button{margin-left:auto;width:42px;padding:8px}.mobile-workspace-tabs .tabs{gap:24px}.mobile-workspace-tabs .tabs button{font-size:17px}.workspace-code .project-code .code-editor{height:clamp(280px,calc(100dvh - 390px),560px)}.project-heading .button{font-size:16px}.project-tabs button{font-size:16px;padding-inline:10px}.project-files>ul{max-height:none;min-height:100px}.notification-row{flex-direction:column;gap:12px}.notification-row .actions{justify-content:flex-start}.notification-center .section-head{align-items:flex-start;gap:12px;flex-direction:column}.syntax-colors{grid-template-columns:1fr}.auth-header{padding-inline:20px;height:64px}.auth-form{padding-top:24px}.auth-form h1{font-size:28px}.about-columns{display:block}.about-columns section+section{margin-top:20px}}@media(max-width:360px){.brand img,.brand.has-logo img,.brand.compact img{width:132px}.header-actions .icon-button{min-width:36px}.site-header .account-menu>summary{padding-inline:2px}.compiler-actions .actions{flex-direction:row;width:auto}.compiler-actions .button{width:auto}}@media(max-width:650px){.question-switcher{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px}.question-switcher a{flex:0 0 auto;white-space:nowrap}}.modal.submission-dialog{width:min(1240px,calc(100vw - 40px));height:calc(100dvh - 32px)}.modal.submission-dialog[open]{display:flex;flex-direction:column}.submission-dialog>.modal-body{display:flex;flex:1 1 0;flex-direction:column;min-height:0;overflow:hidden}.submission-dialog .try-nav{flex:none}.submission-dialog .submission-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px}.submission-dialog .submission-code .project-editor{grid-template-columns:150px minmax(0,1fr)}.submission-dialog .project-files>ul{max-height:220px}.filter-bar.tries-filters{display:flex;flex-wrap:nowrap}.filter-bar.tries-filters>input{flex:1 1 200px;width:auto}.filter-bar.tries-filters>select{flex:0 1 220px;width:auto;min-width:0}@media(max-width:900px){.filter-bar.tries-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.filter-bar.tries-filters>input{grid-column:1 / -1}}.roster>p.muted{margin:0 0 16px;max-width:820px}.roster-summary{margin:0 0 12px;font-weight:600;color:var(--ink)}.student-code{margin-left:8px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}.review-summary{display:flex;gap:12px;align-items:stretch;margin:0 0 14px}.review-summary .review-figures{flex:1;min-width:0}.review-tools{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:8px}.review-tool-buttons{display:flex;gap:8px}.submission-review .filter-bar{padding-bottom:14px}.submission-review .review-switch{margin-bottom:0;flex:none}.review-figures{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.review-figures>div{padding:12px 16px;border-left:1px solid var(--line)}.review-figures>div:first-child{border-left:0}.review-figures dt{font-size:14px;font-weight:600;color:var(--muted)}.review-figures dd{margin:2px 0 0;font-size:26px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.review-updated{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.review-switch{display:inline-flex;border:1px solid var(--control-line);border-radius:8px;overflow:hidden}.review-switch button{padding:8px 16px;border:0;border-left:1px solid var(--control-line);background:var(--paper);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.review-switch button:first-child{border-left:0}.review-switch button:hover{background:var(--hover)}.review-switch button.selected{background:var(--ink);color:var(--paper)}@media(max-width:900px){.review-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.review-figures>div{border-left:0;border-top:1px solid var(--line)}.review-figures>div:nth-child(-n+2){border-top:0}.review-figures>div:nth-child(2n){border-left:1px solid var(--line)}}.try-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 24px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}.try-nav-group{display:flex;align-items:center;gap:4px}.try-nav .button{white-space:nowrap}.try-nav .button-label{display:inline-flex;align-items:center;gap:6px}.try-nav-label{min-width:128px;text-align:center;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}@media(max-width:900px){.submission-dialog .submission-layout{grid-template-columns:minmax(0,1fr)}.try-nav-group{flex:1 1 100%;justify-content:space-between}.try-nav-label{min-width:0}}@media(max-width:650px){.try-nav-extra{display:none}.modal.submission-dialog{width:calc(100vw - 24px)}.submission-dialog .submission-code .project-editor{grid-template-columns:minmax(0,1fr)}}.topic-review-filters>input{flex:1 1 260px;width:auto;min-width:0}.topic-review-filters>select{flex:0 0 190px}@media(max-width:650px){.topic-review-filters>input,.topic-review-filters>select{flex:1 1 100%;width:100%}}.data-table .button{max-width:100%;white-space:normal;min-width:0}.topic-table-wrap{max-width:100%}@media(min-width:651px)and (max-width:999px){.topic-table-wrap{overflow-x:auto}.topic-table-wrap .data-table{min-width:920px}}@media(max-width:360px){.compiler-actions .editor-settings-button{width:40px;min-width:40px;max-width:40px;flex:0 0 40px}.compiler-actions>.actions{min-width:0;flex:1}.compiler-actions>.actions .button{min-width:0}}@media(max-width:1000px){.header-inner{gap:16px}.site-header .desktop-nav a{padding-inline:9px}.about-layout{gap:32px;grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr)}.credits-code{font-size:16px}}@media(max-width:800px){.about-layout{grid-template-columns:minmax(0,1fr);gap:28px}.about-notes{display:grid;grid-template-columns:1fr 1fr;gap:24px}.about-notes section+section{margin:0}.about-authors{grid-column:1/-1}}@media(max-width:650px){.brand img,.brand.has-logo img,.brand.compact img{width:132px;max-height:42px}.public-header .header-inner{gap:12px}.public-header .desktop-nav{gap:0}.public-header .desktop-nav a{font-size:18px;padding-inline:8px}.public-header .desktop-nav a.active:after{inset-inline:8px;bottom:8px}.public-header .header-actions>.button{min-width:66px;min-height:38px;padding:8px 12px;font-size:18px}.auth-main{padding:32px 24px 40px}.auth-form h1{font-size:32px}.about-intro{margin-bottom:26px}.about-intro h1{font-size:32px}.about-intro p{font-size:20px}.about-notes{display:block}.about-notes section+section{margin-top:22px}.about-source-head{padding-inline:12px}.credits-code{font-size:16px;padding-inline:4px 14px}.credits-code-line{grid-template-columns:26px minmax(max-content,1fr);gap:10px}.puzzle-controls{align-items:flex-start}}@media(max-width:360px){.public-header .brand img{width:108px}.public-header .header-inner{padding-inline:10px;gap:8px}.public-header .desktop-nav a{font-size:17px;padding-inline:6px}.public-header .header-actions>.button{font-size:17px;min-width:60px;padding:8px 10px}.puzzle-controls{flex-direction:column;gap:10px}}.site-header .mobile-menu-button{display:none}@media(max-width:1100px){.site-header:not(.public-header) .desktop-nav{display:none}.site-header:not(.public-header) .mobile-menu-button{display:inline-flex}}.forgot-link,.back-link,.text-button{font-family:var(--font-sans);font-size:18px}@media(max-width:800px){.about-source{order:-1}}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}.app-shell{height:100dvh;min-height:0;overflow:hidden}.site-header{flex:0 0 var(--header-height);position:relative}.main-content,.main-content.compiler-main{flex:1;min-height:0;max-height:none;min-width:0;overflow:hidden;padding:18px 28px 0}.main-content.auth-main{max-width:496px;padding:22px 28px 0}.screen-pages{display:flex;flex-direction:column;min-height:0;min-width:0;height:100%;max-width:100%}.screen-viewport{flex:1;min-height:0;min-width:0;overflow:hidden;overflow-anchor:none;scroll-behavior:auto}.screen-content{display:flow-root;min-width:0;max-width:100%}.modal[open]{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 24px);margin:auto}.modal-head{flex:none;min-height:64px;padding:12px 20px}.modal-head h2{font-size:23px}.modal-body.screen-pages-dialog{height:min(var(--screen-natural-height, 460px),calc(100dvh - 108px));max-height:none;padding:0 20px}.screen-pages-dialog .screen-content{padding:18px 0}.screen-pages-dialog .single-page{display:none}.modal .dialog-actions{position:static;flex-wrap:wrap;margin-top:18px;padding:0}.modal-body .field{margin-bottom:14px}.editor-appearance{width:520px}.editor-appearance .tabs{margin-bottom:18px}.editor-theme-preview{font-size:16px;line-height:1.7;padding:16px;border-radius:6px;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.editor-theme-preview code{font:inherit}.editor-text-panel{min-height:220px}.editor-settings-hint{font-size:16px;margin:14px 0}.editor-appearance .dialog-actions{justify-content:flex-end}.editor-appearance .dialog-actions>.button:first-child{margin-right:auto}.tabs{flex-wrap:wrap;overflow:visible;gap:8px 20px;min-width:0}.tabs button{white-space:normal}.tabs-picker{display:none;font-size:16px;font-weight:650;margin:10px 0}.tabs-picker select{margin-top:5px}pre,.prose pre,.output-box pre,.compiler-text,.credits-program{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;max-width:100%;overflow:visible}.credits-code{white-space:pre-wrap;overflow:visible}.credits-code-line{grid-template-columns:26px minmax(0,1fr)}.credits-code-line>span:last-child{white-space:pre-wrap;overflow-wrap:anywhere}.about-source{overflow:visible}.credits-program{line-height:2.3}.about-intro{margin-bottom:22px}.about-notes p{line-height:1.5}.credits-puzzle{margin-top:22px}.topic-table-wrap,.table-wrap{min-width:0;max-width:100%;overflow:visible}.topic-table-wrap .data-table,.data-table{min-width:0;width:100%;table-layout:fixed}img,video,canvas,svg{max-width:100%}input,select,textarea{max-width:100%;min-width:0}textarea{resize:vertical}.actions{flex-wrap:wrap;min-width:0}.prose,.record-main,.page-title>div{min-width:0;overflow-wrap:anywhere}.two-column,.three-column,.settings-form,.form-section{min-width:0}.compiler-main>.screen-pages>.screen-viewport>.screen-content{height:100%}.workspace{height:100%;min-height:0;display:flex;flex-direction:column;max-width:1800px}.workspace-path{flex:none;margin:0 0 5px;font-size:16px}.question-picker{display:flex;align-items:center;gap:12px;flex:none;font-size:16px;color:var(--muted);margin:0 0 5px}.question-picker select{width:auto;min-width:100px;max-width:560px;flex:1;min-height:34px;padding-block:4px;font-size:17px}.workspace-title{flex:none;margin:4px 0 8px;gap:12px}.workspace-title h1{font-size:27px}.compiler-actions{position:static;flex:none;padding:7px 0;margin-bottom:0;gap:8px}.compiler-actions .button{min-height:38px;padding:7px 12px}.mobile-workspace-tabs{display:block;flex:none}.mobile-workspace-tabs .tabs{gap:24px;margin:0;min-height:42px}.mobile-workspace-tabs .tabs button{font-size:18px;min-height:42px;padding-block:8px}.workspace-grid{display:block;flex:1;min-height:0;min-width:0;margin-top:10px}.workspace-grid>.workspace-code,.workspace-grid>.workspace-problem,.workspace-grid>.workspace-result{display:none;max-height:none;min-height:0;height:100%;margin:0;overflow:hidden}.workspace-grid.mobile-code>.workspace-code,.workspace-grid.mobile-files>.workspace-code{display:flex;flex-direction:column}.workspace-grid.mobile-problem>.workspace-problem{display:flex;flex-direction:column;align-self:stretch}.workspace-grid.mobile-result>.workspace-result{display:block;padding:0;border:0}.workspace-problem>.tabs{flex:none;margin:0;padding-inline:16px;min-height:43px}.workspace-problem>.problem-pages{flex:1;height:auto;min-height:0}.problem-content{max-height:none;min-height:0;overflow:visible;padding:16px}.workspace-result .screen-content{padding-bottom:10px}.project-heading{flex:none;min-height:40px;padding:3px 0;align-items:center;gap:8px}.project-heading .actions{gap:2px}.project-heading .button{font-size:16px;min-height:34px;padding:6px 9px}.workspace-code>.project-editor{flex:1;min-height:0;height:auto;display:flex;flex-direction:column}.workspace-code .project-editor.code-only>.project-files{display:none}.workspace-code .project-editor.files-only>.project-code{display:none}.workspace-code .project-editor.files-only>.project-files{display:block}.workspace-code .project-code{flex:1;min-height:0;display:flex;flex-direction:column}.project-file-select{display:flex;align-items:center;gap:12px;flex:none;padding:7px 12px;margin:0;font-size:16px;color:var(--muted);border-bottom:1px solid var(--line)}.project-file-select select{flex:1;max-width:500px;min-height:34px;padding-block:4px;font-size:17px}.project-code>.editor-toolbar{flex:none;min-height:34px;padding:4px 12px}.code-editor-frame{display:flex;flex-direction:column;min-height:0;min-width:0}.workspace-code .project-code>.code-editor-frame{flex:1;height:auto;min-height:0}.workspace-code .project-code .code-editor{flex:1;height:auto;min-height:0!important}.workspace-code .code-editor>.cm-editor{height:100%;min-height:0;max-height:none}.code-editor .cm-scroller{scrollbar-width:none;overflow-x:hidden!important}.code-editor .cm-scroller::-webkit-scrollbar{display:none}.project-files>ul{max-height:none;min-height:0;overflow:visible}.workspace-code .project-files{min-height:0;overflow:visible;padding:12px}.workspace-view-files .workspace-grid{overflow:visible}.workspace-view-files{height:auto;min-height:100%}.workspace-view-files .project-files{height:auto}.code-editor-frame:has(>.code-editor){max-width:100%}.output-box pre,.compiler-text,.compiler-summary{max-height:none;overflow:visible}.account-dropdown{max-width:calc(100vw - 24px);max-height:calc(100dvh - var(--header-height) - 12px);overflow-y:auto}@media(max-width:1000px){.topic-table-wrap .data-table thead{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.topic-table-wrap .data-table,.topic-table-wrap .data-table tbody,.topic-table-wrap .data-table tr,.topic-table-wrap .data-table td{display:block;width:100%}.topic-table-wrap .data-table tr{padding:10px 0;border-bottom:1px solid var(--line)}.topic-table-wrap .data-table td{position:relative;min-height:34px;padding:6px 0 6px 120px;border:0}.topic-table-wrap .data-table td:before{content:attr(data-label);position:absolute;left:0;top:6px;width:108px;font-weight:650;color:var(--muted);font-size:16px}}@media(max-width:850px){.tabs.many-tabs{display:none}.tabs-picker.many-tabs{display:block}}@media(max-width:650px){.main-content,.main-content.compiler-main{padding:12px 14px 0}.main-content.auth-main{padding:16px 22px 0}.modal[open]{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.modal-head{min-height:56px;padding:8px 14px}.modal-body.screen-pages-dialog{padding:0 14px;height:min(var(--screen-natural-height, 400px),calc(100dvh - 92px))}.screen-pages-dialog .screen-content{padding:14px 0}.editor-theme-preview{padding:12px;font-size:15px}.editor-appearance .tabs{min-height:40px;margin-bottom:14px}.editor-appearance .tabs button{min-height:40px}.editor-text-panel{min-height:220px}.editor-appearance .two-column{grid-template-columns:1fr 1fr;gap:12px}.about-intro h1{font-size:30px}.about-intro p{font-size:19px}.about-layout{gap:22px}.credits-code{font-size:15px;line-height:1.6;padding:12px 10px 12px 4px}.credits-code-line{grid-template-columns:22px minmax(0,1fr);gap:8px}.workspace-path{font-size:14px;gap:5px;overflow-wrap:anywhere}.workspace-path>span:not(.workspace-clock){display:none}.workspace-title h1{font-size:22px}.workspace-title{margin:3px 0 6px}.workspace-save{font-size:14px;white-space:nowrap}.question-picker{font-size:15px;gap:8px}.question-picker select{font-size:16px;min-height:32px}.compiler-actions .button{min-height:36px;padding:6px 10px;font-size:16px}.compiler-actions .editor-settings-button{margin-left:auto;padding-inline:8px}.compiler-actions .editor-settings-button span,.compiler-actions .keyboard-hint{display:none}.mobile-workspace-tabs .tabs{gap:20px}.mobile-workspace-tabs .tabs button{font-size:17px;min-height:40px}.workspace-grid{margin-top:6px}.project-heading{min-height:34px;font-size:14px}.project-heading .button{min-height:30px;padding:4px 7px;font-size:15px}.project-heading .icon-button{min-width:30px;min-height:30px}.project-file-select{font-size:15px;gap:8px;padding:5px 8px}.project-file-select select{font-size:16px;min-height:32px}.project-code>.editor-toolbar{min-height:30px;padding:3px 8px;font-size:15px}.workspace-problem>.tabs{gap:16px;padding-inline:12px}.workspace-problem>.tabs button{font-size:16px;min-height:40px}}@media(max-height:600px){.workspace-path,.workspace-title{display:none}.editor-theme-preview{font-size:14px;line-height:1.5}}@media print{html,body,#root,.app-shell{height:auto;overflow:visible}.main-content,.main-content.compiler-main{height:auto;overflow:visible;display:block}.screen-pages,.screen-viewport{display:block;height:auto!important;overflow:visible!important}.screen-content{height:auto!important}.modal[open]{display:none}}html{scrollbar-gutter:auto}.workspace-top{display:flex;align-items:center;gap:16px;flex:none;min-height:42px;margin-bottom:5px}.workspace-top>.question-picker{flex:1;margin:0}.workspace-top>.workspace-title{margin:0;flex:none}.workspace-top:has(>.question-picker) .workspace-title h1{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.workspace-code .project-code{position:relative}.workspace-code .project-code>.editor-toolbar{position:absolute;right:4px;top:4px;z-index:2;padding:0}.workspace-code .project-code>.editor-toolbar .editor-path{display:none}.workspace-code .project-code>.project-file-select{padding-right:92px}@media(max-width:650px){.workspace-top{gap:8px}.question-picker select{width:100px}.workspace-code .project-code>.editor-toolbar{top:2px}.workspace-code .project-code>.project-file-select{padding-right:78px}}.compiler-main>.screen-pages>.screen-viewport>.screen-content:has(>.workspace-view-files){height:auto;min-height:100%}@media(max-height:600px){.workspace-path:has(.workspace-clock){display:flex}.workspace-top>.workspace-title{display:flex}}.code-editor-frame{height:clamp(200px,calc(100dvh - 300px),480px)}.code-editor-frame>.code-editor{flex:1;min-height:0!important;height:auto}.code-editor-frame>.code-editor>.cm-editor{height:100%;min-height:0;max-height:none}.save-bar{position:static}.raw-output pre,.history-row pre{max-height:none;overflow:visible}@media print{.screen-content{clip-path:none!important}.screen-viewport>div[aria-hidden]{display:none}}.auth-page,.auth-form{min-height:0}.auth-form{padding:0}.auth-form form{margin-top:16px}.auth-form .muted{margin-bottom:16px}.auth-form .field{margin:12px 0}.auth-form .auth-submit,.auth-alternate{margin-top:16px}.rich-toolbar{flex-wrap:wrap;gap:4px 0;padding:6px 8px}.rich-group{display:flex;gap:2px;padding:0 6px}.rich-group+.rich-group{border-left:1px solid var(--line)}.rich-toolbar .icon-button.active{background:var(--soft);color:var(--accent)}.rich-toolbar .icon-button:disabled{opacity:.35;cursor:default}.rich-link{display:flex;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid var(--line)}.rich-link input{flex:1;min-width:0}.rich-surface h3,.prose h3{font-size:1.15em}.rich-surface h3{margin:12px 0 6px}.rich-surface ul,.rich-surface ol{padding-left:22px}.rich-surface blockquote,.prose blockquote{margin:10px 0;padding-left:18px;color:var(--muted);font-style:italic}.rich-surface table{border-collapse:collapse;width:100%;margin:10px 0}.rich-surface td,.rich-surface th{border:1px solid var(--line);padding:6px 8px;min-width:60px}.rich-surface th,.prose th{text-align:left;font-weight:650}.rich-surface code,.prose code{padding:1px 5px;border-radius:4px;background:var(--soft);font-family:var(--font-code);font-size:.9em}.rich-surface pre code,.prose pre code{padding:0;background:none}.field-control{min-width:0;width:100%;align-self:start}.field-feedback{min-width:0;display:flex;flex-direction:column;gap:5px}.field-feedback:empty{display:none}.field-control>input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]),.field-control>select,.field-control>.password-input,.field-control>.password-input>input{width:100%;height:var(--form-control-height);min-height:var(--form-control-height);box-sizing:border-box}.field-control>.password-input{position:relative}.field-control>.password-input>.icon-button{height:var(--form-control-height);min-height:var(--form-control-height);top:0}.field-control>textarea{width:100%}@supports (grid-template-rows: subgrid){:is(.two-column,.three-column):not(:has(>:not(.field))),.catalog-controls{align-items:start;row-gap:7px}:is(.two-column,.three-column):not(:has(>:not(.field)))>.field,.catalog-controls>.field{display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:7px;margin:0;align-self:stretch}.catalog-controls{margin-bottom:18px}}.actions,.record-actions{align-items:center;gap:8px}.actions>.button,.actions>.file-button{height:var(--action-height, 44px);min-height:var(--action-height, 44px);white-space:nowrap;line-height:1.25;flex-shrink:0}.actions>.button svg{flex:none}.actions>.file-button{display:inline-flex;align-items:center}.actions>label{margin-bottom:0}.compiler-actions{--action-height: 38px}.project-heading{--action-height: 34px}.project-heading .actions>.icon-button{height:34px;min-height:34px;width:34px;min-width:34px}.editor-toolbar{--action-height: 34px}.editor-toolbar .icon-button{height:34px;min-height:34px}.page-title,.section-head,.content-tools,.topic-review-header{align-items:center}.content-tools{gap:12px;flex-wrap:wrap}.content-tools>.actions{flex-wrap:nowrap}.content-tools>.account-search{height:44px;min-height:44px;flex:1 1 240px;min-width:0;margin:0}.filter-bar{align-items:center;gap:12px}.filter-bar>input,.filter-bar>select{height:44px;min-height:44px;box-sizing:border-box}.filter-bar .compact-check{display:inline-flex;align-items:center;min-height:44px;margin:0;white-space:nowrap}.filter-bar>.button{height:44px;min-height:44px}.topic-review-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(142px,190px);align-items:center}.topic-review-filters>input,.topic-review-filters>select{width:100%;min-width:0;flex:none;height:44px;min-height:44px}.record,.person-record{align-items:center}.record-actions,.person-record>.actions{flex-wrap:nowrap}.aligned-table{width:100%;max-width:100%;min-width:0}.aligned-table .data-table{table-layout:fixed;width:100%;min-width:0}.aligned-table .data-table th,.aligned-table .data-table td{width:auto;vertical-align:middle}.data-table th,.data-table td,.data-table td small{white-space:nowrap;overflow-wrap:normal;word-break:normal}.table-heading-line,.table-cell-line{display:block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;word-break:normal}.table-cell-layout{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%;width:100%}.table-cell-line{flex:1}.table-cell-line small{display:inline!important;margin:0!important;font-size:inherit;color:var(--muted);white-space:nowrap}.table-cell-line br{display:none}.cell-separator{color:var(--muted)}.table-cell-line p,.table-cell-line div:not(.actions){display:inline;margin:0}.table-cell-line .status{white-space:nowrap;max-width:100%;vertical-align:middle}.table-cell-line .text-button{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.aligned-table .data-table .button{height:36px;min-height:36px;padding:7px 12px;font-size:17px;line-height:1.2;white-space:nowrap;max-width:none;flex-shrink:0}.table-cell-line .actions{display:flex;align-items:center;flex-wrap:nowrap;--action-height: 36px}.table-actions-cell .table-cell-line{overflow:visible;text-align:right}.table-actions-cell .table-cell-layout{justify-content:flex-end}.table-row-details.icon-button{height:28px;min-height:28px;width:28px;min-width:28px;padding:3px;flex:none;color:var(--muted)}.table-row-details:hover{background:var(--soft);color:var(--ink)}.aligned-table .data-table[data-layout=table]{display:table}.aligned-table [data-layout=table] thead{display:table-header-group;position:static;width:auto;height:auto;clip:auto;overflow:visible}.aligned-table [data-layout=table] tbody{display:table-row-group}.aligned-table [data-layout=table] tr{display:table-row;padding:0}.aligned-table [data-layout=table] th,.aligned-table [data-layout=table] td{display:table-cell;padding:10px 12px;min-height:0;border-bottom:1px solid var(--line)}.aligned-table [data-layout=table] th:first-child,.aligned-table [data-layout=table] td:first-child{padding-left:0}.aligned-table [data-layout=table] th:last-child,.aligned-table [data-layout=table] td:last-child{padding-right:0}.aligned-table [data-layout=table] td:before{display:none}.aligned-table .data-table[data-layout=rows],.aligned-table [data-layout=rows] tbody{display:block;width:100%}.aligned-table [data-layout=rows] colgroup{display:none}.aligned-table [data-layout=rows] thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.aligned-table [data-layout=rows] tr{display:block;width:100%;padding:8px 0;border-bottom:1px solid var(--line)}.aligned-table [data-layout=rows] td,.aligned-table [data-layout=rows] td:first-child,.aligned-table [data-layout=rows] td:last-child{position:static;display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:12px;width:100%;min-height:44px;padding:5px 0;border:0;text-align:left}.aligned-table [data-layout=rows] td:before{display:block;position:static;content:attr(data-label);width:auto;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:16px;font-weight:650;color:var(--muted)}.aligned-table [data-layout=rows] .table-actions-cell .table-cell-line{text-align:left}.aligned-table [data-layout=rows] .table-actions-cell .table-cell-layout{justify-content:flex-start}.aligned-table [data-layout=rows] td[colspan]{display:block}.aligned-table [data-layout=rows] td[colspan]:before{display:none}.table-row-detail-list{display:grid;grid-template-columns:minmax(100px,.4fr) minmax(0,1fr);gap:14px 20px;margin:0}.table-row-detail-list dt{font-weight:650;color:var(--muted)}.table-row-detail-list dd{margin:0;white-space:normal;overflow-wrap:anywhere;min-width:0}@media(max-width:650px){.content-tools{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.content-tools>.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.content-tools>.actions>.button{width:100%;font-size:16px;padding-inline:8px;gap:6px}.content-tools>.account-search{width:100%}.filter-bar>input,.filter-bar>select{flex:none;width:100%;min-width:0;height:44px;min-height:44px}.topic-review-filters{grid-template-columns:minmax(0,1fr) minmax(130px,.85fr)}.filter-bar.topic-review-filters>input,.filter-bar.topic-review-filters>select{width:100%;min-width:0;max-width:100%;flex:none}.person-record>.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.person-record>.actions>.button{width:100%;font-size:16px;padding-inline:10px;gap:6px}.compiler-actions{--action-height: 36px}.project-heading,.editor-toolbar{--action-height: 30px}.project-heading .actions>.icon-button,.editor-toolbar .icon-button{height:30px;min-height:30px}.table-row-detail-list{grid-template-columns:minmax(0,1fr);gap:5px}.table-row-detail-list dd{margin-bottom:12px}}@media print{.aligned-table .data-table[data-layout]{display:table;table-layout:auto}.aligned-table [data-layout] colgroup{display:table-column-group}.aligned-table [data-layout] thead{display:table-header-group;position:static;width:auto;height:auto;clip:auto;overflow:visible}.aligned-table [data-layout] tbody{display:table-row-group}.aligned-table [data-layout] tr{display:table-row;padding:0}.aligned-table [data-layout] td,.aligned-table [data-layout] td:first-child,.aligned-table [data-layout] td:last-child{display:table-cell;width:auto;padding:5px;white-space:normal}.aligned-table [data-layout] td:before,.table-row-details{display:none!important}.table-cell-line,.table-heading-line{white-space:normal;overflow:visible;text-overflow:clip}}.screen-viewport{overflow:clip}@media print{.screen-content{transform:none!important}}.filter-bar>input{width:auto;flex:1 1 240px;min-width:0}.filter-bar>select{width:auto;flex:0 1 200px;min-width:150px}.topic-review-filters>input,.topic-review-filters>select{width:100%;min-width:0}.form-fields:has(>.theme-control){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end}.form-fields>.theme-control{margin:0;padding:0}.theme-control select{height:44px;min-height:44px}.form-fields:has(>.theme-control)>.button{height:44px;min-height:44px;white-space:nowrap}@supports (grid-template-rows: subgrid){.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;row-gap:7px}.inline-form>.field{display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:7px;margin:0}.inline-form>.button{grid-column:2;grid-row:2;height:44px;min-height:44px;margin:0}}@media(max-width:650px){.filter-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar>input:first-child{grid-column:1/-1;min-width:0;width:100%}.filter-bar>select,.filter-bar>input{flex:none;width:100%;min-width:0}.filter-bar.topic-review-filters>input{grid-column:auto}.form-fields:has(>.theme-control){grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-fields:has(>.theme-control)>.button{font-size:16px;padding-inline:10px}}.app-update{flex:none;display:flex;align-items:center;justify-content:center;gap:16px;padding:8px 28px;background:var(--paper);border-bottom:1px solid var(--line);font-size:17px}.app-update .button{height:36px;min-height:36px;flex:none;padding:6px 12px;font-size:16px}@media(max-width:650px){.app-update{gap:10px;padding:8px 14px;font-size:16px}}.exam-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-left:auto;min-width:0}.exam-mode-label{display:inline-flex;align-items:center;gap:7px;font-weight:650;white-space:nowrap;color:var(--muted)}.exam-student-name{max-width:240px;overflow-wrap:anywhere}.exam-header-actions .button{height:36px;min-height:36px;white-space:nowrap}@media(max-width:650px){.exam-header-actions{gap:10px}.exam-student-name{display:none}.exam-mode-label{font-size:16px}.exam-header-actions .button{font-size:16px;padding-inline:10px}}.photo-picker{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}.photo-picker .actions{flex-wrap:wrap;gap:10px}.photo-preview{width:240px;height:120px;object-fit:cover;max-width:100%;border-radius:10px;background:var(--soft)}.photo-picker.round .photo-preview{width:88px;height:88px;border-radius:50%}.photo-picker .small{margin:0}.avatar>img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.record-icon.has-course-picture{width:64px;height:48px;flex:none;padding:0;overflow:hidden;border-radius:8px}.record-icon.has-course-picture img{width:100%;height:100%;object-fit:cover}.course-cover{width:144px;height:96px;object-fit:contain;border-radius:10px;flex:none;background:var(--soft);padding:8px}.course-teachers{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}.teacher-identity{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.teacher-identity img{width:28px;height:28px;object-fit:cover;border-radius:50%}@media(max-width:650px){.record-icon.has-course-picture{width:48px;height:40px}.photo-preview{width:100%;max-width:280px}.course-cover{width:100%;height:120px;flex-basis:auto}}.photo-picker:not(.round) .photo-preview{object-fit:contain;background:var(--soft)}.university-email-box{display:grid;gap:8px;min-width:0}.university-email-box>select{width:100%;height:44px}.university-email-address{display:flex;align-items:center;width:100%;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-sm, 8px);background:var(--paper);overflow:hidden}.university-email-address:focus-within{outline:2px solid var(--brand-coral);outline-offset:2px}.university-email-address>input:not([type=checkbox]):not([type=radio]):not([type=file]){flex:1;min-width:0;width:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none!important;padding-inline:12px}.university-email-domain{flex:none;padding-right:12px;white-space:nowrap;font-size:16px;color:var(--muted)}.university-email-preview{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;color:var(--muted)}.auth-page .field:has(.university-email-box) .field-control{height:auto}:root{color-scheme:light}body{font:450 17px/1.55 var(--font-sans);letter-spacing:-.12px;font-optical-sizing:auto}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:700}h1{font-size:34px;letter-spacing:-1.1px;line-height:1.2}h2{font-size:22px;letter-spacing:-.5px;line-height:1.3}h3{font-size:18px;letter-spacing:-.2px}small,.small,.muted.small{font-size:15px;line-height:1.5}a{text-underline-offset:3px}.main-content{max-width:1280px;padding:28px 40px 0}.main-content.compiler-main{padding:16px 24px 0;max-width:none}.page-title{margin:0 0 26px;gap:20px;align-items:center}.page-title h1{margin:0}.eyebrow{font-size:14px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);margin:0 0 7px}.page-description{font-size:16px;line-height:1.5;margin-top:8px;color:var(--muted)}.section{margin-top:22px}.section-head{margin-bottom:16px}.section-head h2{font-size:20px}.button{min-height:44px;padding:10px 16px;gap:8px;border-radius:9px;font:650 15px/1.3 var(--font-sans);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-small);white-space:nowrap;transition:background-color .14s,border-color .14s,color .14s}.button:hover:not(:disabled){border-color:color-mix(in srgb,var(--ink) 25%,var(--line));background:var(--soft)}.button.primary{background:var(--brand-coral);border-color:var(--brand-coral);color:#302025;box-shadow:0 2px 4px #b83d4410}.button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button.quiet{box-shadow:none;border-color:transparent}.button.quiet:hover:not(:disabled){background:var(--soft);border-color:transparent}.button.destructive{box-shadow:none}.button svg{width:16px;height:16px}.icon-button{min-height:40px;min-width:40px;border-radius:9px;color:var(--muted);background:transparent}.icon-button:hover{color:var(--ink);background:var(--soft)}.button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:450 16px/1.4 var(--font-sans);padding:11px 12px;box-shadow:var(--shadow-small)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.7}input:focus,select:focus,textarea:focus{border-color:var(--muted);outline:2px solid color-mix(in srgb,var(--focus-ring) 35%,transparent);outline-offset:2px}.field{gap:6px;margin-bottom:18px}.field label,.field>label{font-size:15px;line-height:1.4;font-weight:650}.field input,.field select,.field textarea{font-size:16px}.field small,.field-feedback{font-size:14px;line-height:1.45;color:var(--muted)}.field-error input:not([type=checkbox]):not([type=radio]),.field-error .university-email-address{border-color:var(--error)}.field-error .field-message{color:var(--error)}.password-input{border:0;border-radius:9px;background:transparent}.password-input>.icon-button{color:var(--muted);right:4px;border-radius:8px}.site-header{height:var(--header-height);background:var(--paper);border-bottom:1px solid var(--line);color:var(--ink)}.header-inner{height:var(--header-height);min-height:var(--header-height);max-width:1600px;padding:0 32px;gap:32px}.brand,.brand.compact{display:inline-flex;align-items:center;gap:7px;text-decoration:none}.brand img.brand-symbol,.brand.compact img.brand-symbol{width:47px;height:35px;max-height:35px;object-fit:contain}.brand .brand-word{font-size:30px;letter-spacing:-1.5px;font-weight:750;line-height:1;color:var(--ink)}.brand.has-logo img,.brand.compact.has-logo img{width:auto;height:40px;max-width:172px;object-fit:contain}.desktop-nav{gap:3px;align-self:center;align-items:center}.site-header .desktop-nav a{height:40px;padding:10px 13px;font:600 15px/1.3 var(--font-sans);color:var(--muted);border-radius:8px}.site-header .desktop-nav a:hover{color:var(--ink);background:var(--soft)}.site-header .desktop-nav a.active{color:var(--ink);background:var(--soft);border-radius:8px}.site-header .desktop-nav a.active:after{display:none}.header-actions{gap:6px}.site-header .icon-button,.site-header .account-menu>summary{color:var(--muted)}.site-header .icon-button:hover{background:var(--soft);color:var(--ink)}.account-menu>summary{padding:4px 7px;min-height:44px;gap:9px;border-radius:9px;font-size:15px}.account-menu>summary:hover{background:var(--soft)}.site-header .avatar{width:32px;height:32px;border-radius:var(--radius-sm);font:700 14px/1 var(--font-sans);background:var(--soft);color:var(--ink)}.account-dropdown{border-radius:12px;box-shadow:var(--shadow-menu);border:1px solid var(--line);padding:6px;width:270px;right:0}.account-dropdown a,.account-dropdown button,.account-dropdown b{font-family:var(--font-sans);font-size:15px}.account-dropdown a,.account-dropdown button{border-radius:7px;padding:11px 12px}.account-dropdown>div:first-child{padding:12px}.account-dropdown small{font-size:14px}.account-dropdown .theme-control{font-size:14px;padding:10px 12px}.account-dropdown select{font-size:15px;min-height:40px;height:40px}.notification-button>span{border-radius:6px;top:0;right:0;min-width:16px;height:16px;font-size:13px;line-height:16px}.public-header .desktop-nav{flex:1;justify-content:flex-end}.public-header .header-actions>.button{min-height:40px;font-size:15px;border-radius:8px;padding:9px 15px}.mobile-nav{border:1px solid var(--line);border-radius:0 0 14px 14px;padding:10px;box-shadow:var(--shadow-menu)}.mobile-nav a{font-size:16px;border-radius:8px;min-height:44px;padding:11px 14px}.mobile-nav a.active{color:var(--ink);background:var(--soft)}.tabs{display:flex;gap:4px;border:0;min-height:44px;background:var(--soft);border-radius:10px;padding:4px;width:fit-content;max-width:100%;margin-bottom:22px}.tabs button{font:650 15px/1.3 var(--font-sans);min-height:36px;padding:9px 15px;border:1px solid transparent;border-radius:7px;color:var(--muted);white-space:nowrap}.tabs button:hover{background:color-mix(in srgb,var(--paper) 65%,transparent);color:var(--ink)}.tabs button.selected{background:var(--paper);color:var(--ink);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:7px;box-shadow:var(--shadow-small)}.tabs .tab-count{font-size:13px;min-width:18px;height:18px;padding:0 5px;border-radius:5px;margin-left:4px}.tabs-picker{font-size:15px}.tabs-picker select{margin-top:6px}.dashboard>.page-title{padding:6px 0 26px;margin-bottom:20px;border-bottom:1px solid var(--line)}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px;align-items:start}.dashboard-content{min-width:0}.dashboard-tabs{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.dashboard-tabs .tabs{margin:0}.text-link{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:650;color:var(--muted);white-space:nowrap}.text-link:hover{color:var(--ink)}.record-list:not(.course-grid){border-top:1px solid var(--line)}.record{padding:17px 8px;gap:14px}.record-title{font-size:17px;font-weight:650;letter-spacing:-.2px}.record p,.record-main p,.record-main small{font-size:14px;line-height:1.5;margin:5px 0 0;color:var(--muted)}.record-icon{width:40px;height:40px;border-radius:10px;background:var(--soft);color:var(--muted)}.record-actions .button{font-size:14px;min-height:36px;padding:8px 12px}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border:0}.course-grid .record{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:var(--shadow-small);min-width:0}.course-grid .record:hover{border-color:color-mix(in srgb,var(--ink) 22%,var(--line))}.course-grid .record-icon{display:flex;width:48px;height:48px;border-radius:12px;margin:0 0 24px;background:var(--selection);color:var(--ink)}.course-grid .record:nth-child(2n) .record-icon{background:var(--soft)}.course-grid .record-icon svg{width:23px;height:23px}.course-grid .record-icon.has-course-picture{width:100%;height:94px;margin-bottom:18px;border-radius:9px;background:var(--soft)}.course-grid .record-icon.has-course-picture img{object-fit:contain;padding:8px}.course-grid .record-main{width:100%;margin:0;flex:1}.course-grid .record-title{font-size:20px;line-height:1.35;letter-spacing:-.5px;display:block}.course-grid .record-main p{font-size:14px;margin-top:9px}.course-grid .record-actions{display:flex;justify-content:space-between;width:100%;margin-top:22px;padding-top:14px;border-top:1px solid var(--line)}.course-grid .record-actions>.button{justify-content:space-between;padding:6px 0;width:100%;color:var(--ink);min-height:34px}.course-grid .record-actions>.button:hover{background:transparent;color:var(--muted)}.course-grid .record-actions:has(>button)>.button{width:auto}.dashboard-tools{min-width:0;padding:12px 0 0}.dashboard-tools .eyebrow{font-size:13px}.dashboard-tools h2{font-size:21px;margin:5px 0 8px}.dashboard-tools>p{font-size:14px;color:var(--muted);margin:0 0 20px}.dashboard-tools>a{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line);min-width:0}.dashboard-tools>a>span:nth-child(2){flex:1;min-width:0}.dashboard-tools>a>svg{color:var(--muted);flex:none}.tool-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;background:var(--paper);border:1px solid var(--line);border-radius:9px;color:var(--muted)}.dashboard-tools strong{font-size:15px;font-weight:650}.dashboard-tools small{display:block;font-size:14px;line-height:1.5;color:var(--muted);margin-top:3px}.dashboard-tools>a:hover strong{text-decoration:underline;text-underline-offset:3px}.dashboard-note{display:flex;gap:14px;align-items:center;margin-top:28px;font-size:14px;color:var(--muted);line-height:1.6}.dashboard-note strong{font-size:14px;color:var(--ink);font-weight:550}.code-glyph{font:550 28px/1 var(--font-sans);color:var(--brand-coral)}.catalog-controls{background:var(--paper);border:1px solid var(--line);padding:18px;border-radius:12px;gap:16px;margin-bottom:22px}.auth-shell .main-content.auth-main{max-width:1120px;padding:30px 40px 0}.auth-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:80px;max-width:none;align-items:center;padding:16px 0 28px}.auth-intro{padding:18px 0 0;max-width:440px}.auth-intro-label{font-size:13px;letter-spacing:1.8px;font-weight:700;color:var(--muted)}.auth-intro h2{font-size:52px;line-height:1.12;letter-spacing:-2px;font-weight:700;margin:20px 0}.auth-intro h2>span{color:var(--brand-coral)}.auth-intro>p{font-size:16px;color:var(--muted);max-width:350px;line-height:1.75;margin:0 0 26px}.auth-code{background:#24272f;border:1px solid #373b46;border-radius:12px;color:#e4e7ed;box-shadow:0 12px 26px #1018270a;max-width:370px;font:12px/1.85 var(--font-sans)}.auth-code-head{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid #3b3e48;color:#b4b9c6;font:11px/1.5 var(--font-sans)}.auth-code pre{font:inherit;line-height:1.85;margin:0;padding:16px 18px;white-space:pre-wrap}.auth-code code{font:inherit}.auth-code-keyword{color:#c7b3f4}.auth-code-string{color:#b8d6a5}.auth-code-type{color:#9ecdd8}.auth-code-function{color:#edf5f3}.auth-code-number{color:#edb691}.auth-code-comment{color:#9099aa}.auth-code-result{display:flex;align-items:center;gap:8px;padding:9px 18px;border-top:1px solid #3b3e48;color:#b8d6a5;font:11px/1.5 var(--font-sans)}.auth-intro-note{display:flex;align-items:center;gap:9px;margin-top:20px;font-size:13px;color:var(--muted)}.auth-intro-note img{width:23px;height:auto}.auth-form{padding:30px 28px;border:1px solid var(--line);background:var(--paper);border-radius:16px;box-shadow:var(--shadow-small)}.auth-form .eyebrow{display:block;font-size:13px;letter-spacing:1.2px;margin:0 0 7px}.auth-form h1{font-size:28px;letter-spacing:-.85px;margin:0 0 9px}.auth-form .muted,.auth-alternate{font-size:14px;line-height:1.6}.auth-form .muted{margin:0 0 22px}.auth-form form{margin-top:0}.auth-form .field{margin:0 0 15px;gap:6px}.auth-form .field label,.auth-form .field small{font-size:14px}.auth-form .auth-submit{min-height:44px;margin-top:19px;font-size:15px}.auth-alternate{margin:20px 0 0;text-align:center;color:var(--muted)}.auth-alternate a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line)}.auth-alternate a:hover{text-decoration-color:var(--ink)}.forgot-link{font-size:14px;display:inline-block;float:none;margin:0;color:var(--muted)}.auth-identity-row{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px}.university-email-box{gap:5px}.university-email-address{border-radius:9px;box-shadow:var(--shadow-small)}.university-email-address>input:not([type=checkbox]):not([type=radio]):not([type=file]){font-size:15px;border-radius:0;box-shadow:none;height:44px;min-height:44px}.university-email-domain{font-size:14px;padding-right:10px}.university-email-preview{font-size:13px;line-height:1.5}.registration-role{font-size:14px;line-height:1.55;margin:-4px 0 15px;color:var(--muted)}.auth-form .back-link{font-size:14px;margin-top:18px}.form-section{padding:22px 0;gap:30px}.form-heading h2{font-size:19px}.form-heading p,.check-field small,.detail-list{font-size:15px;line-height:1.6}.check-field{padding:12px 0}.check-field strong{font-size:16px}.empty{padding:32px 22px;border:1px dashed var(--line);border-radius:12px;background:var(--paper);color:var(--muted);font-size:15px}.empty-title{font-size:17px;color:var(--ink)}.data-table{font-size:15px}.data-table th{font-size:14px;font-weight:700;color:var(--muted);background:var(--soft)}.data-table td,.data-table td small{font-size:15px}.aligned-table [data-layout=table] th:first-child{padding-left:12px;border-radius:8px 0 0 8px}.aligned-table [data-layout=table] th:last-child{padding-right:12px;border-radius:0 8px 8px 0}.aligned-table [data-layout=table] td{padding-block:13px}.aligned-table .data-table .button{font-size:14px;border-radius:8px}.table-row-details.icon-button{border-radius:7px}.status{font-size:14px;gap:6px}.breadcrumbs{font-size:14px;gap:7px;margin-bottom:17px}.breadcrumbs a{color:var(--muted)}.modal{border-radius:16px;border:1px solid var(--line);box-shadow:0 24px 90px #0003}.modal::backdrop{background:#10151c88;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-head{padding:17px 24px;min-height:66px}.modal-head h2{font-size:20px;letter-spacing:-.4px}.modal-body.screen-pages-dialog{padding:0 24px}.modal .dialog-actions{gap:8px;padding-top:16px;border-top:1px solid var(--line);margin-top:22px}.course-overview{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:18px;gap:20px}.course-teachers,.teacher-identity{font-size:14px}.course-cover{border-radius:9px}.about-intro{margin-bottom:26px}.about-intro h1{font-size:38px;letter-spacing:-1.2px}.about-intro p{font-size:17px;line-height:1.7;max-width:600px}.about-layout{gap:50px}.about-notes h2{font-size:19px;margin-bottom:8px}.about-notes p{font-size:16px;line-height:1.75}.about-source{border-radius:12px;box-shadow:0 6px 24px #10182708}.about-source-head,.about-source-foot{font-size:14px}.credits-code{font-size:15px;line-height:1.9}.about-source .button{font-size:14px}.workspace-title h1{font-size:23px;letter-spacing:-.6px}.workspace-path{font-size:14px;margin-bottom:9px}.question-picker{font-size:14px}.question-picker select{font-size:15px;min-height:38px;border-radius:8px}.workspace-save{font-size:14px}.compiler-actions{gap:8px;padding:9px 0;border-block-color:var(--line)}.compiler-actions .button{font-size:14px;border-radius:8px}.compiler-actions .keyboard-hint{font-size:14px}.mobile-workspace-tabs .tabs{min-height:40px;margin:8px 0 0;padding:3px;gap:3px}.mobile-workspace-tabs .tabs button{min-height:33px;padding:7px 17px;font-size:14px}.workspace-grid{margin-top:12px}.workspace-code>.project-heading{font-size:14px;padding:3px 0 7px}.project-heading .button{font-size:14px}.project-editor{border-radius:12px;border:1px solid var(--line);overflow:hidden;background:var(--paper)}.project-file-select{font-size:14px;background:var(--paper);padding-block:8px}.project-file-select select{min-height:34px;font-size:14px;box-shadow:none;padding-block:6px}.project-code>.editor-toolbar{font-size:14px}.workspace-problem{border:1px solid var(--line);border-radius:12px;background:var(--paper)}.workspace-problem>.tabs{margin:10px 14px 0;padding:3px;min-height:38px}.workspace-problem>.tabs button{min-height:32px;padding:6px 12px;font-size:14px}.problem-content{font-size:16px;line-height:1.7;padding:18px}.compiler-summary,.output-box{border-radius:10px;font-size:15px}.account-gate{max-width:600px;margin:28px auto;padding:28px;border:1px solid var(--line);background:var(--paper);border-radius:14px}.account-gate h1{font-size:29px}.account-gate p{font-size:16px;line-height:1.7}@media(min-width:1450px){.main-content:not(.compiler-main):not(.auth-main){padding-top:36px}.auth-page{padding-top:36px}}@media(max-width:1150px){.header-inner{padding-inline:24px;gap:20px}.site-header .desktop-nav a{padding-inline:10px;font-size:14px}.account-name{display:none}.dashboard-layout{grid-template-columns:minmax(0,1fr) 250px;gap:28px}.auth-page{gap:50px}.auth-intro h2{font-size:45px}}@media(max-width:950px){.main-content{padding:24px 24px 0}.dashboard-layout{grid-template-columns:minmax(0,1fr)}.dashboard-tools{display:none}.auth-shell .main-content.auth-main{max-width:550px;padding:26px 30px 0}.auth-page{display:block;padding:0 0 24px;max-width:420px;margin:auto}.auth-intro{display:none}.auth-form{padding:28px}.desktop-nav{display:none}.header-actions{margin-left:auto}.mobile-menu-button,.public-header .desktop-nav{display:flex}.public-header .mobile-menu-button{display:none}.brand .brand-word{font-size:28px}.brand img.brand-symbol{width:43px;height:32px}}@media(max-width:650px){.header-inner{padding:0 18px;gap:12px}.brand,.brand.compact{gap:5px}.brand img.brand-symbol,.brand.compact img.brand-symbol{width:39px;height:29px}.brand .brand-word{font-size:27px;letter-spacing:-1.2px}.brand.has-logo img,.brand.compact.has-logo img{max-width:135px;height:34px}.site-header .desktop-nav a{font-size:14px;padding:9px 8px;min-height:40px}.public-header .desktop-nav{gap:0}.public-header .header-actions>.button{min-width:0;font-size:14px;padding:9px 12px}.header-actions{gap:2px}.site-header .header-actions>.icon-button{min-width:35px;min-height:40px}.account-menu>summary{padding-inline:4px;gap:0}.site-header .avatar{width:29px;height:29px}.account-name{display:none}.main-content,.main-content.compiler-main{padding:20px 18px 0}h1{font-size:28px;letter-spacing:-.8px}.page-title{gap:14px;margin-bottom:22px}.page-title .actions{width:100%;justify-content:flex-start}.page-title .actions>.button{flex:1}.page-description{font-size:14px;margin-top:7px}.eyebrow{font-size:13px;margin-bottom:6px}.dashboard>.page-title{padding:0 0 18px;margin-bottom:18px}.dashboard>.page-title .actions{width:auto}.dashboard>.page-title .actions>.button{min-height:40px;height:40px;font-size:14px;padding-inline:12px}.dashboard-tabs{gap:10px;margin-bottom:16px}.dashboard-tabs .tabs{gap:2px}.dashboard-tabs .tabs button{padding:8px 11px;font-size:14px}.dashboard-tabs>.text-link{font-size:14px;gap:4px}.course-grid{grid-template-columns:minmax(0,1fr);gap:14px}.course-grid .record{padding:18px}.course-grid .record-icon{width:40px;height:40px;margin-bottom:18px}.course-grid .record-title{font-size:19px}.course-grid .record-actions{margin-top:17px;padding-top:10px}.course-grid .record-icon.has-course-picture{height:75px}.record{padding:15px 0}.record-title{font-size:16px}.record p,.record-actions .button{font-size:14px}.record-actions .button svg{display:none}.catalog-controls{padding:14px;gap:13px;border-radius:10px}.catalog-controls .field>label{font-size:14px}.tabs{gap:3px;padding:3px;margin-bottom:20px}.tabs button{font-size:14px;padding:9px 12px;min-height:38px}.tabs .tab-count{font-size:13px}.auth-shell .main-content.auth-main{padding:24px 18px 0;max-width:470px}.auth-page{padding:0 0 20px}.auth-form{padding:24px 22px;border-radius:14px}.auth-form h1{font-size:27px}.auth-form .muted{margin-bottom:22px}.auth-form .field{margin-bottom:16px}.auth-form .auth-submit{margin-top:20px}.auth-identity-row{grid-template-columns:100px minmax(0,1fr);gap:10px}.university-email-domain{font-size:13px;padding-right:8px}.auth-form .field input,.auth-form .field select{font-size:15px}.form-section{gap:16px;padding-block:20px}.aligned-table [data-layout=rows] td:before{font-size:14px}.data-table td,.data-table td small{font-size:14px}.table-row-detail-list{font-size:15px}.modal-head{padding:13px 18px}.modal-head h2{font-size:19px}.modal-body.screen-pages-dialog{padding-inline:18px}.about-intro h1{font-size:32px}.about-intro p{font-size:16px}.about-layout{gap:26px}.about-notes p{font-size:15px}.credits-code{font-size:14px}.workspace-path{font-size:13px}.workspace-title h1{font-size:20px}.workspace-save{font-size:13px}.question-picker{font-size:14px}.question-picker select{min-height:34px;font-size:14px}.compiler-actions{padding:7px 0}.compiler-actions .button{font-size:14px;padding-inline:10px}.mobile-workspace-tabs .tabs{margin-top:6px}.mobile-workspace-tabs .tabs button{padding-inline:14px;font-size:14px}.project-heading .button{font-size:13px}.workspace-grid{margin-top:9px}.account-gate{padding:22px;margin:12px auto}.account-gate h1{font-size:25px}.exam-header-actions{gap:8px}.exam-mode-label,.exam-header-actions .button{font-size:14px}}@media(max-width:370px){.header-inner{padding-inline:12px;gap:8px}.public-header .desktop-nav a{padding-inline:5px;font-size:14px}.brand .brand-word{font-size:24px}.brand img.brand-symbol,.brand.compact img.brand-symbol{width:33px}.public-header .header-actions>.button{padding-inline:9px;font-size:14px}.auth-form{padding:22px 16px}.auth-shell .main-content.auth-main{padding-inline:14px}.dashboard-tabs .tabs button{padding-inline:8px}.dashboard-tabs>.text-link{font-size:13px}.university-email-domain{font-size:12px}}@media(max-height:700px)and (min-width:951px){.auth-shell .main-content.auth-main{padding-top:20px}.auth-page{padding-top:4px;align-items:start}.auth-form{padding:23px 26px}.auth-form .field{margin-bottom:13px}.auth-form .muted{margin-bottom:18px}.auth-intro h2{font-size:44px;margin:16px 0}.auth-intro>p{margin-bottom:18px}.auth-intro-note{display:none}.auth-code pre{padding-block:12px}.auth-alternate{margin-top:16px}}@media(max-height:600px){.auth-shell .main-content.auth-main{padding-top:16px}.auth-intro{display:none}.auth-page{display:block;max-width:420px;margin:auto}.auth-form{padding:20px}.main-content{padding-top:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}@media print{.site-header,.dashboard-tools,.auth-intro{display:none}.main-content{max-width:none;padding:0}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-grid .record,.auth-form{box-shadow:none}}.record:not(.course-grid .record):hover{background:var(--soft)}:root[data-theme=dark] .record:not(.course-grid .record):hover{background:var(--soft)}@media(max-width:650px){.field input,.field select,.field textarea,.auth-form .field input,.auth-form .field select{font-size:18px}.university-email-address>input:not([type=checkbox]):not([type=radio]):not([type=file]){font-size:18px}}@media(max-width:650px){.page-title{align-items:stretch}.dashboard>.page-title>.actions{align-self:flex-start}.mobile-nav{top:var(--header-height)}}.section-head{gap:16px;align-items:center}.section-head>h2{flex:none;margin:0}.section-head>select,.section-head .actions>select{width:auto;min-width:160px;max-width:260px;min-height:44px;height:44px;font-size:15px}.section-head>.actions{flex-wrap:nowrap;align-items:center}.notification-center>.section-head{margin-top:26px}.notification-row{gap:24px;padding:18px 8px}.notification-row h3{font-size:17px;margin:0 0 6px}.notification-row p{font-size:15px;line-height:1.6;margin:4px 0}.notification-row small{font-size:14px}.notification-row.unread{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:18px;margin:0 0 12px}@media(max-width:650px){.section-head>h2{font-size:18px}.section-head>select{min-width:140px;max-width:170px;font-size:15px}.section-head:has(>.actions){align-items:stretch;flex-direction:column}.section-head>.actions{width:100%}.section-head .actions>select{flex:1;min-width:0;max-width:none}.notification-row{flex-direction:column;align-items:stretch;gap:12px}.notification-row .actions{justify-content:flex-start}.notification-row p{font-size:14px}}.auth-main>.screen-pages{width:100%}.auth-code{margin:0}@media(min-width:951px)and (max-height:800px){.auth-shell .main-content.auth-main{padding-top:22px}.auth-page{padding:8px 0 18px;gap:70px}.auth-intro{padding-top:0}.auth-intro h2{font-size:47px;line-height:1.12;margin:18px 0}.auth-intro>p{margin-bottom:22px}.auth-code{font-size:14px}.auth-code pre{padding:13px 16px;line-height:1.7}.auth-intro-note{margin-top:16px}.auth-form{padding:26px 28px}.auth-form .muted{margin-bottom:20px}.auth-form .field{margin-bottom:14px}.auth-form .auth-submit{margin-top:17px}}@media(min-width:951px)and (max-height:800px){.auth-register{padding-bottom:12px}.auth-register .auth-form{padding-block:22px}.auth-register .auth-form .muted{margin-bottom:16px}.auth-register .auth-form .field{margin-bottom:11px}.auth-register .auth-form .auth-submit{margin-top:12px}.auth-register .auth-alternate{margin-top:14px}}@media(max-width:650px){.auth-identity-row{grid-template-columns:110px minmax(0,1fr)}}@media(max-width:650px)and (max-height:780px){.auth-shell .main-content.auth-main{padding-top:16px}.auth-register .auth-form{padding:20px 16px}.auth-register .auth-form .muted{margin-bottom:16px}.auth-register .auth-form .field{margin-bottom:12px}.auth-register .auth-form .auth-submit,.auth-register .auth-alternate{margin-top:14px}.auth-register .registration-role{margin-bottom:12px}}@media(min-width:951px){.about-intro{margin-bottom:22px}.about-source-head{padding:6px 14px}.about-source .button{min-height:30px}.credits-code{padding:14px 16px 14px 8px;line-height:1.7}.about-source-foot{padding:6px 14px}.about-page>.credits-puzzle{margin-top:16px;padding-top:0}.credits-puzzle>summary{font-size:16px;padding-block:12px}}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.workspace>.quiet-workspace-top{min-height:44px;gap:10px;margin:0 0 6px}.workspace-back.icon-button{width:32px;min-width:32px;min-height:36px;height:36px;padding:6px;flex:none}.quiet-workspace-top>.question-picker{margin:0;flex:1;min-width:0}.quiet-workspace-top .question-picker select{border:0;background-color:transparent;box-shadow:none;padding:6px 27px 6px 0;min-height:40px;width:100%;max-width:none;font-size:18px;font-weight:650;letter-spacing:-.4px}.workspace-question-title{font-size:21px;letter-spacing:-.5px;margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-context{display:flex;align-items:center;gap:20px;flex:none;margin-left:auto}.workspace-context .workspace-clock{display:inline-flex;align-items:center;gap:6px;position:static;flex:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}.workspace-context .workspace-clock.expired{color:var(--error)}.workspace-context .workspace-save{display:flex;align-items:center;gap:6px;font-size:14px;white-space:nowrap;color:var(--muted)}.workspace-options-button{min-width:36px;min-height:36px;width:36px;height:36px}.workspace>.quiet-compiler-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 8px;margin:0;border:0;border-bottom:1px solid var(--line)}.quiet-compiler-actions>.mobile-workspace-tabs{flex:1;min-width:0}.quiet-compiler-actions .tabs{background:transparent;border:0;padding:0;gap:24px;min-height:44px;margin:0;border-radius:0;flex-wrap:nowrap}.quiet-compiler-actions .tabs button{min-height:44px;height:44px;padding:10px 0;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;background:transparent;font-size:15px;font-weight:550;color:var(--muted)}.quiet-compiler-actions .tabs button:hover{background:transparent;color:var(--ink)}.quiet-compiler-actions .tabs button.selected{border:0;border-bottom:2px solid var(--ink);background:transparent;border-radius:0;box-shadow:none;color:var(--ink);font-weight:700}.quiet-compiler-actions>.actions{flex:none;flex-wrap:nowrap;width:auto;gap:8px}.quiet-compiler-actions>.actions>.button{min-height:38px;height:38px;min-width:76px;padding:8px 16px;font-size:14px}.workspace .workspace-grid{margin-top:12px}.workspace-code>.project-editor.compact-project{border-radius:10px}.project-file-bar{display:flex;align-items:center;gap:10px;flex:none;min-height:46px;padding:4px 12px;border-bottom:1px solid var(--line);background:var(--paper);color:var(--muted)}.project-file-bar>svg{flex:none}.project-file-bar>select{flex:1;min-width:0;width:auto;max-width:560px;border:0;background-color:transparent;box-shadow:none;min-height:36px;height:36px;padding:6px 25px 6px 0;font:450 14px/1.4 var(--font-code)}.project-file-bar>.icon-button{margin-left:auto;min-width:34px;min-height:34px;width:34px;height:34px;flex:none}.workspace-files-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;margin-bottom:12px}.workspace-files-title h2{font-size:19px;margin:0}.workspace-files-title .button{min-height:36px;font-size:14px}.workspace-options{width:390px}.workspace-options .screen-content{padding:10px 0 16px}.workspace-menu-context{font-size:14px;color:var(--muted);margin:0 0 10px}.workspace-option-list{display:flex;flex-direction:column;gap:2px}.workspace-option-list>.button{justify-content:flex-start;text-align:left;width:100%;min-height:42px;padding:11px 10px;box-shadow:none;font-size:15px;font-weight:550;border-radius:7px}.workspace-option-list>.button svg{color:var(--muted);width:17px;height:17px}.workspace-shortcuts{font-size:13px;color:var(--muted);line-height:1.7;border-top:1px solid var(--line);padding-top:12px;margin:12px 0 0}.workspace-file-name{font:12px/1.6 var(--font-code);color:var(--muted);overflow-wrap:anywhere;margin:0 0 12px}.workspace-options .check-field{margin-top:16px;border-top:1px solid var(--line);font-size:14px}.rich-surface pre,.prose pre,.expanded-output{white-space:pre-wrap;overflow-wrap:anywhere;overflow:visible;max-height:none}.question-switcher{flex-wrap:wrap;overflow:visible;padding-bottom:0}@media(max-width:650px){.main-content.compiler-main{padding:12px 14px 0}.workspace>.quiet-workspace-top{gap:5px;margin-bottom:4px}.workspace-back.icon-button{width:26px;min-width:26px;padding:4px}.quiet-workspace-top .question-picker select{font-size:15px;letter-spacing:-.2px;min-height:40px;padding-right:22px}.workspace-context{gap:9px}.workspace-context .workspace-clock{font-size:14px;gap:4px}.workspace-context .workspace-clock>svg{display:none}.workspace-save-text{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.workspace-context .workspace-save{gap:0}.workspace-options-button{min-width:30px;min-height:36px;width:30px}.workspace>.quiet-compiler-actions{gap:12px;padding-bottom:5px}.quiet-compiler-actions .tabs{gap:18px;min-height:44px}.quiet-compiler-actions .tabs button{font-size:14px;min-height:44px;height:44px;padding:11px 0}.quiet-compiler-actions>.actions{gap:6px}.quiet-compiler-actions>.actions>.button{min-width:0;min-height:36px;height:36px;padding:8px 13px;font-size:14px}.workspace .workspace-grid{margin-top:9px}.project-file-bar{padding:4px 10px;gap:7px;min-height:44px}.project-file-bar>select{min-height:34px;height:34px;font-size:14px}.workspace-question-title{font-size:17px}.workspace-option-list>.button{min-height:44px}}@media(max-width:370px){.workspace>.quiet-compiler-actions{gap:8px}.quiet-compiler-actions .tabs{gap:13px}.quiet-compiler-actions .tabs button{font-size:14px}.quiet-compiler-actions>.actions>.button{font-size:14px;padding-inline:10px}.workspace-context{gap:7px}.quiet-workspace-top .question-picker select{font-size:14px}}@media(max-height:600px){.workspace>.quiet-workspace-top{display:flex}.workspace-context .workspace-clock{display:inline-flex}.workspace .workspace-grid{margin-top:6px}.workspace>.quiet-compiler-actions{padding-bottom:3px}}.quiet-workspace-top .question-picker select{flex:0 1 auto;width:auto;max-width:100%}.project-file-bar>select{flex:0 1 auto;width:auto;max-width:min(560px,calc(100% - 78px))}.workspace-view-files .workspace-code .compact-project.files-only>.project-files{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px 28px;padding:18px}.compact-project .files-heading{grid-column:2;grid-row:1;display:flex;justify-content:flex-end;align-items:center;margin:0;padding:0;min-height:36px}.compact-project .files-heading h3{display:none}.compact-project .files-heading>span{font-size:14px;color:var(--muted)}.compact-project .file-create-actions{grid-column:1;grid-row:1;display:flex;flex-direction:row;align-items:center;gap:8px;margin:0;padding:0}.compact-project .file-create-actions>.button{width:auto;min-height:36px;height:36px;font-size:14px;padding:8px 12px}.compact-project .project-files>.file-tree{grid-column:1;grid-row:2;margin:0;padding:0}.compact-project .project-build-settings{grid-column:2;grid-row:2;margin:0;padding:0;border:0}.compact-project .project-build-settings .field{margin:0 0 10px}.compact-project .project-build-settings>small{font-size:14px;line-height:1.6;color:var(--muted)}.compact-project .file-tree li{margin:0;padding:0;min-width:0}.compact-project .file-tree details{position:relative;min-width:0}.compact-project .file-tree summary{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 76px 8px 8px;margin:0;font-size:14px;line-height:1.4}.compact-project .file-tree summary>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.compact-project .file-tree .folder-actions{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:flex-end;height:36px;gap:2px;padding:0;margin:0}.compact-project .folder-actions .icon-button{min-width:30px;min-height:30px;width:30px;height:30px;padding:6px}.compact-project .file-tree .file-tree{padding-left:20px;margin:0}.compact-project .file-item{min-height:36px;font-size:14px;padding:8px;gap:8px}.compact-project .file-item>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-project .file-item.active{background:var(--soft);color:var(--ink)}@media(max-width:650px){.workspace-view-files .workspace-code .compact-project.files-only>.project-files{grid-template-columns:minmax(0,1fr) auto;gap:16px 8px;padding:14px}.compact-project .project-files>.file-tree{grid-column:1/-1}.compact-project .project-build-settings{grid-column:1/-1;grid-row:3;border-top:1px solid var(--line);padding-top:16px}.compact-project .file-create-actions>.button{padding-inline:8px;font-size:14px}.compact-project .file-create-actions{gap:4px}}.submission-dialog .project-files>ul{max-height:none;min-height:0;overflow:visible}.site-header{background:var(--paper);color:var(--ink);border-bottom-color:var(--line);color-scheme:inherit}.brand,.brand.compact{flex:0 0 auto;gap:0}.brand img,.brand.compact img,.brand.has-logo img,.brand.compact.has-logo img{display:block;width:150px;height:auto;max-width:180px;max-height:46px;object-fit:contain;border-radius:0}.site-header .desktop-nav a{font-weight:600;border-radius:6px}.site-header .desktop-nav a.active{background:var(--soft);border-radius:6px}.site-header .account-menu>summary{min-height:40px}.site-header .account-dropdown{color:var(--ink);background:var(--paper)}.site-header .exam-mode-label{color:var(--muted)}.dashboard-layout{display:block}.dashboard>.page-title{border:0;padding-bottom:0;margin-bottom:24px}.dashboard-content{width:100%}.auth-shell .main-content.auth-main{max-width:520px;padding-top:32px}.auth-page{display:block;max-width:440px;margin-inline:auto;padding:0 0 20px}.auth-form{padding:28px}.auth-form-inner>.muted{margin-bottom:24px}.attribution{display:flex;align-items:center;flex-wrap:wrap;gap:3px 14px}.university-attribution{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.university-logo{display:block;flex:none;width:24px;height:24px;object-fit:contain;background:transparent;border-radius:0}.breadcrumbs{gap:14px}.about-page{max-width:1020px}.about-page .about-intro{margin-bottom:18px}.about-page>.credits-puzzle{padding:0;margin:0;border:0}.puzzle-instruction{margin:0 0 14px;color:var(--muted);font-size:15px}.credits-puzzle-content{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:start}.credits-puzzle .puzzle-tray{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0}.puzzle-tray .puzzle-token{justify-content:flex-start;text-align:left;font:550 15px/1.5 var(--font-code);padding:8px 10px;min-height:38px;white-space:normal;overflow-wrap:anywhere}.puzzle-tray .puzzle-token.selected{outline:2px solid var(--focus-ring);outline-offset:1px}.about-source-head{display:flex;align-items:center;min-height:38px;padding:7px 16px;font:550 15px/1.4 var(--font-code)}.credits-puzzle .credits-program{margin:0;padding:12px 16px;font:450 15px/2 var(--font-code);white-space:pre-wrap;overflow-wrap:anywhere}.credits-program .puzzle-gap{min-height:24px;min-width:35px;padding:0 7px;font-size:14px}.credits-puzzle .puzzle-controls{min-height:38px;margin-top:8px;gap:12px}.puzzle-message{font-size:14px}.workspace-title .workspace-back{font-size:14px;padding:7px 10px;min-height:34px;min-width:auto;flex:none}@media(max-width:650px){.brand img,.brand.compact img,.brand.has-logo img,.brand.compact.has-logo img{width:120px;max-height:38px}.header-inner{padding-inline:14px;gap:10px}.auth-shell .main-content.auth-main{padding-top:20px;max-width:470px}.auth-page{padding-bottom:12px}.auth-form{padding:22px}.attribution{gap:1px 10px}.university-attribution{gap:5px}.university-logo{width:20px;height:20px}.about-intro h1{font-size:29px}.about-page .about-intro{margin-bottom:14px}.about-intro p{font-size:15px}.puzzle-instruction{font-size:14px;margin-bottom:12px}.credits-puzzle-content{grid-template-columns:100px minmax(0,1fr);gap:10px}.puzzle-tray .puzzle-token{font-size:14px;padding:7px 6px;min-height:34px}.about-source-head{font-size:14px;min-height:32px;padding:6px 10px}.credits-puzzle .credits-program{font-size:14px;line-height:2;padding:10px 8px}.credits-program .puzzle-gap{min-width:26px;min-height:24px;padding:0 5px;font-size:14px}.credits-puzzle .puzzle-controls{margin-top:5px}}@media(max-width:370px){.brand img,.brand.compact img,.brand.has-logo img,.brand.compact.has-logo img{width:105px;max-height:34px}.header-inner{gap:8px;padding-inline:12px}.auth-form{padding:20px 16px}.credits-puzzle-content{grid-template-columns:85px minmax(0,1fr);gap:8px}.puzzle-tray .puzzle-token{font-size:13px;padding-inline:5px}.credits-puzzle .credits-program{font-size:14px;line-height:2;padding-inline:6px}}@media(max-height:700px){.auth-shell .main-content.auth-main{padding-top:16px}.auth-form{padding-top:20px;padding-bottom:20px}}.puzzle-token{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.puzzle-token:active{cursor:grabbing}.credits-program .puzzle-gap.drop-target{outline:2px solid var(--accent);outline-offset:2px}.puzzle-drag-preview{position:fixed;z-index:1000;pointer-events:none;max-width:220px;padding:8px 12px;border-radius:6px;background:var(--paper);color:var(--ink);box-shadow:0 4px 16px #0003;font:550 15px/1.5 var(--font-code)}.credits-puzzle .puzzle-tray{grid-column:1;grid-row:1}.credits-puzzle .about-source{order:0;grid-column:2;grid-row:1}.credits-puzzle .credits-program{border:0;border-radius:0}.guest-theme-menu{position:relative;flex:none}.guest-theme-menu>summary{display:flex;align-items:center;justify-content:center;width:36px;height:40px;padding:0;list-style:none;border-radius:8px;color:var(--muted);cursor:pointer}.guest-theme-menu>summary::-webkit-details-marker{display:none}.guest-theme-menu>summary:hover,.guest-theme-menu[open]>summary{background:var(--soft);color:var(--ink)}.guest-theme-panel{position:absolute;z-index:50;top:calc(100% + 8px);right:0;width:190px;padding:14px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow-menu);color-scheme:inherit}.guest-theme-panel .theme-control{display:grid;gap:8px;font-size:15px}.guest-theme-panel select{width:100%;font-size:15px;min-height:38px}@media(max-width:370px){.guest-theme-menu>summary{width:32px}.exam-header-actions{gap:5px}.exam-header-actions .button{padding-inline:8px;font-size:14px}.exam-shell .brand img{width:98px}}.management-main{padding-top:20px}.management-page{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0}.management-heading{flex:none}.management-heading .breadcrumbs{margin-bottom:12px}.management-heading .page-title,.management-heading .tabs{margin-bottom:18px}.management-panel,.management-list{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}.management-panel>.screen-pages,.management-list>.screen-pages{flex:1;min-height:0}.management-list>.section-head{flex:none;margin-bottom:8px;min-height:34px}.management-list .record{padding:14px 0}.management-links{padding-top:8px;max-width:780px}.management-links h2{margin-bottom:18px}.manage-settings{display:flex;flex-direction:column;flex:1;min-height:0;max-width:none}.settings-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;flex:1;min-height:0}.settings-sections{display:flex;flex-direction:column;gap:2px;align-self:start}.settings-sections button{border:0;background:transparent;border-radius:6px;color:var(--muted);text-align:left;min-height:34px;padding:7px 10px;font:550 15px/1.4 var(--font-sans)}.settings-sections button:hover,.settings-sections button[aria-current=true]{background:var(--soft);color:var(--ink)}.settings-section-content{min-width:0;min-height:0;max-width:780px}.settings-section-content h2{font-size:19px;margin:5px 0 18px}.settings-fields{min-width:0}.settings-fields .check-field{margin-bottom:16px}.settings-fields .rich-surface{min-height:100px;max-height:180px}.settings-fields .photo-preview{max-height:130px}.settings-actions{display:flex;align-items:flex-start;flex-direction:column;gap:16px}.settings-actions p{max-width:470px}.manage-settings>.save-bar{flex:none;margin-top:10px;padding:12px 0;border-top:1px solid var(--line);border-bottom:0}.settings-section-picker{display:none}.many-settings .settings-section-picker{display:flex;align-items:center;gap:16px;max-width:450px;margin-bottom:18px;font-size:15px}.many-settings .settings-section-picker select{flex:1;min-width:0}.many-settings .settings-sections{display:none}.many-settings .settings-layout{display:block}@media(max-width:950px){.management-heading .eyebrow,.management-heading .page-description{display:none}.management-heading .page-title{margin-bottom:12px}.management-heading .page-title h1{font-size:27px}.settings-layout{grid-template-columns:145px minmax(0,1fr);gap:20px}}@media(max-width:650px){.management-main{padding-top:14px}.management-heading .breadcrumbs{display:flex}.management-heading .page-title{gap:10px}.management-heading .page-title h1{font-size:23px;line-height:1.25}.management-heading .page-title .actions{gap:8px}.management-heading .page-title .button{min-height:36px;padding:7px 10px;font-size:14px}.management-heading .tabs,.management-heading .tabs-picker{margin-bottom:12px}.management-heading .tabs{display:none}.management-heading .tabs-picker{display:grid}.management-heading .tabs-picker{gap:4px;font-size:14px}.management-heading .tabs-picker select{min-height:38px;height:38px;font-size:16px}.settings-section-picker,.many-settings .settings-section-picker{display:flex;flex:none;align-items:center;justify-content:space-between;gap:10px;font-size:14px;margin-bottom:14px}.settings-section-picker select{width:auto;min-width:160px;max-width:65%;min-height:38px;padding:8px 10px;font-size:16px}.settings-sections{display:none}.settings-layout{display:block}.settings-section-content h2{display:none}.settings-fields .field,.settings-fields .check-field{margin-bottom:12px}.settings-fields .field-feedback{min-height:0}.settings-fields .rich-surface{min-height:100px;max-height:140px}.settings-fields .photo-preview{max-height:90px}.manage-settings>.save-bar{padding:9px 0;margin-top:8px}.manage-settings>.save-bar .button{min-height:38px;font-size:14px}.settings-actions{gap:12px}}.content-panel>.screen-viewport{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;scroll-padding-block:12px}.content-panel>.screen-viewport>.screen-content{transform:none;clip-path:none;padding-bottom:12px}.content-panel.screen-pages-dialog>.screen-viewport>.screen-content{padding-block:16px}.compiler-main>.content-panel>.screen-viewport{overflow:hidden}.compiler-main>.content-panel>.screen-viewport>.screen-content{height:100%;padding-bottom:0}.compiler-main>.content-panel>.screen-viewport>.screen-content:has(>.workspace-view-files){height:100%;min-height:0}.workspace-view-files .workspace-grid{overflow-y:auto;overflow-x:hidden}.workspace-view-files{height:100%;min-height:0}.code-editor .cm-scroller{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.code-editor .cm-scroller::-webkit-scrollbar{display:block;width:8px;height:0}.code-editor .cm-scroller::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px}.settings-layout{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.auth-shell .main-content.auth-main{display:flex;flex-direction:column;padding-top:20px;padding-bottom:12px}.auth-main>.content-panel{flex:1;min-height:0}.auth-page{padding:0;background:transparent}.auth-form{padding:24px}.auth-form-inner>.muted{margin-bottom:18px}.auth-form .field-feedback:empty{display:none}.auth-form .auth-submit{margin-top:12px}.auth-alternate{margin-top:14px}@media(max-height:650px){.auth-shell .main-content.auth-main{padding-top:10px;padding-bottom:8px}.auth-form{padding:16px 20px}.auth-form h1{font-size:25px;margin-bottom:6px}.auth-form-inner>.muted{margin-bottom:12px}.auth-form .field{margin-bottom:10px}.auth-form .auth-submit{margin-top:10px;min-height:40px;padding-block:8px}.auth-alternate{margin-top:10px}}@media(max-width:650px){.auth-form{padding:20px 18px}.auth-shell .main-content.auth-main{padding-top:14px}}@media print{.content-panel>.screen-viewport{overflow:visible!important}.content-panel>.screen-viewport>.screen-content{height:auto!important}}select:not([multiple]):not([size]){appearance:none;background-color:var(--paper);background-image:var(--select-caret);background-repeat:no-repeat;background-position:right 12px center;background-size:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);padding-inline:12px 36px;padding-block:0;font-family:var(--font-sans);font-weight:550;line-height:1.4;text-align:start;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 1px 2px #00000004;cursor:pointer;transition:border-color .12s,background-color .12s,box-shadow .12s}select:not([multiple]):not([size]):hover:not(:disabled){border-color:color-mix(in srgb,var(--muted) 40%,var(--line))}select:not([multiple]):not([size]):focus{border-color:var(--muted);outline:2px solid color-mix(in srgb,var(--ink) 18%,transparent);outline-offset:2px}select:not([multiple]):not([size]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}select:not([multiple]):not([size]):disabled{background-color:var(--soft);color:var(--muted);box-shadow:none;cursor:not-allowed;opacity:.65}.field-error select:not([multiple]):not([size]),select[aria-invalid=true]{border-color:var(--error)}select option{font-family:var(--font-sans);font-weight:450;background:var(--paper);color:var(--ink)}.account-dropdown,.guest-theme-panel{border-radius:10px;box-shadow:0 8px 26px #1018201a}.account-dropdown{width:268px;padding:6px}.account-dropdown>div:first-child{padding:12px 10px 14px;margin-bottom:5px}.account-dropdown a,.account-dropdown>button{min-height:38px;padding:9px 10px;font-weight:550}.account-dropdown a>svg,.account-dropdown>button>svg{display:none}.account-dropdown .theme-control{display:grid;gap:7px;margin:5px 0;padding:10px;border-block:1px solid var(--line)}.account-dropdown .theme-control select{height:38px;min-height:38px}.guest-theme-panel{width:208px;padding:12px}:root[data-theme=dark] .account-dropdown,:root[data-theme=dark] .guest-theme-panel{box-shadow:0 8px 26px #0005}@media(forced-colors:active){select:not([multiple]):not([size]){appearance:auto;background-image:none}}.main-content{display:flex;flex-direction:column}.main-content>.content-panel{flex:1;min-height:0;height:auto}.breadcrumbs{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;min-width:0;min-height:36px;flex:none;margin:0 0 14px;font-size:14px;line-height:1.4}.breadcrumbs .back-navigation{display:flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border-radius:7px;color:var(--ink);text-decoration:none}.breadcrumbs .back-navigation:hover{background:var(--soft)}.breadcrumbs a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.breadcrumbs ol{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;list-style:none;min-width:0;margin:0;padding:0}.breadcrumbs li{display:flex;align-items:center;gap:8px;min-width:0;max-width:260px}.breadcrumbs li:last-child{flex:1;max-width:360px}.breadcrumbs li>a,.breadcrumbs li>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;min-width:0}.breadcrumbs li>a{color:var(--muted);text-decoration:none}.breadcrumbs li>a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.breadcrumbs [aria-current=page]{color:var(--ink)}.breadcrumb-separator{flex:none;color:var(--muted);opacity:.55}.management-heading .breadcrumbs{margin-bottom:10px}.workspace>.workspace-breadcrumbs{margin-bottom:3px;min-height:32px}.workspace-breadcrumbs .back-navigation{width:32px;height:32px}@media(max-width:650px){.breadcrumbs{gap:5px;margin-bottom:10px;font-size:14px;min-height:34px}.breadcrumbs .back-navigation{width:34px;height:34px}.breadcrumbs ol,.breadcrumbs li{gap:5px}.breadcrumbs li:not(:nth-last-child(-n+2)){display:none}.breadcrumbs li:nth-last-child(2)>.breadcrumb-separator{display:none}.breadcrumbs li:nth-last-child(2){flex:0 1 auto;max-width:45%}.breadcrumbs li:last-child{flex:0 1 auto;max-width:none}.management-heading .breadcrumbs{display:flex;margin-bottom:8px}.workspace>.workspace-breadcrumbs{margin-bottom:2px;min-height:30px}.workspace-breadcrumbs .back-navigation{height:30px;width:30px}.auth-main>.page-breadcrumbs{margin-bottom:6px}}@media print{.breadcrumbs{display:none}}@media(max-width:650px){.management-list .record{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px 8px}.management-list .record-main{min-width:0}.management-list .record-title{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.management-list .record-actions{grid-column:2;display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;margin:0;padding:0;border:0}.management-list .record-actions .button{flex:0 0 auto;min-height:32px;padding:5px 10px}}@media print{.main-content{display:block}}@media(max-width:650px){.content-tools>.exam-model-actions>.button{font-size:14px;white-space:nowrap;padding-inline:7px;gap:5px}}.seb-settings{padding-top:6px}.seb-scope{margin:0 0 18px}.seb-note{margin:0 0 16px;line-height:1.6}.seb-status{font-size:16px;line-height:1.6}.seb-status .button{margin-top:10px}.seb-flow{padding-left:19px;margin:0 0 20px;line-height:1.7;font-size:15px}.seb-flow li{padding-left:4px;margin-bottom:8px}.seb-settings .settings-fields>.button{margin-bottom:16px}.seb-settings>.field{max-width:500px}@media(max-width:650px){.seb-scope,.seb-note{font-size:14px;margin-bottom:12px}.seb-settings>.field{margin-bottom:12px}.seb-settings .save-bar{gap:8px}.seb-settings .save-bar>.button{white-space:nowrap;padding-inline:10px;font-size:14px}.seb-settings .save-bar>span{font-size:13px}.seb-flow{font-size:14px;line-height:1.5;margin-bottom:12px}}.seb-password-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.seb-password-fields .field{margin-bottom:8px}@media(max-width:650px){.seb-password-fields{grid-template-columns:minmax(0,1fr);gap:0}.seb-settings .seb-note{line-height:1.4;margin-bottom:8px}.seb-settings .field-feedback{font-size:13px}.seb-settings .field-control input{min-height:38px}.seb-settings .field{gap:5px;margin-bottom:8px}.seb-settings .settings-section-picker{margin-bottom:8px}}.seb-password-hint{grid-column:1/-1;margin:0 0 8px;line-height:1.4}.seb-password-fields{gap:0 14px}@media(max-width:650px){.seb-password-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px}.seb-password-fields .field>label{font-size:14px;white-space:nowrap}.seb-password-hint{font-size:13px}}.seb-settings .field-feedback:empty{display:none}@media(max-width:650px){.seb-password-fields .field{margin-bottom:4px}.seb-settings .seb-password-hint{margin-bottom:0}}.sortable-records .record{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center}.sortable-records .sort-handle{display:flex;align-items:center;justify-content:center;gap:2px;width:44px;min-height:44px;padding:5px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:700 15px/1.3 var(--font-sans);font-variant-numeric:tabular-nums;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.sort-handle:hover,.sort-handle:focus-visible{background:var(--soft);color:var(--ink)}.sort-handle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.sortable-records .sort-handle:disabled{cursor:default;opacity:.45}.sortable-records .is-dragging{background:var(--soft);box-shadow:0 3px 10px #0000000d}.sortable-records .is-dragging .sort-handle{cursor:grabbing;color:var(--ink)}@media(max-width:650px){.management-list .sortable-records .record{grid-template-columns:36px minmax(0,1fr) auto;gap:8px}.management-list .sortable-records .record-actions{grid-column:auto;gap:2px}.management-list .sortable-records .record-actions .button{padding-inline:7px}.sortable-records .sort-handle{width:36px;font-size:14px}.management-list .sortable-records .record-title{font-size:15px}}body{font:400 var(--text-base)/1.5 var(--font-sans);letter-spacing:normal}h1{font-size:2rem;font-weight:700;line-height:1.2;letter-spacing:-.03em}h2{font-size:1.25rem;line-height:1.4;font-weight:700}h3{font-size:1.125rem;line-height:1.4;font-weight:700}p,li{line-height:1.55}small,.small,.field small,.field-feedback,.record p,.record-main p,.record-main small{font-size:var(--text-xs);line-height:1.45;color:var(--muted)}.page-description,.page-title .eyebrow,.section-head p{font-size:var(--text-sm)}.button,.icon-button{min-height:44px;min-width:44px;font-size:var(--text-sm);font-weight:650;border-radius:8px;gap:8px;transition:background-color .14s,border-color .14s,color .14s;box-shadow:none;white-space:nowrap;flex-shrink:0}.button{padding:9px 13px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);background:var(--paper);border:1px solid var(--line)}.button svg{display:block!important;flex:none;width:17px;height:17px}.button-label{display:inline;line-height:1.4}.button.open[data-action]{color:#fff;background:#285fc2;border:1px solid #285fc2;font-weight:700;min-height:42px;padding:8px 14px;flex-shrink:0}.button.open[data-action]:hover{color:#fff;background:#214e9f;border-color:#214e9f}:root[data-theme=dark] .button.open[data-action]{color:#111827;background:#86aaf2;border-color:#86aaf2}:root[data-theme=dark] .button.open[data-action]:hover{background:#adc6fc;border-color:#adc6fc}.cm-tooltip-autocomplete{background:var(--paper);color:var(--ink);border:1px solid var(--muted);border-radius:8px;box-shadow:0 8px 24px #0003;max-width:min(520px,85vw)}.cm-tooltip-autocomplete ul li.cpp-member{padding:6px 10px;display:flex;align-items:center;gap:8px}.cpp-access-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#168346;flex-shrink:0;box-shadow:0 0 0 1px #ffffff70}.cpp-access-private .cpp-access-dot{background:#e44848}.cpp-access-protected .cpp-access-dot{background:#c58a16}.cpp-member .cm-completionDetail{opacity:.85;font-size:.82em;overflow:hidden;text-overflow:ellipsis}.cm-tooltip.cpp-parameter-hint{background:var(--paper);color:var(--ink);border:1px solid var(--muted);border-radius:6px;box-shadow:0 4px 16px #0003}.cpp-parameter-hint{padding:6px 10px;max-width:min(560px,85vw);font:13px/1.5 var(--font-code);white-space:pre-wrap;overflow-wrap:anywhere}.cpp-parameter-hint strong{font-weight:700;text-decoration:underline;text-underline-offset:3px}.console-result .diagnostic-list{margin-top:8px}.console-result .diagnostic{padding:9px 12px;gap:12px}.console-result .diagnostic-line,.console-result .diagnostic b,.console-result .diagnostic small{font-size:13px}.button:hover:not(:disabled){background:var(--soft);border-color:var(--muted)}.button.action-create,.button.action-save,.button.action-submit,.button.primary{background:var(--brand-coral);color:#272b30;border-color:transparent}.button.action-view,.button.action-edit,.button.action-review,.button.action-upload,.button.action-invite{color:var(--info);background:var(--info-surface);border-color:transparent}.button.action-download,.button.action-run,.button.action-restore,.button.action-approve{color:var(--success);background:var(--positive-surface);border-color:transparent}.button.action-delete,.button.action-destroy,.button.destructive{color:var(--error);background:var(--error-surface);border-color:transparent}.button.action-create:hover:not(:disabled),.button.action-save:hover:not(:disabled),.button.action-submit:hover:not(:disabled),.button.primary:hover:not(:disabled){background:var(--accent-hover)}.button:active:not(:disabled){filter:brightness(.95);transform:none}.button:disabled,.icon-button:disabled{opacity:1;color:var(--muted);background:var(--soft);border-color:var(--line);cursor:not-allowed;filter:none}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:var(--text-base);line-height:1.5;color:var(--ink);background-color:var(--paper);border-color:var(--line);border-radius:8px;min-height:44px;box-shadow:none}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.field>label{font-size:var(--text-sm);font-weight:650}.field{gap:8px}.field-feedback{min-height:0}input:not([type=file]):disabled,textarea:disabled,select:disabled{opacity:1!important;background:var(--soft)!important;color:var(--muted)!important}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring)!important;outline-offset:3px}.field-error input,.field-error select,.field-error textarea,[aria-invalid=true]{border-color:var(--error)}.site-header{height:66px;background:var(--paper);box-shadow:none}.site-header .desktop-nav a{font-size:var(--text-sm);min-height:44px;display:flex;align-items:center}.site-header .desktop-nav a.active{background:var(--soft);font-weight:700}.site-header .brand img{object-fit:contain}.site-header .brand{flex-shrink:0}.footer-identity>div{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.app-version{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}.tabs button,.settings-sections button,.tabs-picker,.settings-section-picker{font-size:var(--text-sm);min-height:40px}.tabs{gap:4px}.tabs .selected{font-weight:700}.data-table,.data-table td,.data-table th{font-size:var(--text-sm);line-height:1.45}.data-table th{font-weight:700;color:var(--muted)}.data-table td,.data-table th{white-space:nowrap;max-width:340px;overflow:hidden;text-overflow:ellipsis}.data-table .button{min-height:36px;padding:6px 10px}.data-table tr:hover td{background:var(--soft)}.course-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:20px;align-items:stretch}.course-card{min-width:0;border:1px solid var(--line);background:var(--paper);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.course-card-image{width:100%;height:150px;object-fit:cover}.course-card-content{padding:22px;display:flex;flex-direction:column;gap:16px;flex:1}.course-card h2{font-size:1.375rem;margin:0;line-height:1.4}.course-card h2 a{color:var(--ink);text-decoration:none}.course-card h2 a:hover{text-decoration:underline}.course-card-status{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-xs);color:var(--muted)}.course-card-details{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:var(--text-sm)}.course-card-details dt{color:var(--muted)}.course-card-details dd{margin:0}.course-card-progress{display:grid;gap:8px;font-size:var(--text-sm)}.course-card progress{width:100%;height:5px;accent-color:var(--success)}.course-card-actions{display:flex;gap:8px;margin-top:auto;padding-top:4px;flex-wrap:wrap}.modal{border:1px solid var(--line);border-radius:12px;max-height:calc(100dvh - 32px);background:var(--paper);color:var(--ink)}.modal::backdrop{background:#10141b80}.modal h2{font-size:1.375rem}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.empty{padding:32px 16px}.empty-title{font-size:1.125rem;font-weight:700}.spin{animation:kompile-rotate .9s linear infinite}.skeleton{background:var(--soft);animation:kompile-pulse 1.5s ease-in-out infinite;border-radius:5px}.loading-brand{gap:12px;font-size:var(--text-sm)}.loading-brand:after{content:"";width:16px;height:16px;flex:none;border:2px solid var(--line);border-top-color:var(--muted);border-radius:50%;animation:kompile-rotate .9s linear infinite}.loading-state.initial{min-height:50dvh}.loading-state.initial:before,.loading-state.initial:after{display:none}@keyframes kompile-rotate{to{transform:rotate(360deg)}}@keyframes kompile-pulse{50%{opacity:.45}}.record-actions,.actions{align-items:center;gap:8px}.record-title{font-size:var(--text-base)}.breadcrumbs{font-size:var(--text-xs)}.management-list .record-actions .button{min-height:36px}.management-list .sortable-records .record{grid-template-columns:44px minmax(0,1fr) auto}.sort-handle{font-size:var(--text-sm)!important}.service-screen{max-width:620px;margin:auto;padding:32px 16px}.service-screen .actions{margin-top:24px}.connection-notice{padding:10px 20px;border-bottom:1px solid var(--line);color:var(--ink);font-weight:600;font-size:var(--text-sm);flex:none}.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px;margin:20px 0}.admin-metric{padding:16px;background:var(--paper);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px}.admin-metric strong{font-size:1.8125rem;font-variant-numeric:tabular-nums}.admin-metric span{font-size:var(--text-sm);color:var(--muted)}.activity-chart{display:grid;gap:10px;margin:20px 0}.activity-chart-row{display:grid;grid-template-columns:90px minmax(0,1fr) 40px;align-items:center;gap:12px;font-size:var(--text-sm)}.activity-chart-row meter{width:100%;height:12px;accent-color:var(--info)}.csv-format{margin-bottom:20px}.csv-format pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--soft);padding:16px;font-size:var(--text-xs);border-radius:8px}.moderator-courses{max-height:260px;overflow:auto}.system-subnav{margin-bottom:20px}.service-health{display:grid;gap:12px}.service-health .record{border:1px solid var(--line);border-radius:8px;padding:16px}.seb-password-fields .field>label,.seb-settings .seb-note,.seb-password-hint,.workspace-menu-context,.workspace-shortcuts,.settings-form small{font-size:var(--text-xs)!important}.workspace-context .workspace-save{font-size:var(--text-xs)}@media(max-width:999px){.header-inner{padding-inline:16px}.site-header .desktop-nav{display:none}.mobile-menu-button{display:flex}.header-actions{margin-left:auto}}@media(max-width:650px){h1{font-size:1.6875rem}.main-content{padding-inline:14px}.button{font-size:var(--text-sm);padding:9px 11px}.footer-identity>div{gap:6px}.university-attribution{font-size:.875rem}.site-header{height:60px}.page-title{margin-bottom:20px}.page-title h1{line-height:1.25}.field input,.field textarea,.field select{font-size:1.125rem!important}.field>label{font-size:var(--text-sm)!important}.field-feedback,.field small{font-size:var(--text-xs)!important}.seb-password-fields{grid-template-columns:1fr}.settings-sections{display:none}.settings-section-picker{display:grid}.settings-layout{display:block}.settings-fields{min-width:0}.management-list .sortable-records .record{grid-template-columns:36px minmax(0,1fr);gap:8px}.management-list .sortable-records .record-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}.management-list .sortable-records .record-title{font-size:var(--text-base)}.content-tools{gap:12px;flex-wrap:wrap}.modal{max-width:calc(100dvw - 24px);max-height:calc(100dvh - 24px)}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.course-card-content{padding:18px}.actions{flex-wrap:wrap}.workspace-actions{flex-wrap:nowrap}.data-table td{max-width:none}.record-main{min-width:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.loading-brand:after{border-top-color:var(--ink)}}@media(forced-colors:active){.button,input,select,textarea,.course-card{border:1px solid ButtonText}.skeleton{border:1px solid GrayText}}.system-toolbar{display:flex;align-items:flex-end;gap:12px;margin:12px 0 16px}@media(max-width:650px){.workspace>.quiet-compiler-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}.quiet-compiler-actions>.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.quiet-compiler-actions>.actions>.button{min-height:44px;height:44px;font-size:var(--text-sm)}.quiet-compiler-actions .tabs{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.quiet-compiler-actions .tabs button{font-size:var(--text-sm);min-width:0}}.breadcrumbs ol{flex:1}@media(max-width:650px){.site-header.public-header .mobile-menu-button{display:flex!important;width:36px;min-width:36px}.public-header .header-actions{gap:4px}}@media(max-width:360px){.site-header.public-header .brand{width:100px;min-width:100px}.site-header.public-header .brand img{max-width:100%}}.system-toolbar .field{width:220px;margin:0}.system-toolbar .button{flex:none}.admin-metrics{margin:16px 0}.admin-metric{padding:12px 14px}.admin-metric strong{font-size:1.5625rem}@media(max-width:650px){.system-toolbar .field{width:100%;min-width:0}.admin-metrics{gap:8px}.admin-metric{padding:10px 12px}}.alert{display:flex;align-items:flex-start;gap:10px;margin:14px 0;padding:0;border:0;background:none;box-shadow:none;color:var(--ink);font-size:var(--text-sm);font-weight:550;line-height:1.55}.alert>svg{flex:none;width:19px;height:19px;margin-top:2px;color:var(--accent)}.alert>div{flex:1;min-width:0}.alert.error,.alert.error>svg{color:var(--error)}.alert.success>svg{color:var(--success)}.alert.warning>svg{color:var(--warning)}.alert .button{flex:none;min-height:0;margin-top:-3px}@media(max-width:640px){.alert{flex-wrap:wrap}.alert .button{margin-left:29px}}.seb-icon{flex:none;display:block;object-fit:contain}.brand .brand-lockup{display:block;width:auto;height:38px;color:var(--ink)}.brand.compact .brand-lockup{height:36px}.aligned-table .data-table[data-layout=table]{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}.aligned-table [data-layout=table] th{background:var(--soft);border-bottom:1px solid var(--line)}.aligned-table [data-layout=table] th,.aligned-table [data-layout=table] td{border-right:1px solid var(--line)}.aligned-table [data-layout=table] th:last-child,.aligned-table [data-layout=table] td:last-child{border-right:0}.aligned-table [data-layout=table] td:last-child{padding-right:12px}.aligned-table [data-layout=table] tbody tr:last-child td{border-bottom:0}.data-table .table-number-cell{width:56px;text-align:center!important;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.aligned-table [data-layout=table] th.table-number-cell,.aligned-table [data-layout=table] td.table-number-cell{padding-inline:8px}.aligned-table [data-layout=rows] .table-number-cell{display:none}.aligned-table+.pager,.aligned-table>.pager,.pager{margin-top:12px;font-size:var(--text-sm)}.search-box{position:relative;display:flex;align-items:center;flex:1 1 280px;min-width:0;margin:0}.search-box>svg{position:absolute;left:12px;color:var(--muted);pointer-events:none}.search-box.search-box input[type=search]{width:100%;min-width:0;height:var(--control-height, 40px);min-height:var(--control-height, 40px);margin:0;padding:0 12px 0 40px;border:1px solid var(--line-strong, var(--line));border-radius:var(--radius);background:var(--paper);color:var(--ink);font-size:var(--text-sm);box-shadow:none}.search-box.search-box input[type=search]::-webkit-search-cancel-button{cursor:pointer}.search-box.search-box input[type=search]:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 25%,transparent);outline-offset:0}.people-toolbar .search-box{flex:0 1 420px}.password-strength{display:flex;align-items:center;gap:10px;margin:-6px 0 14px;color:var(--muted);font-size:var(--text-xs);font-weight:650}.password-strength-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;flex:1;max-width:220px}.password-strength-bar i{height:5px;border-radius:3px;background:var(--line)}.password-strength.level-1 .password-strength-bar i.on{background:var(--error)}.password-strength.level-2 .password-strength-bar i.on{background:var(--warning)}.password-strength.level-3 .password-strength-bar i.on,.password-strength.level-4 .password-strength-bar i.on{background:var(--success)}.password-strength.level-1{color:var(--error)}.open-link-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:32px;align-items:start;max-width:1080px}.open-link-main{display:grid;gap:14px;min-width:0}.open-link-row{max-width:none}.open-link-row input{flex:1;min-width:0}.open-link-note{margin:0;color:var(--muted);font-size:var(--text-sm)}.open-link-items h3{margin:6px 0 8px;font-size:var(--text-sm);color:var(--muted)}.open-link-items ol{margin:0;padding:0;list-style:none;max-height:232px;overflow:auto;border-top:1px solid var(--line);counter-reset:share}.open-link-items li{display:flex;align-items:center;gap:12px;min-height:46px;border-bottom:1px solid var(--line);counter-increment:share}.open-link-items li:before{content:counter(share);width:28px;color:var(--muted);font-weight:600;text-align:center;font-variant-numeric:tabular-nums}.open-link-items li a{flex:1;min-width:0;overflow:hidden;color:var(--ink);font-weight:600;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.open-link-items li a:hover{color:var(--accent)}.open-link-items li .button{min-height:32px}.open-link-qr{display:grid;justify-items:center;gap:10px;margin:0}.open-link-qr img,.open-link-qr-blank{display:block;width:220px;height:220px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.open-link-qr figcaption{color:var(--muted);font-size:var(--text-sm)}.open-link-layout.single{grid-template-columns:minmax(0,1fr);max-width:820px}.open-link-qr-dialog .modal-body{display:grid;justify-items:center;padding-bottom:8px}.open-link-qr-dialog .open-link-qr img,.open-link-qr-dialog .open-link-qr-blank{width:min(300px,70vw);height:min(300px,70vw)}@media(max-width:760px){.open-link-layout{grid-template-columns:1fr}}@media(max-width:520px){.open-link-items li .action-neutral .button-label{display:none}}.open-link-row{align-items:center;min-width:0}.open-link-row .button{flex:none}.open-link-row .open-link-url{display:block;flex:1;min-width:0;color:var(--accent);font-size:var(--text-base);font-weight:650;overflow-wrap:anywhere}.data-table td.name-cell .table-cell-line,.data-table td.name-cell .text-button{white-space:normal;overflow-wrap:anywhere}.data-table td.name-cell .text-button{display:inline;text-align:left}.submission-review .filter-bar.topic-review-filters{display:flex;flex-wrap:nowrap;gap:12px}.submission-review .filter-bar.topic-review-filters>input{flex:1 1 200px;width:auto}.submission-review .filter-bar.topic-review-filters>select{flex:0 1 190px;width:auto}@media(max-width:900px){.submission-review .filter-bar.topic-review-filters{flex-direction:row;flex-wrap:wrap;align-items:center}.submission-review .filter-bar.topic-review-filters>.review-switch{flex:1 1 100%}.submission-review .review-switch button{flex:1}.submission-review .filter-bar.topic-review-filters>input{flex:1 1 100%}.submission-review .filter-bar.topic-review-filters>select{flex:1 1 40%}.review-summary{flex-direction:column}.review-tools{align-items:stretch}.review-tool-buttons>*{flex:1}}.student-code{white-space:nowrap}.pager-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.pager-number{min-width:36px;height:36px;padding:0 8px;border:1px solid var(--control-line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer}.pager-number:hover{background:var(--hover)}.pager-number.is-current{background:var(--ink);border-color:var(--ink);color:var(--paper);cursor:default}.pager-gap{min-width:18px;text-align:center;color:var(--muted)}@media(max-width:650px){.pager{flex-wrap:wrap;justify-content:center;row-gap:8px}.pager-range{flex:1 1 100%;text-align:center}.pager-label{display:none}.pager-actions{flex:1 1 100%;justify-content:center}.pager-actions .button{min-width:36px;padding:0 8px}}.course-copy{display:flex;flex-direction:column;gap:14px}.course-copy-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-copy-list{max-height:max(132px,calc(100dvh - 600px));overflow-y:auto;border:1px solid var(--line);border-radius:8px}.course-copy-list>p{margin:0;padding:12px 14px}.course-copy-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer}.course-copy-item:last-child{border-bottom:0}.course-copy-item span{overflow-wrap:anywhere;font-weight:600}.course-copy-item small{color:var(--muted)}.result-stack{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px}.data-table td .paste-flag,.paste-flag{margin:0;color:var(--error);font-size:15px;font-weight:700}.paste-note{display:block;margin-top:6px;color:var(--error);font-weight:600}@media(max-width:650px){.question-title-row{flex-direction:column;align-items:stretch;gap:10px}.question-title-row .field,.question-title-row .field input{width:100%;max-width:none}.question-title-row>.button{align-self:flex-start}.notification-center .section-head .actions{flex-wrap:wrap}.notification-center .section-head .actions select{min-width:120px}.page-title .actions{flex-wrap:wrap}.page-title .actions>.button,.page-title .actions>a.button{flex:1 1 auto;min-width:fit-content}}@media(max-width:440px){.auth-identity-row{grid-template-columns:minmax(0,1fr)}}@media(max-width:440px){.guest-theme-panel{position:fixed;top:62px;right:12px}}.touch-keys{display:none}@media(pointer:coarse){.touch-keys{display:flex;flex:none;gap:6px;padding:8px 6px;overflow-x:auto;overscroll-behavior-x:contain;border-top:1px solid var(--line);background:var(--paper);scrollbar-width:none}.touch-keys::-webkit-scrollbar{display:none}.touch-key{flex:none;min-width:40px;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel, var(--paper));color:var(--ink);font-family:var(--editor-font-family, monospace);font-size:18px;font-weight:600;touch-action:manipulation}.touch-key-icon{display:inline-flex;align-items:center;justify-content:center;padding:0}.code-editor-frame:has(>.touch-keys)>.editor-zoom{bottom:68px}.touch-key:active{background:var(--line)}.workspace-shortcuts{display:none}.cm-panel.cm-search{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px}.cm-panel.cm-search input,.cm-panel.cm-search button{min-height:36px;font-size:16px}.cm-panel.cm-search input[name=search],.cm-panel.cm-search input[name=replace]{flex:1 1 100%;margin-right:36px}}.cm-panel.cm-search{background:var(--paper);color:var(--ink);border-top:1px solid var(--line);font-size:14px}.cm-panel.cm-search input.cm-textfield{border:1px solid var(--line);border-radius:8px;padding:0 10px;background:var(--paper);color:var(--ink)}.cm-panel.cm-search button.cm-button{border:1px solid var(--line);border-radius:8px;padding:0 12px;background:var(--paper);background-image:none;color:var(--ink);font-weight:600}.cm-panel.cm-search label{display:inline-flex;align-items:center;gap:4px}.cm-panel.cm-search button[name=close]{width:32px;height:32px;font-size:22px;color:var(--muted)}.select-search{position:fixed;z-index:calc(var(--layer-dialog) + 5);display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px #10151c33;overflow:hidden;font:450 16px/1.4 var(--font-sans)}.select-search-input{display:flex;align-items:center;gap:8px;padding:0 12px;border-bottom:1px solid var(--line);color:var(--muted);flex:0 0 auto}.select-search .select-search-input input[type=search]:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]){flex:1;min-width:0;border:0;border-radius:0;box-shadow:none;background:transparent;padding:12px 0;font-size:16px;outline:none}.select-search .select-search-input input[type=search]:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus{border:0;outline:none}.select-search-input:focus-within{color:var(--ink)}.select-search-list{overflow-y:auto;overscroll-behavior:contain;padding:6px;flex:1 1 auto;min-height:0}.select-search-list:focus,.select-search-list:focus-visible,.select-search .select-search-input input:focus-visible{outline:none!important}.select-search-group{padding:10px 10px 4px;font-size:13px;font-weight:650;color:var(--muted)}.select-search-option{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:8px 10px;border-radius:8px;cursor:pointer;overflow-wrap:anywhere}.select-search-option.active{background:var(--hover)}.select-search-option.selected{font-weight:650}.select-search-option.selected svg{color:var(--accent);flex:0 0 auto}.select-search-option[aria-disabled=true]{color:var(--muted);opacity:.6;cursor:default}.select-search-none{padding:12px 10px;color:var(--muted)}@media(max-width:650px){.select-search-option{min-height:44px}}.select-search-option.is-solved{color:var(--success)}@media(max-width:650px){.management-list .sortable-records .record:has(>.record-actions.compact){grid-template-columns:36px minmax(0,1fr) auto;align-items:center}.management-list .sortable-records .record-actions.compact{grid-column:3;flex-wrap:nowrap;gap:4px}.management-list .sortable-records .record-actions.compact .button{width:40px;min-width:40px;min-height:40px;padding:0;justify-content:center}.management-list .sortable-records .record-actions.compact .button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.button,.button:hover,.button:focus-visible,.icon-button:hover,.text-link:hover,.text-button:hover,.record-title:hover,.course-card h2 a:hover,.dashboard-tools>a:hover strong,.breadcrumbs li>a:hover,.desktop-nav a:hover,.account-dropdown a:hover,[role=tab]:hover{text-decoration:none}.text-link:hover,.text-button:hover,.record-title:hover,.course-card h2 a:hover,.breadcrumbs li>a:hover{color:var(--focus-ring)}.dashboard-tools>a:hover{border-color:var(--ink)}.about-credits{margin:0 0 var(--space-6)}.about-credits h2{font-size:1.25rem;font-weight:700;margin:0 0 var(--space-3)}.about-credits ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6)}.about-credits li{font-size:1.375rem;font-weight:650}.state-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:4px;font-size:.875rem;font-weight:600;white-space:nowrap;margin:0 6px 4px 0}.state-badge.is-good{background:var(--positive-surface);color:var(--success, var(--ink))}.state-badge.is-pending{background:var(--soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.state-badge.is-bad{background:var(--error-surface);color:var(--error)}.select-cell{width:44px}.select-cell input{width:18px;height:18px}.row-actions{white-space:nowrap;text-align:right}.row-actions .button+.button{margin-left:6px}.button.icon-only{min-width:var(--control-height);padding-inline:0;justify-content:center}.nowrap{white-space:nowrap}.account-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;flex:1 1 520px}.account-filters .account-search{flex:1 1 260px;min-width:0}.account-filters select{flex:0 1 200px}.activity-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3) var(--space-4);align-items:end;margin-bottom:var(--space-4)}.activity-filters .field{margin:0}.result-count{font-weight:600;color:var(--muted)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-bottom:var(--space-4)}.filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);font-weight:600;font-size:.9375rem}.filter-chip:hover{border-color:var(--ink)}.filter-chip span{font-size:1.125rem;line-height:1}.choice-list{border:0;margin:0 0 var(--space-4);padding:0;display:grid;gap:var(--space-2)}.choice-list legend{font-weight:700;margin-bottom:var(--space-2)}.choice{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.choice.selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.choice input{margin-top:4px;width:18px;height:18px}.choice span{display:grid;gap:2px}.choice small{color:var(--muted);font-size:.9375rem}.inline-field{display:flex;gap:var(--space-3);align-items:flex-end;margin-bottom:var(--space-4)}.inline-field .field{flex:1;margin:0}.password-table{width:100%;border-collapse:collapse;margin:var(--space-4) 0}.password-table th,.password-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}.password-table th{font-size:.875rem;font-weight:700;color:var(--muted)}.password-value{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--soft);color:var(--ink);padding:6px 10px}.password-value code{font-size:1.0625rem;font-weight:650;font-family:var(--font-code)}.password-value span{font-size:.8125rem;font-weight:700;color:var(--muted)}.password-value:hover{border-color:var(--ink)}.workspace{max-width:none;gap:10px}.workspace .workspace-breadcrumbs{margin:0}.workspace-top.quiet-workspace-top{display:flex;align-items:center;gap:12px;margin:0;min-height:48px}.workspace-top .workspace-context{margin-left:auto;display:flex;align-items:center;gap:12px}.workspace-run-actions{display:flex;gap:8px}.workspace-run-actions .button{min-height:42px;min-width:96px;font-size:1rem;font-weight:700}.ws-mobile-switch{display:none}.ws-layout{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 10px var(--ws-side, 520px);padding-bottom:14px}.ws-layout.ws-side-collapsed{grid-template-columns:minmax(0,1fr) 56px}.ws-layout.ws-side-collapsed .ws-side{margin-left:10px}.ws-code{min-width:0;min-height:0;display:flex;flex-direction:column}.ws-code>.project-editor{flex:1;min-height:0}.ws-resize{cursor:col-resize;position:relative;touch-action:none}.ws-resize:after{content:"";position:absolute;inset:0 4px;border-radius:2px;background:transparent;transition:background var(--motion)}.ws-resize:hover:after,.ws-resize:focus-visible:after,body.ws-resizing .ws-resize:after{background:var(--line)}body.ws-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.ws-side{min-width:0;min-height:0;display:flex;flex-direction:column;border:0;border-radius:0;background:transparent;overflow:hidden}.ws-side-bar{display:flex;align-items:center;justify-content:flex-end;padding:4px 6px;border-bottom:1px solid var(--line);flex:none}.ws-side-collapsed .ws-side-bar{flex-direction:column;justify-content:flex-start;border-bottom:0;gap:6px;height:100%}.ws-rail-item{writing-mode:vertical-rl;transform:rotate(180deg);border:0;background:none;color:var(--ink);font-weight:700;font-size:.9375rem;padding:12px 6px;border-radius:8px}.ws-rail-item:hover{background:var(--soft)}.ws-panels{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.ws-panel{display:flex;flex-direction:column;min-height:0;flex:0 0 auto;border:1px solid var(--line);border-radius:8px;background:var(--paper);overflow:hidden}.ws-panel:last-child{border-bottom:1px solid var(--line)}.ws-panel.open{flex:1 1 0;min-height:96px}.ws-panel[data-panel=input].open{flex:0 1 auto}.ws-panel-head{display:flex;align-items:center;gap:8px;padding:0 10px 0 4px;min-height:46px;flex:none;background:var(--paper)}.ws-panel-head h2{margin:0;flex:1;font-size:1.0625rem;font-weight:700}.ws-panel-head h2 button{display:flex;align-items:center;gap:6px;width:100%;min-height:44px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;padding:0 8px;border-radius:8px}.ws-panel-head h2 button:hover{background:var(--soft)}.ws-chevron{transition:transform var(--motion);flex:none}.ws-panel.open .ws-chevron{transform:rotate(90deg)}.ws-count{font-size:.8125rem;font-weight:700;min-width:22px;height:22px;padding:0 6px;border-radius:4px;background:var(--soft);display:inline-grid;place-items:center}.ws-panel-body{flex:1;min-height:0;overflow:auto;padding:4px 16px 16px;overscroll-behavior:contain}.ws-panel-body[hidden]{display:none}.ws-panel-body .prose{font-size:1.0625rem;line-height:1.6}.ws-sample+.ws-sample{margin-top:14px}.ws-sample h3{font-size:.9375rem;font-weight:700;margin:0 0 6px}.ws-sample-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.ws-sample-pair .output-box{margin:0;min-width:0}.ws-empty{margin:8px 0}.ws-panel-body .question-rules{margin-top:12px}@media(max-width:1000px){.ws-mobile-switch{display:flex;gap:4px;padding:4px;border-radius:10px;background:var(--soft)}.ws-mobile-switch button{flex:1;min-height:40px;border:0;border-radius:8px;background:none;color:var(--ink);font-weight:650}.ws-mobile-switch button[aria-selected=true]{background:var(--paper);box-shadow:var(--shadow-small)}.ws-layout,.ws-layout.ws-side-collapsed{grid-template-columns:minmax(0,1fr)}.ws-resize,.ws-side-bar,.ws-layout.ws-view-side .ws-code,.ws-layout.ws-view-code .ws-side,.ws-layout.ws-view-files .ws-side{display:none}.ws-layout.ws-side-collapsed .ws-side{margin:0}.workspace-top.quiet-workspace-top{flex-wrap:wrap}.workspace-run-actions .button{min-width:0}}.ws-side{align-self:stretch;height:auto;max-height:none;position:static}.ws-panel .output-box{border-radius:8px}.ws-panel .output-label{display:flex;align-items:center;gap:6px;min-height:38px;padding:2px 4px 2px 12px;font-size:.875rem;font-weight:700}.ws-panel .output-label>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-panel .output-label .actions{gap:2px;flex-wrap:nowrap}.ws-panel .output-label .button,.ws-panel .output-label .icon-button{min-height:32px;height:32px;min-width:32px;padding:0 6px;border:0;background:none}.ws-panel .output-label .button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ws-panel .output-box pre{margin:0;padding:8px 12px 10px;font-size:.9375rem;min-height:0;max-height:none}@media(max-width:1000px){.ws-hide-toggle{display:none}}.ws-layout{grid-template-rows:minmax(0,1fr);grid-template-areas:none}.ws-layout>.ws-code{grid-area:auto;grid-row:1;grid-column:1}.ws-layout>.ws-resize{grid-row:1;grid-column:2}.ws-layout>.ws-side{grid-row:1;grid-column:3}.ws-layout.ws-side-collapsed>.ws-side{grid-column:2}@media(max-width:1000px){.ws-layout>.ws-code,.ws-layout>.ws-side,.ws-layout.ws-side-collapsed>.ws-side{grid-column:1}}@media(max-width:1000px){.workspace-top .question-picker,.workspace-top .workspace-question-title{flex:1 1 100%}.workspace-top .question-picker select{width:100%}.workspace-top .workspace-context{flex:1 1 100%;margin-left:0}.workspace-top .workspace-run-actions{margin-left:auto}}.aligned-table [data-layout=table] .table-cell-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aligned-table [data-layout=table] .table-actions-cell .table-cell-line{white-space:nowrap}.aligned-table [data-layout=table] th,.aligned-table [data-layout=table] td{padding-top:12px;padding-bottom:12px;vertical-align:middle}.aligned-table [data-layout=table] td.table-actions-cell,.aligned-table [data-layout=table] td.select-cell{vertical-align:middle}.aligned-table .data-table thead th{font-size:.875rem;font-weight:700;color:var(--muted);text-transform:none;letter-spacing:0}.button[data-action]:not(.primary){color:var(--ink);background:var(--paper);border-color:var(--line)}.button.quiet[data-action]:not(.primary){background:transparent;border-color:transparent}.button[data-action]:not(.primary):hover:not(:disabled){background:var(--soft);border-color:var(--ink)}.button.quiet[data-action]:not(.primary):hover:not(:disabled){border-color:transparent}.button[data-action=delete]:not(.primary),.button[data-action=destroy]:not(.primary),.button.destructive:not(.primary){color:var(--error)}.button.primary{font-weight:700}.button:disabled,.button[data-action]:disabled{color:var(--muted);background:var(--soft);border-color:var(--line)}.eyebrow,.page-title .eyebrow{text-transform:none;letter-spacing:0;font-size:.9375rem;font-weight:600;color:var(--muted)}.main-content:not(.compiler-main):not(.auth-main){max-width:1440px}.sortable-records .record{padding-top:10px;padding-bottom:10px;min-height:0}.sortable-records .record .record-title{margin:0}@font-face{font-family:Kompile Plex;src:url(/fonts/kompile-plex-sans.woff2) format("woff2");font-style:normal;font-weight:100 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kompile Symbols;src:url(/fonts/jetbrains-mono-regular.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0023}:root{--font-sans: "Kompile Symbols", "Kompile Plex", "Segoe UI", system-ui, sans-serif}@font-face{font-family:Kompile Plex;src:url(/fonts/kompile-plex-sans-ext.woff2) format("woff2");font-style:normal;font-weight:100 700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kompile Plex;src:url(/fonts/kompile-plex-sans-italic.woff2) format("woff2");font-style:italic;font-weight:100 700;font-display:swap}@font-face{font-family:Kompile Plex Mono;src:url(/fonts/kompile-plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Kompile Plex Mono;src:url(/fonts/kompile-plex-mono-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Kompile Plex Mono;src:url(/fonts/kompile-plex-mono-600.woff2) format("woff2");font-weight:600 700;font-display:swap}:root{color:var(--ink);background:var(--page);font-family:var(--font-sans);font-size:17px;line-height:1.5}:root[data-theme=dark]{color-scheme:dark}html,body{background:var(--page);color:var(--ink);font-family:var(--font-sans)}body{font-weight:450;-webkit-font-smoothing:antialiased}::selection{background:var(--selection)}code,kbd,pre,samp,.mono{font-family:var(--font-code)}h1{font-size:var(--text-title);font-weight:650;letter-spacing:-.4px;line-height:1.2}h2{font-size:var(--text-lg);font-weight:620;letter-spacing:-.1px}h3{font-weight:600}:where(button,a,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}input:focus,select:focus,textarea:focus{outline:2px solid var(--focus-ring);outline-offset:-1px;border-color:var(--focus-ring)}.site-header{height:var(--header-height);min-height:var(--header-height);background:var(--paper);border-bottom:1px solid var(--line);box-shadow:none}.site-header .header-inner{height:var(--header-height);padding:0 24px;gap:24px}.brand,.site-header .brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink)}.site-header .brand.has-logo img{height:34px;width:auto}.site-header .desktop-nav{gap:2px;align-self:stretch;height:var(--header-height)}.site-header .desktop-nav a{height:var(--header-height);padding:0 14px;border-radius:0;background:transparent;color:var(--muted);font-size:16px;font-weight:560;box-shadow:inset 0 -3px 0 transparent}.site-header .desktop-nav a:hover{background:transparent;color:var(--ink);box-shadow:inset 0 -3px 0 var(--line)}.site-header .desktop-nav a.active,.site-header .desktop-nav a[aria-current=page]{border-radius:0;background:transparent;color:var(--ink);font-weight:650;box-shadow:inset 0 -3px 0 var(--accent)}.site-header .icon-button,.site-header .account-menu>summary{border-radius:var(--radius-sm)}.avatar{border-radius:var(--radius-sm)}.app-shell{height:100dvh}.main-content,.main-content:not(.compiler-main):not(.auth-main){max-width:none;padding:16px 24px}.main-content.compiler-main{padding:8px 16px 6px}.breadcrumbs,.page-breadcrumbs,.management-heading .breadcrumbs{min-height:28px;margin:0 0 4px;font-size:15px}.breadcrumbs .back-navigation{width:28px;height:28px;border-radius:var(--radius-sm)}.breadcrumbs li,.breadcrumbs li>a{font-weight:520}.page-title{align-items:center;gap:16px;margin:0 0 12px;min-height:44px}.page-title>div:first-child{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:14px;row-gap:2px;min-width:0}.page-title h1{margin:0;font-size:var(--text-title)}.page-title .page-description{margin:0;color:var(--muted);font-size:16px;font-weight:500}.page-title .actions{gap:8px;margin:0}.tabs,.tabs.many-tabs{gap:4px;padding:0;margin:0 0 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;width:100%}.tabs button,.tabs.many-tabs button{height:40px;min-height:40px;padding:0 12px;margin:0 0 -1px;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:16px;font-weight:560;box-shadow:inset 0 -2px 0 transparent}.tabs button:hover{background:transparent;color:var(--ink);box-shadow:inset 0 -2px 0 var(--line)}.tabs button.selected,.tabs button[aria-selected=true]{border:0;border-radius:0;background:transparent;color:var(--ink);font-weight:650;box-shadow:inset 0 -2px 0 var(--ink)}.tab-count,.ws-count{min-width:0;height:auto;padding:0 5px;margin-left:6px;border-radius:var(--radius-xs);background:var(--soft);color:var(--muted);font:500 13px/20px var(--font-sans)}.button,button.button,a.button,.file-button{min-height:var(--control-height);height:var(--control-height);padding:0 14px;gap:8px;border:1px solid var(--control-line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);font-size:16px;font-weight:600;box-shadow:none}.button:hover:not(:disabled),.button[data-action]:not(.primary):hover:not(:disabled){background:var(--soft);border-color:var(--control-line);color:var(--ink)}.button.primary,.button.primary[data-action],button.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-ink)}.button.quiet,.button.quiet[data-action]:not(.primary),.text-button{border-color:transparent;background:transparent}.button.quiet:hover:not(:disabled),.button.quiet[data-action]:not(.primary):hover:not(:disabled){background:var(--soft);border-color:transparent}.button.destructive:not(.primary),.button.danger:not(.primary){color:var(--error)}.button.danger.primary,.button.destructive.primary{background:var(--error);border-color:var(--error);color:#fff}.icon-button{border-radius:var(--radius-sm)}.icon-button:hover{background:var(--soft)}.data-table .button,.record-actions .button,.row-actions .button{height:34px;min-height:34px;padding:0 10px;font-size:15px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,select:not([multiple]):not([size]),textarea{border:1px solid var(--control-line);border-radius:var(--radius-sm);background-color:var(--paper);color:var(--ink);font-weight:450;box-shadow:none}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{height:var(--form-control-height);min-height:var(--form-control-height)}input::placeholder,textarea::placeholder{color:#77818d}input[type=checkbox],input[type=radio]{accent-color:var(--ink)}.field label,.field>label{font-size:15px;font-weight:600}.field-feedback small{color:var(--muted);font-size:14px}.card,.course-card,.panel,.form-section,.settings-card,.filter-panel,.library-filters,.modal,.dialog{box-shadow:none}.course-card,.card,.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.record{min-height:52px;padding:8px 12px;border-radius:0;border-bottom:1px solid var(--line);background:transparent}.record:hover,.sortable-records .record:hover{background:var(--hover)}.record-title,.record-main strong{font-size:17px;font-weight:600}.record-main small,.record-main p{color:var(--muted);font-size:15px}.data-table th,.aligned-table .data-table thead th{background:transparent;color:var(--muted);font-size:14px;font-weight:600;text-transform:none;letter-spacing:0;border-bottom:1px solid var(--control-line)}.data-table td{border-bottom:1px solid var(--line);font-size:16px}.data-table tbody tr:hover td{background:var(--hover)}.state-badge,.filter-chip,.status,.badge,.chip,.pill,.tag{border-radius:var(--radius-xs)}.notification-button span{border-radius:var(--radius-xs);background:var(--accent);color:var(--accent-ink);font-family:var(--font-sans)}.empty{padding:20px 0;border:0;border-radius:0;background:transparent;color:var(--muted);text-align:left}.empty .empty-title{margin:0;color:var(--muted);font-size:17px;font-weight:500}.empty p{margin:4px 0 0}.empty .button{margin-top:12px}.modal,.dialog,.account-dropdown,.menu,.toast{border-radius:var(--radius)}.account-dropdown,.toast{box-shadow:var(--shadow-menu)}.about-source,.credits-program{background:var(--code-surface)}.credits-program .puzzle-gap{border-style:solid}.record-main{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:12px;row-gap:0;min-width:0}.record-main>p,.record-main>small{margin:0}.record-index,.sortable-index,.record-number{font-family:var(--font-sans);font-weight:500;color:var(--muted)}.course-cards{gap:16px;align-items:start}.course-card-content{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:16px 18px}.course-card-content>.course-card-heading{order:0;margin:0;font-size:20px}.course-card-content>.course-card-status{order:1;margin:0;color:var(--muted);font-size:15px}.course-card-content>:not(.course-card-heading):not(.course-card-status){order:2;flex-basis:100%}.course-card .course-card-content{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px 16px}.course-card .course-card-content>*{grid-column:1 / -1}.course-card .course-card-content>.course-card-heading{grid-area:1 / 1}.course-card .course-card-content>.course-card-status{grid-area:1 / 2}.course-card .course-card-content>.course-card-actions{grid-area:1 / 3;margin:0;padding:0}@media(max-width:650px){.course-card .course-card-content{grid-template-columns:minmax(0,1fr) auto}.course-card .course-card-content>.course-card-actions{grid-area:auto / 1 / auto / -1;margin-top:6px}}.dashboard-tabs{margin-bottom:12px;border-bottom:1px solid var(--line)}.dashboard-tabs .tabs{border-bottom:0}.auth-main .screen-content{display:grid;align-content:center;min-height:100%}.auth-form{border-radius:var(--radius);box-shadow:none}.account-summary{display:inline-flex;flex-wrap:wrap;gap:4px 14px}.account-summary>span+span:before,.account-summary>span:first-child:before{content:none}.account-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;max-width:1080px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.account-section{display:grid;align-content:start;gap:14px;padding:20px 24px}.account-section+.account-section{border-left:1px solid var(--line)}.account-section h2{margin:0;font-size:18px}.account-section h2:not(:first-child){margin-top:6px;padding-top:16px;border-top:1px solid var(--line)}.account-section .photo-picker{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 14px}.account-section .photo-picker .photo-preview{grid-row:span 2;width:64px;height:64px}.account-section .photo-picker .actions{display:flex;gap:8px}.account-section .photo-picker .small{margin:0}.account-appearance{display:flex;align-items:end;gap:10px}.account-appearance .theme-control{display:grid;gap:6px;flex:1;margin:0;padding:0;border:0;background:none;font-weight:600}.button.primary:disabled,.button.primary[aria-disabled=true]{opacity:.45;cursor:not-allowed}.account-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:14px 24px;border-top:1px solid var(--line);background:var(--soft);border-radius:0 0 var(--radius) var(--radius)}.account-actions .alert{flex:1;margin:0}@media(max-width:860px){.account-form{grid-template-columns:1fr}.account-section+.account-section{border-left:0;border-top:1px solid var(--line)}}.record{min-height:48px;padding:5px 12px}.record .button,.record-actions .button{height:34px;min-height:34px;padding:0 10px;font-size:15px}.section-head.content-tools{min-height:40px;margin:0 0 4px}.session-list .record-main .session-page{font-size:14px}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 0;color:var(--muted);font-size:15px}.pager .button{height:34px;min-height:34px}.overview-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 28px;margin:0 0 14px;padding:0;border:0}.overview-line span{display:inline-flex;align-items:baseline;gap:6px;color:var(--muted)}.overview-line b{color:var(--ink);font:600 24px/1 var(--font-sans)}.overview-line .button{margin-left:auto}.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}.health-panel{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.health-panel h2{margin:0;font-size:18px}.health-panel .detail-list{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0}.health-panel .detail-list dt{color:var(--muted)}.health-panel .detail-list dd{margin:0;font-weight:550}.health-panel .actions{margin:auto 0 0}.health-panel .alert{margin:0}.mail-list{display:grid;margin:0;padding:0;list-style:none}.mail-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.mail-list li>span:first-child{display:grid;min-width:0}.mail-list b{font-weight:600}.mail-list small{color:var(--muted);font-size:14px;overflow-wrap:anywhere}.state-badge{padding:1px 8px;border:0;background:var(--soft);color:var(--muted);font-size:14px;font-weight:600}@media(max-width:1100px){.health-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.health-grid{grid-template-columns:1fr}}.management-list .record,.sortable-records .record,.record-list .record{min-height:48px;padding:5px 12px}.sortable-records .sort-handle{width:32px;height:32px;min-height:32px}.about-intro{margin:0 0 16px}.about-intro h1{margin:0 0 6px}.about-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;margin:0;color:var(--muted)}.about-version{padding:1px 8px;border-radius:var(--radius-xs);background:var(--soft);color:var(--ink);font:500 15px/1.6 var(--font-sans)}.about-note{margin:6px 0 0;color:var(--muted)}.exam-entry{padding:20px 22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.exam-entry h2{margin:0 0 8px}.exam-entry p{margin:0 0 6px;color:var(--muted)}.exam-entry .button{margin-top:10px}.university-email-address{min-height:var(--form-control-height);border:1px solid var(--control-line);border-radius:var(--radius-sm)}.university-email-address:focus-within{outline:2px solid var(--focus-ring);outline-offset:-1px}.university-email-address>input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]){height:calc(var(--form-control-height) - 2px);min-height:0;border:0;border-radius:0;outline:0}.university-email-address>span{padding-right:12px;color:var(--muted);font-family:var(--font-sans);font-size:15px}progress{height:6px;border:0;border-radius:3px;background:var(--soft);accent-color:var(--success);overflow:hidden}progress::-webkit-progress-bar{background:var(--soft)}progress::-webkit-progress-value{background:var(--success)}progress::-moz-progress-bar{background:var(--success)}.catalog-controls.catalog-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 220px 180px;gap:8px;margin:0 0 12px;padding:0;border:0;background:transparent}@media(max-width:720px){.catalog-controls.catalog-toolbar{grid-template-columns:1fr 1fr}}.aligned-table [data-layout=table] th,.aligned-table [data-layout=table] td{padding:10px 12px}.aligned-table [data-layout=table] th:first-child,.aligned-table [data-layout=table] td:first-child{padding-left:12px}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.student-view-bar{position:fixed;top:62px;right:16px;z-index:60;display:flex;align-items:center;gap:12px;padding:3px 3px 3px 14px;border-radius:var(--radius);background:var(--ink);color:var(--paper);font-weight:600;font-size:14px}.student-view-bar .button{min-height:30px;padding-inline:12px;border-radius:var(--radius-sm);font-size:14px}.project-policy{grid-template-columns:220px 180px max-content max-content;justify-content:start;align-items:end;gap:var(--space-4) var(--space-5);padding-block:var(--space-3)}.project-policy .field{margin:0}.policy-group{display:grid;gap:8px}.policy-label{font-weight:600;font-size:var(--text-sm);color:var(--ink)}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.toggle-chip{min-height:var(--form-control-height);padding:0 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--muted);font:600 15px/1 var(--font-sans);cursor:pointer}.toggle-chip.is-code{font-family:var(--font-code)}.toggle-chip:hover{background:var(--hover)}.toggle-chip.is-on{border-color:var(--ink);background:var(--ink);color:var(--paper)}.toggle-chip:disabled{cursor:default}@media(max-width:900px){.project-policy{grid-template-columns:1fr 1fr}}.ws-panel .output-box,.output-box{padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden;min-width:0}.output-box .output-label{display:flex;align-items:center;justify-content:space-between;min-height:34px;margin:0;padding:2px 6px 2px 12px;border-bottom:1px solid var(--line);background:var(--soft);color:var(--muted);font-size:var(--text-xs);font-weight:600}.ws-panel .output-box pre,.output-box pre{margin:0;padding:10px 12px;min-height:44px;max-height:220px;overflow:auto;border:0;border-radius:0;background:var(--paper);color:var(--ink);font:500 15px/1.6 var(--font-code);white-space:pre;tab-size:4}textarea.code-input{font:500 15px/1.6 var(--font-code);white-space:pre;tab-size:4}.credits-puzzle .about-source,.credits-puzzle .credits-program{background:var(--code-bg);color:var(--code-fg);border-color:var(--line)}.credits-puzzle .about-source-head{border-bottom-color:var(--line);color:var(--code-fg);font-family:var(--code-font)}.credits-puzzle .credits-program,.credits-puzzle .puzzle-token,.puzzle-drag-preview{font-family:var(--code-font)}.credits-puzzle .puzzle-tray .puzzle-token,.puzzle-drag-preview{background:var(--code-bg);color:var(--code-fg);border:1px solid var(--line)}.credits-puzzle .puzzle-tray .puzzle-token:hover{border-color:var(--code-muted)}.credits-puzzle .puzzle-tray .puzzle-token.selected{outline:2px solid var(--accent);outline-offset:1px}.credits-puzzle .puzzle-gap{background:var(--code-line);color:var(--code-fg);border-color:var(--code-muted)}.credits-puzzle .tok-meta,.credits-puzzle .tok-processingInstruction,.puzzle-drag-preview .tok-meta{color:var(--syntax-meta)}.credits-puzzle .about-source,.credits-puzzle .credits-program,.credits-puzzle .puzzle-tray{--syntax-keyword: inherit;--syntax-type: inherit;--syntax-string: inherit;--syntax-number: inherit;--syntax-comment: inherit}.output-box .output-label button{background:transparent}.people-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.people-toolbar select{width:auto;min-width:150px}.people-toolbar .actions{margin-left:auto}.people-table tbody tr.people-row{cursor:pointer}.people-table tbody tr.people-row:hover,.people-table tbody tr.people-row:focus-visible{background:var(--hover)}.data-table.people-table td,.data-table.people-table th{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.people-table .state-badge+.state-badge,.people-table td>.state-badge{margin-left:6px}.person-facts{display:grid;grid-template-columns:max-content 1fr;gap:8px 20px;margin:0 0 16px}.person-facts dt{color:var(--muted);font-weight:600}.person-facts dd{margin:0;overflow-wrap:anywhere}.person-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:14px;border-top:1px solid var(--line)}.permission-grid{display:block;margin:4px 0 16px;padding:0;border:0}.permission-grid legend{margin-bottom:6px;font-weight:600}.aligned-table .people-table[data-layout=table] .table-cell-line,.people-table .table-cell-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}.aligned-table .people-table[data-layout=table] td,.people-table td{padding-top:11px;padding-bottom:11px;vertical-align:middle}.modal.wide .form-pair{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.people-table .state-badge+.state-badge,.people-table td[data-label=Role] .state-badge{margin-left:8px}.ws-panel[data-panel=problem] .ws-panel-body{overflow:auto;padding-bottom:12px}.ws-problem{min-height:0}.ws-problem-text{overflow:visible}.ws-problem .ws-problem-foot{margin-top:12px}.ws-problem-foot{display:flex;flex:none;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-top:auto;padding-top:8px}.ws-problem-foot .question-rules{margin:0;padding:0;border:0}.ws-read-more{border:0;background:none;padding:4px 0;color:var(--ink);font:700 15px/1.2 var(--font-sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.ws-read-more:hover{color:var(--muted)}.ws-panel[data-panel=samples].open{flex:0 0 auto;min-height:0;max-height:55%}.ws-panel[data-panel=samples] .ws-panel-body{overflow:auto}.ws-sample-tabs{display:flex;gap:4px;margin-bottom:8px;overflow-x:auto;scrollbar-width:none}.ws-sample-tabs::-webkit-scrollbar{display:none}.ws-sample-tabs button{flex:none;white-space:nowrap;min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--muted);font:600 14px/1 var(--font-sans);cursor:pointer}.ws-sample-tabs button.is-on{border-color:var(--ink);background:var(--ink);color:var(--paper)}.ws-panel .output-box pre{max-height:96px;overflow:hidden}.ws-panel[data-panel=problem].open{flex:0 1 auto}.code-editor-frame{position:relative}.editor-zoom{position:absolute;right:12px;bottom:10px;z-index:5;display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--paper);opacity:.7;transition:opacity var(--motion)}.code-editor-frame:hover .editor-zoom,.editor-zoom:focus-within{opacity:1}.editor-zoom button{display:grid;place-items:center;min-width:30px;height:28px;padding:0 6px;border:0;background:none;color:var(--ink);font:600 13px/1 var(--font-sans);cursor:pointer}.editor-zoom button:hover:not(:disabled){background:var(--hover)}.editor-zoom button:disabled{color:var(--muted);cursor:default}.editor-zoom .editor-zoom-size{min-width:34px;border-inline:1px solid var(--line)}.content-panel>.screen-viewport>.screen-content:has(>.fit-page){display:flex;flex-direction:column;height:100%;padding-bottom:16px}.fit-page{display:flex;flex:1;flex-direction:column;min-height:0}.fit-page>*{flex:none}.question-page>.question-form,.question-page>.question-project-settings,.question-page>.reference-section{display:flex;flex:1 1 0;flex-direction:column;min-height:0}.question-title-row{display:flex;align-items:end;gap:16px;max-width:1100px}.question-title-row .field{flex:1;margin:0}.question-page .question-form>[data-field="Problem statement"]{display:flex;flex:1 1 0;flex-direction:column;min-height:0;max-width:1100px;margin:16px 0 0}.question-page [data-field="Problem statement"]>.field-control,.question-page [data-field="Problem statement"] .rich-editor{display:flex;flex:1 1 0;flex-direction:column;min-height:0}.question-page [data-field="Problem statement"] .rich-surface{flex:1 1 0;min-height:180px;max-height:none;overflow-y:auto}.fit-page .project-editor{flex:1 1 0;min-height:0;height:auto}.fit-page .project-editor{grid-template-rows:minmax(0,1fr)}.fit-page .project-editor .project-files{min-height:0;overflow:hidden}.fit-page .project-code{display:flex;flex-direction:column;min-height:0}.fit-page .project-code>*{flex:none}.fit-page .project-code>.code-editor-frame{flex:1 1 0;height:auto;min-height:0}.question-page .reference-section>p{margin:4px 0 12px}.question-page .reference-section>.actions{margin-top:12px}.question-page .project-policy{grid-template-columns:200px 160px max-content max-content max-content}.question-page>.settings-form{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:0 40px;max-width:1200px}.question-page>.settings-form>.form-section{display:block;padding-block:16px 0;border:0}.question-page>.settings-form .form-heading{margin-bottom:8px}.question-page>.settings-form .form-heading h2{margin:0;font-size:1.125rem}.question-page>.settings-form .form-heading p{margin:2px 0 0}.question-page>.settings-form .field{margin-bottom:12px}.question-page>.settings-form .check-field{padding:6px 0;margin:0}.question-page>.settings-form .check-field small{font-size:14px;line-height:1.4}.submission-page>.submission-layout{display:grid;flex:1 1 0;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:24px;min-height:0}.submission-page .submission-code,.submission-page .submission-result{align-self:stretch;height:auto;max-height:none}.submission-page .submission-code{position:static;display:flex;flex-direction:column;min-height:0}.submission-page .submission-code .project-editor{grid-template-columns:minmax(130px,170px) minmax(0,1fr)}.submission-page .submission-result{display:flex;flex-direction:column;min-height:0;margin:0}.submission-page .submission-result>.tabs,.submission-page .submission-result>.section-head{flex:none;margin-top:0}.submission-page .submission-result>:not(.tabs):not(.section-head):not(.tabs-picker){flex:1 1 0;min-height:0;overflow-y:auto}@media(max-width:900px){.submission-page>.submission-layout{flex:none;grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.submission-page .submission-code .project-editor{flex:none}.submission-page .submission-code .project-code{height:360px}.submission-page .submission-result>:not(.tabs):not(.section-head):not(.tabs-picker){flex:none;overflow:visible}}.submission-page .review-pane{padding-top:12px}.submission-page .review-pane textarea{min-height:110px}.submission-page .review-pane>p:first-child{margin-top:0}.submission-page .review-pane .button[type=submit]{margin-top:8px}.ws-panel[data-panel=result] .ws-panel-body{display:flex;flex-direction:column;overflow:hidden}.ws-panel[data-panel=result] .ws-panel-body>:not(.ws-output){flex:none}.ws-output{display:flex;flex:1;flex-direction:column;min-height:0}.ws-output-body{flex:1 1 0;min-height:0;overflow:hidden}.screen-viewport,.ws-panel-body,.ws-output-body,.ws-problem-text{position:relative}.ws-panel[data-panel=result].open:has(.ws-output){flex:1.5 1 0;min-height:176px}.ws-panel[data-panel=problem].open{min-height:160px}.exam-room{display:flex;flex-direction:column;gap:12px;min-height:0}.exam-room-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.exam-room-summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-4);margin-right:auto}.room-quit{display:inline-flex}.exam-room-summary strong{font-size:1.05rem}.exam-room-summary span{color:var(--muted)}.exam-room-time{display:flex;align-items:center;gap:8px}.exam-room-time label{display:flex;align-items:center;gap:8px;font-weight:600;white-space:nowrap}.exam-room .exam-room-time input[type=number]{flex:0 0 84px;width:84px;min-width:84px;padding:0 10px}.exam-room-table td:first-child,.exam-room-table th:first-child{width:36px}.exam-waiting{text-align:center}.account-gate.exam-waiting .exam-waiting-clock{font-size:3.5rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text, inherit);margin:8px 0 12px}.workspace-clock.paused,.workspace-clock.offline{color:var(--warning, #9a6700)}.record-warning{color:var(--warning);font-weight:700}.dashboard-layout:has(.teaching-desk){display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}.teaching-desk{display:grid;gap:6px;padding-left:32px;border-left:1px solid var(--line);min-width:0}.teaching-desk h2{margin:0 0 6px;font-size:22px}.teaching-desk h3{margin:14px 0 2px;font-size:15px;font-weight:700;color:var(--muted)}.desk-line{display:grid;grid-template-columns:56px 1fr;align-items:baseline;gap:10px;padding:6px 0;color:var(--ink);text-decoration:none}.desk-line strong{font-size:28px;line-height:1;font-variant-numeric:tabular-nums;color:var(--accent)}.desk-line span{font-size:16px}.desk-row{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;min-width:0}.desk-row b{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-row span{font-size:14px;color:var(--muted)}.desk-line:hover span,.desk-row:hover b{color:var(--accent)}.desk-none{margin:0;font-size:15px;color:var(--muted)}@media(max-width:900px){.dashboard-layout:has(.teaching-desk){grid-template-columns:minmax(0,1fr)}.teaching-desk{padding:16px 0 0;border-left:0;border-top:1px solid var(--line)}}@media(max-width:650px){.section-head{flex-wrap:wrap;gap:8px}.section-head>h2{min-width:0;flex:1 1 100%}.data-table td small,.data-table td .muted{white-space:normal;overflow-wrap:anywhere}}@media(pointer:coarse),(max-width:650px){.editor-zoom button,.table-row-details.icon-button{min-width:40px;min-height:40px}}.student-view-bar{padding-left:2px;gap:8px;-webkit-user-select:none;user-select:none}.student-view-bar.is-placed{right:auto}.student-view-grip{display:grid;place-items:center;width:26px;height:30px;padding:0;border:0;border-radius:var(--radius-sm);background:none;color:inherit;cursor:grab;touch-action:none}.student-view-grip:active{cursor:grabbing}.ws-custom .code-input{display:block;width:100%;min-height:64px;height:64px;margin:0;padding:8px 12px;border:0;border-radius:0;background:var(--paper);resize:vertical;font:500 15px/1.6 var(--font-code)}.ws-custom-run{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:8px}.ws-custom-run p{margin:0;color:var(--muted);font-size:var(--text-sm);line-height:1.5}.private-compiler-settings{display:grid;gap:14px;margin:16px 0 24px}.private-compiler-settings>.button{justify-self:start}.private-compiler-settings h3,.private-compiler-settings p{margin:0}.backup-policy{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:8px 0 20px}.backup-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;font-weight:550}.backup-line input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--accent)}.backup-line.backup-line input[type=number]{flex:none;width:76px;min-height:var(--control-height);text-align:center}.backup-policy p{flex-basis:100%;margin:0}.aligned-table .data-table[data-layout=rows] .table-number-cell{display:none}.project-file-actions{margin-left:auto;display:flex;align-items:center}.project-file-actions+.icon-button{margin-left:0}.project-file-bar .workspace-run-actions .button{min-height:38px;min-width:92px}.button.run.action-run{border-color:var(--run);background:var(--run);color:var(--run-ink)}.button.run.action-run:hover:not(:disabled),.button.run.action-run:focus-visible{border-color:var(--run-hover);background:var(--run-hover);color:var(--run-ink)}@media(max-width:650px){.project-file-bar .workspace-run-actions .button{min-width:0;padding-inline:12px}}.workspace-solved{display:inline-flex;align-items:center;gap:6px;color:var(--run);font-size:15px;font-weight:700}.workspace-starter-old{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:15px;font-weight:700}.question-picker.is-solved{position:relative}.question-picker.is-solved>svg{position:absolute;top:50%;left:10px;transform:translateY(-50%);color:var(--run);pointer-events:none}.question-picker.is-solved select{padding-left:34px;background:var(--positive-surface);border-color:var(--run);color:var(--run);font-weight:600}.question-picker option.is-solved{background:var(--positive-surface);color:var(--run);font-weight:600}.question-picker option.is-solved::checkmark{color:var(--run)}.workspace-question-title.is-solved{color:var(--run)}.button.workspace-next-question{background:var(--run);border-color:var(--run);color:var(--run-ink);white-space:nowrap}.button.workspace-next-question:hover{background:var(--run-hover);border-color:var(--run-hover);color:var(--run-ink)}.ws-console-toolbar .workspace-next-question{margin-left:auto}.console-window-foot{display:flex;align-items:center;justify-content:space-between;flex:none;gap:10px;padding:10px 16px;border-top:1px solid var(--line);background:var(--paper)}.console-window-foot .workspace-solved{color:#8fe0ad;font-size:13px}.console-window-foot .workspace-next-question{font-size:13px;min-height:34px;padding:6px 10px}.solved-banner{display:flex;align-items:center;gap:14px;margin-top:14px;padding:16px 0;border-top:1px solid var(--line)}.solved-banner>div{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.solved-banner>div>b{font-size:18px;color:var(--ink)}.solved-banner span{color:var(--muted);font-size:15px}.solved-banner .next-question{padding:0}.solved-mark{flex:none;color:var(--run);animation:solved-pop .45s cubic-bezier(.2,1.4,.4,1) both}@keyframes solved-pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.solved-mark{animation:none}}.site-footer{flex:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:600}.site-footer-made{display:inline-flex;align-items:center;gap:6px}.site-footer-made img{display:block}.site-footer a{color:var(--ink);text-decoration:none}.site-footer a:hover{color:var(--accent)}@media print{.site-footer{display:none}}.ws-output-body{min-height:64px}.ws-problem-foot .next-question{padding:0}.ws-output{min-height:64px}.ws-panel[data-panel=result] .solved-banner{margin-top:4px;padding:12px 0;border-top:0}.header-inner>.brand,.header-inner>a:first-child{flex:none}@media(max-width:430px){.exam-mode-label{font-size:0;gap:0}}.output-diff{display:flex;flex-direction:column;gap:8px;margin:8px 0}.output-diff-summary{margin:0;font-weight:650}.output-diff-scroll{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:8px}.output-diff table{width:100%;border-collapse:collapse;table-layout:fixed;font-family:var(--font-code);font-size:13.5px}.output-diff th{position:sticky;top:0;padding:8px 10px;background:var(--paper);border-bottom:1px solid var(--line);font-family:var(--font-sans);font-size:13px;font-weight:650;text-align:left;color:var(--muted)}.output-diff th:first-child,.output-diff td:first-child{width:52px;color:var(--muted);text-align:right}.output-diff td{padding:4px 10px;border-bottom:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;vertical-align:top}.output-diff tr:last-child td{border-bottom:0}.output-diff td.is-diff{box-shadow:inset 2px 0 0 var(--ink);font-weight:650;color:var(--ink)}.output-diff .diff-from{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.project-editor-window{position:relative;inset:auto;display:flex;flex:1 1 0;flex-direction:column;min-width:0;min-height:0;width:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;color:var(--ink);background:var(--paper)}.project-editor-window:not([open]){display:none}.project-editor-window-head{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid var(--line)}.project-editor-window-head h3{margin:0;font-size:15px}.project-editor-window.is-expanded{position:fixed;inset:0;width:min(1440px,calc(100vw - 64px));height:min(1000px,calc(100dvh - 64px));max-height:calc(100dvh - 64px);box-shadow:0 24px 90px #00000073;animation:none;margin:auto;border:1px solid var(--line);border-radius:12px;overflow:hidden}.project-editor-window::backdrop{background:#000000a6}.project-editor-window>.project-editor{flex:1;min-height:0}.project-editor-window .project-code{min-height:0;display:flex;flex-direction:column}.project-editor-window .code-editor-frame{flex:1;min-height:0;overflow:hidden}.project-editor-window .code-editor{height:100%;min-height:0!important}.project-editor-window .cm-editor{height:100%}.project-editor-window .cm-scroller{overflow:auto}.output-none{color:var(--muted);font-family:var(--font-sans);font-style:italic;font-weight:400}.output-diff .diff-none{font-family:var(--font-sans);font-style:italic;font-weight:500;color:var(--muted)}.output-diff-copy{display:flex;flex-wrap:wrap;gap:8px}.limit-panel{display:grid;gap:12px}.limit-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.limit-head h2,.limit-head p{margin:0}.limit-head p{margin-top:4px}.limit-settings select{width:auto}.limit-result{display:grid;gap:8px}.limit-body{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,1fr);gap:16px;align-items:start}@media(max-width:1100px){.limit-body{grid-template-columns:minmax(0,1fr)}}.limit-result-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.limit-result h3{margin:0}.env-lines{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-code);font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.load-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.question-page:has(>.question-form),.question-page>.question-form,.question-page .question-form>[data-field="Problem statement"],.question-page [data-field="Problem statement"]>.field-control{min-height:auto}.question-page [data-field="Problem statement"] .rich-editor{min-height:240px}.kterm-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:16px;background:#0a0e169e}.kterm-choice{width:min(560px,100%);padding:20px 22px 22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink)}.kterm-choice-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.kterm-choice-head h2{margin:0;font-size:20px}.kterm-choice-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kterm-option{display:grid;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);text-align:left;cursor:pointer}.kterm-option:hover,.kterm-option:focus-visible{border-color:var(--accent)}.kterm-option-screen{display:block;height:86px;padding:10px;border-radius:6px;font:14px/1.4 var(--font-code);overflow:hidden}.kterm-option-ubuntu .kterm-option-screen{background:#300a24;color:#fff}.kterm-option-ubuntu b{color:#8ae234}.kterm-option-ubuntu i{color:#729fcf;font-style:normal}.kterm-option-windows .kterm-option-screen{background:#0c0c0c;color:#ccc}.kterm-option-android .kterm-option-screen{background:#000;color:#f5f5f5}.kterm-option-android i{color:#4ec9b0;font-style:normal}.kterm-option-ios .kterm-option-screen{background:#000;color:#f2f2f7}.kterm-option-ios b{color:#30d158}.kterm-option-label{font-size:17px;font-weight:700}.kterm{display:flex;flex-direction:column;width:min(900px,100%);height:min(600px,calc(100vh - 32px));height:min(600px,calc(100dvh - 32px));overflow:hidden;border-radius:10px;box-shadow:0 18px 50px #00000073}.kterm-bar{display:flex;flex:none;align-items:center;min-height:38px;-webkit-user-select:none;user-select:none}.kterm-controls{display:flex;align-items:center;margin-left:auto}.kterm-controls>*{display:grid;place-items:center;border:0;background:none;color:inherit;padding:0}.kterm-screen{flex:1;min-height:0;padding:12px 16px 16px;overflow-y:auto;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.kterm-line{min-height:1.45em}.kterm-art{min-height:0;white-space:pre;line-height:1.05;overflow-wrap:normal}.kterm-ink-t{color:#2bb3a3}.kterm-ink-g{color:#d9a650}.kterm-ink-b{color:#5b95f5}.kterm-strong{font-weight:700}.kterm-caret{display:inline-block;width:.6em;height:1.1em;margin-left:1px;vertical-align:text-bottom;background:currentColor;animation:kterm-blink 1s steps(1) infinite}@keyframes kterm-blink{50%{opacity:0}}.kterm-input{display:flex}.kterm-typed{position:relative;flex:1;min-width:0;white-space:pre;overflow:hidden}.kterm-caret-idle{opacity:.35;animation:none}.kterm-typed:focus-within .kterm-caret-idle{opacity:1;animation:kterm-blink 1s steps(1) infinite}.kterm .kterm-screen input.kterm-field:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),.kterm .kterm-screen input.kterm-field:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus,.kterm .kterm-screen input.kterm-field:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):hover{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:transparent;font:inherit;caret-color:transparent;box-shadow:none;outline:none!important;-webkit-text-fill-color:transparent}.kterm .kterm-screen input.kterm-field::selection{background:transparent;color:transparent}.kterm-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 24px;margin:4px 0 8px}.kterm-menu button,.kterm-columns span{display:flex;gap:12px;padding:2px 6px;border:0;border-radius:3px;background:none;color:inherit;font:inherit;text-align:left;white-space:nowrap;cursor:pointer}.kterm-command-name{min-width:9ch;font-weight:700}.kterm-command-note{opacity:.72;overflow:hidden;text-overflow:ellipsis}.kterm-columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(16ch,1fr));margin:2px 0 6px}.kterm-columns span{cursor:default;padding:0}.kterm-ubuntu{background:#300a24;color:#fff;font-family:"Ubuntu Mono",var(--font-code)}.kterm-ubuntu .kterm-bar{justify-content:center;padding:0 8px 0 16px;background:#2c2c2c;color:#f2f2f2;font:600 14px/1 var(--font-sans, system-ui),sans-serif}.kterm-ubuntu .kterm-title{position:absolute;left:50%;transform:translate(-50%)}.kterm-ubuntu .kterm-bar{position:relative}.kterm-ubuntu .kterm-controls{gap:10px}.kterm-ubuntu .kterm-controls>*{width:22px;height:22px;border-radius:50%;background:#444}.kterm-ubuntu .kterm-controls button{background:#e95420;color:#fff;cursor:pointer}.kterm-ubuntu .kterm-user,.kterm-ubuntu .kterm-ok{color:#8ae234;font-weight:700}.kterm-ubuntu .kterm-path{color:#729fcf;font-weight:700}.kterm-ubuntu .kterm-warn{color:#fce94f}.kterm-ubuntu .kterm-menu button:hover,.kterm-ubuntu .kterm-menu button:focus-visible{background:#5e2750}.kterm-windows{background:#0c0c0c;color:#ccc;font-family:var(--font-code)}.kterm-windows .kterm-bar{align-items:stretch;min-height:40px;padding-left:8px;background:#202020;color:#fff;font:13px/1 Segoe UI,system-ui,sans-serif}.kterm-windows .kterm-tab{align-self:end;padding:10px 16px;border-radius:6px 6px 0 0;background:#0c0c0c}.kterm-windows .kterm-controls>*{width:46px;height:100%}.kterm-windows .kterm-controls button{cursor:pointer}.kterm-windows .kterm-controls button:hover{background:#c42b1c}.kterm-windows .kterm-ok{color:#16c60c}.kterm-windows .kterm-warn{color:#f9f1a5}.kterm-windows .kterm-error{color:#e74856}.kterm-windows .kterm-menu button:hover,.kterm-windows .kterm-menu button:focus-visible{background:#2a2a2a}.kterm-phone-backdrop{padding:0;background:#000}.kterm.kterm-phone{width:100%;height:100vh;height:100dvh;border-radius:0;box-shadow:none}.kterm-status{display:flex;flex:none;align-items:center;justify-content:space-between;padding:max(8px,env(safe-area-inset-top)) 22px 6px;font:600 15px/1 system-ui,sans-serif}.kterm-status-icons{display:flex;align-items:center;gap:6px}.kterm-home{flex:none;width:120px;height:5px;margin:8px auto max(8px,env(safe-area-inset-bottom));border-radius:3px;background:currentColor;opacity:.55}.kterm-phone .kterm-bar{gap:8px;min-height:48px;padding:0 12px;font:600 17px/1 system-ui,sans-serif}.kterm-phone .kterm-bar button{border:0;background:none;color:inherit;font:inherit;cursor:pointer}.kterm-phone .kterm-screen{padding:10px 12px;font-size:13px}.kterm-phone .kterm-art{font-size:10px}.kterm-phone .kterm-menu{grid-template-columns:1fr}.kterm-phone .kterm-menu button{padding:7px 6px}.kterm-android{background:#000;color:#f5f5f5;font-family:"Roboto Mono","DejaVu Sans Mono",var(--font-code)}.kterm-android .kterm-bar{background:#1f1f1f}.kterm-android .kterm-back{display:grid;place-items:center;width:40px;height:40px;border-radius:50%}.kterm-android .kterm-title{font:500 19px/1 Roboto,system-ui,sans-serif}.kterm-android .kterm-home{width:96px;height:4px}.kterm-android .kterm-path,.kterm-android .kterm-ok{color:#4ec9b0;font-weight:700}.kterm-android .kterm-warn{color:#f9f1a5}.kterm-android .kterm-menu button:active{background:#262626}.kterm-ios{background:#000;color:#f2f2f7;font-family:var(--font-code)}.kterm-ios .kterm-bar{position:relative;justify-content:center;border-bottom:1px solid #2c2c2e;background:#1c1c1e}.kterm-ios .kterm-done{position:absolute;left:12px;color:#0a84ff;font-weight:400}.kterm-ios .kterm-path,.kterm-ios .kterm-ok{color:#30d158;font-weight:700}.kterm-ios .kterm-warn{color:#ffd60a}.kterm-ios .kterm-menu button:active{background:#2c2c2e}@media(max-width:640px){.kterm-backdrop{padding:8px}.kterm-backdrop.kterm-phone-backdrop{padding:0}.kterm{height:calc(100dvh - 16px)}.kterm-screen{padding:10px;font-size:13px}.kterm-art{font-size:9px}.kterm-menu,.kterm-choice-options{grid-template-columns:1fr}.kterm-option-screen{height:56px}}@media(prefers-reduced-motion:reduce){.kterm-caret{animation:none}}.verify-code-form{display:flex;align-items:end;gap:12px;margin:12px 0}.verify-code-form .field{flex:1;margin:0}.verify-code-form input{letter-spacing:.2em;font-weight:650}.people-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:var(--form-control-height);margin-bottom:12px}.people-bulk>b{font-size:17px}.people-bulk .actions{margin-left:auto}.people-table .people-check{width:18px;height:18px;min-height:0;margin:0 10px 0 0;vertical-align:-3px;cursor:pointer}.photo-editor-frame{position:relative;max-width:100%;margin:0 auto;overflow:hidden;border-radius:var(--radius-sm);background:var(--soft);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.photo-editor-frame:active{cursor:grabbing}.photo-editor-frame canvas{display:block}.photo-editor-mask{position:absolute;inset:0;pointer-events:none;outline:2px solid rgba(255,255,255,.9);outline-offset:-2px}.photo-editor-frame.round .photo-editor-mask{border-radius:50%;outline:none;box-shadow:0 0 0 2px #ffffffe6,0 0 0 999px #00000073}.photo-editor>.modal-body>.small,.photo-editor .modal-body>p.small{text-align:center;margin:8px 0 4px}.photo-editor-controls{display:grid;gap:10px;margin:10px 0}.photo-editor-controls label{display:grid;grid-template-columns:20px 80px 1fr 48px;align-items:center;gap:8px;font-weight:600}.photo-editor-controls input[type=range]{width:100%;accent-color:var(--accent)}.photo-editor-controls output{text-align:right;font-variant-numeric:tabular-nums}.photo-editor-tools{flex-wrap:wrap;justify-content:center}.team-search{position:relative;max-width:560px;margin-bottom:14px}.team-results{display:grid;gap:2px;margin:6px 0 0;padding:6px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);list-style:none}.team-results li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px;border-radius:6px}.team-results li:hover{background:var(--hover)}.team-person{display:inline-flex;align-items:center;gap:10px;min-width:0}.team-person>span{display:grid;min-width:0}.team-person small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.team-avatar{display:inline-grid;flex:none;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--soft);color:var(--ink);font-weight:700;object-fit:cover}.compiler-services{display:grid;gap:10px;margin:12px 0}.compiler-services .actions select{width:auto;min-width:120px}.loading-state .skeleton-layout{margin-top:0}.loading-state .skeleton-layout.waiting{visibility:hidden}.loading-state:not(.initial){padding-top:0}.compiler-services-panel{margin-bottom:16px}.page-gate-waiting{visibility:hidden}.page-held{position:fixed;left:0;right:0;bottom:0;z-index:20;overflow:hidden;background:var(--page)}.page-gate-waiting .compiler-window.is-expanded{visibility:visible}.project-editor-window.is-expanded .project-editor-window-head{padding:14px 20px;background:var(--surface, var(--paper))}.project-editor-window.is-expanded .project-editor-window-head h3{font-size:20px}@keyframes editor-window-open{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(prefers-reduced-motion:reduce){.project-editor-window.is-expanded{animation:none}}.compiler-window{flex:1 1 0;height:100%;overflow:hidden;background:transparent}.compiler-window>.workspace{display:flex;flex:1 1 0;flex-direction:column;min-height:0;width:100%;margin:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.compiler-window.is-expanded{width:100vw;height:100dvh;max-height:100dvh;inset:0;margin:0;border:0;border-radius:0;box-shadow:none;background:var(--page)}.compiler-window.is-expanded>.workspace{padding:12px 18px 0;overflow-y:auto;overflow-x:hidden}.compiler-window.is-expanded .project-files{overflow:auto}.compiler-window.is-expanded .file-create-actions{flex-direction:column;align-items:stretch;gap:4px}.compiler-window.is-expanded .ws-output-body{overflow:visible;-webkit-mask-image:none;mask-image:none}.compiler-window.is-expanded .project-editor:not(.files-only):not(.code-only){display:grid;grid-template-columns:175px minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.project-code.has-code-overlay{position:relative;isolation:isolate}.has-code-overlay .code-editor-frame{filter:blur(5px);pointer-events:none;-webkit-user-select:none;user-select:none}.project-code-overlay{position:absolute;inset:48px 0 0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;background:color-mix(in srgb,var(--paper) 65%,transparent)}.starter-update-message{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:440px;padding:28px;border:0;border-radius:16px;background:var(--paper);color:var(--ink);font:inherit;text-align:center;cursor:pointer;box-shadow:0 8px 36px #0000001f}.starter-update-message strong{font-size:21px}.starter-update-message>span{line-height:1.5}.starter-update-action{text-decoration:underline;text-underline-offset:4px;font-weight:600}.starter-update-message:focus-visible{outline:3px solid var(--ink);outline-offset:5px}.starter-update-message:disabled{cursor:wait}.starter-update-error{max-width:440px;color:var(--danger);text-align:center}@media(max-width:700px){.compiler-window.is-expanded .project-editor:not(.files-only):not(.code-only){display:flex}.compiler-window.is-expanded .project-editor:not(.files-only):not(.code-only) .project-files{display:none}.project-editor-window.is-expanded{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.compiler-window.is-expanded>.workspace{padding:8px}.starter-update-message{padding:18px;gap:10px}.starter-update-message strong{font-size:18px}}.compiler-window .ws-layout{padding-bottom:0;flex:1 1 0;min-height:0;grid-template-rows:minmax(0,1fr);align-items:stretch}.compiler-window .ws-code>.project-editor{flex:1 1 0;height:auto;min-height:0}.compiler-window .ws-side,.compiler-window .ws-panels{overflow:visible}.compiler-window .ws-side .ws-panel.open{flex:none;max-height:none}.compiler-window .ws-side .ws-panel-body{flex:none;overflow:visible}.ws-code{gap:8px}.ws-code>.ws-console[data-panel=result].open{flex:none;min-height:0;max-height:none;overflow:visible}.ws-code>.ws-console:not(.open){flex:none;min-height:0}.ws-console .ws-output-body{flex:none;overflow:visible;-webkit-mask-image:none;mask-image:none}.ws-console .ws-panel-body{padding:4px 12px 10px}.ws-panel-head{min-height:38px}.ws-panel-head h2{font-size:1rem}.ws-panel-head h2 button{min-height:36px}.ws-panel-body{padding:4px 12px 12px}.ws-problem .ws-problem-foot{margin-top:8px}.ws-problem .question-rules{font-size:13px;gap:4px 12px}.ws-sample-pair:not(.ws-custom){grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ws-panel[data-panel=samples] .output-label{min-height:32px;padding-left:10px}.ws-panel[data-panel=samples] .output-box pre{padding:8px 10px;font-size:14px;line-height:1.45;max-height:140px;overflow:auto}.ws-sample-tabs{margin-bottom:6px}@media(max-width:700px){.compiler-window.is-expanded{width:100vw;height:100dvh;max-height:100dvh;border-radius:0}}.course-card-heading{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.course-card-heading h2{margin:0;min-width:0;font-size:20px}.course-card .course-card-image{width:48px;height:48px;aspect-ratio:1;flex:none;object-fit:contain;border-radius:6px}.course-title-with-image{display:inline-flex;align-items:center;gap:12px;min-width:0}.course-title-image{width:56px;height:56px;aspect-ratio:1;object-fit:contain;flex:none;border-radius:6px}.photo-picker.square .photo-preview{width:72px;height:72px;aspect-ratio:1;object-fit:contain;border-radius:6px}.record-icon.has-course-picture{width:48px;height:48px;aspect-ratio:1}.course-table-title{display:inline-flex;align-items:center;gap:10px;max-width:100%;vertical-align:middle}.course-table-image{display:block;width:32px;height:32px;aspect-ratio:1;flex:none;object-fit:contain;border-radius:4px}.selection-names{max-height:240px;overflow:auto;margin:12px 0;padding:4px 20px}.selection-names small{color:var(--muted)}.export-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:900px){.site-header .header-inner{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:8px;padding-inline:12px}.site-header .header-actions{margin-left:auto;justify-content:flex-end;flex:0 0 auto}.public-header .desktop-nav{display:none}.public-header .mobile-menu-button{display:flex}.site-header .brand{flex:0 1 auto;min-width:0}}@media(max-width:400px){.public-header .header-actions>.button{padding-inline:8px}.export-dates{grid-template-columns:1fr}}.teacher-identity>.team-avatar{width:28px;height:28px}.compiler-window.is-expanded .project-editor.code-only{display:flex}.ws-console{font-variant-ligatures:none;--ink: #e6edf3;--muted: #aab6c5;--paper: #050608;--soft: #0d1015;--line: #282e38;--hover: #171c25;--error: #ffb4b0;--error-surface: #28171d;color:var(--ink);background:var(--paper);border-color:var(--line);font-family:var(--font-code)}.ws-console .diagnostic{color:#ffe1df;background:#28171d;border-color:#74434b}.ws-console .diagnostic:hover:not(:disabled),.ws-console .diagnostic:focus-visible{color:#fff1f0;background:#3a232c;border-color:#ce7d85}.ws-console .diagnostic:focus-visible{outline:2px solid #ce7d85;outline-offset:2px}.ws-console .diagnostic-line,.ws-console .diagnostic small{color:#f3c0bd}.ws-console .result-heading{position:sticky;top:0;z-index:2;background:var(--paper);padding-block:8px}.ws-console .result-heading:before{content:"";position:absolute;inset:auto 0 100%;height:16px;background:var(--paper)}.console-test-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.console-test-tabs>button{display:flex;align-items:center;gap:8px;color:#e6edf3;background:#0d1015;border:1px solid #465366;border-radius:6px;padding:6px 10px;font-size:13px}.console-test-tabs>button[aria-selected=true]{border-color:#a5c8ff;box-shadow:inset 0 -2px #a5c8ff}.console-tests .test-result-detail{padding:0}.console-tests .output-diff-summary{margin:4px 0}.console-tests .output-diff{margin:8px 0}.test-input{margin-bottom:8px}.test-input>summary{cursor:pointer}.workspace .ws-panel[data-panel=samples] .ws-sample pre,.expanded-output,.prose pre,.prose code,.rich-surface pre,.rich-surface code{font-family:var(--font-code);font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0;direction:ltr;unicode-bidi:isolate}.ws-console .ws-panel-head{background:#0d1015;border-radius:7px 7px 0 0;border-bottom:1px solid var(--line)}.ws-console .ws-panel-head h2{font-family:var(--font-code);font-size:13px;letter-spacing:.03em}.ws-console .ws-panel-body{padding:10px 12px}.ws-console .text-link,.ws-console .next-question{color:#a5c8ff}.ws-console .muted,.ws-console .output-none{color:var(--muted)}.console-result{display:grid;gap:10px}.console-stream{min-width:0}.console-stream-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px}.console-stream pre{margin:0;padding:4px 0 8px;white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.5 var(--font-code);color:var(--ink);background:transparent}.console-feedback{border-top:1px solid var(--line);padding-top:8px}.console-feedback>summary{cursor:pointer;color:var(--muted);font-size:12px}.console-feedback>.result-view{margin-top:10px}.ws-console .output-box,.ws-console .raw-output,.ws-console .test-result{background:var(--paper);border-color:var(--line)}.ws-console .output-label,.ws-console .test-result>summary,.ws-console .output-diff th{background:var(--soft);color:var(--ink)}.ws-console .output-box pre,.ws-console .raw-output pre{color:var(--ink);background:var(--paper)}.ws-console .solved-banner{background:transparent;color:#8fe0ad}.ws-console .status.good{color:#8fe0ad}.ws-console .status.bad{color:#ffaaa7}.ws-console[data-panel=result] .ws-panel-body{flex:none;overflow:visible}.ws-console .ws-output{flex:none}.workspace .output-box pre,.workspace .ws-panel[data-panel=samples] .output-box pre,.workspace .raw-output pre,.workspace .expanded-output{max-height:none;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere}.workspace .output-diff-scroll{max-height:none;overflow:visible}.workspace .ws-sample-tabs{flex-wrap:wrap;overflow:visible}.test-content{display:grid;gap:12px;min-width:0}.test-content.has-input{grid-template-columns:minmax(100px,.65fr) minmax(0,2fr);align-items:start}.test-content>.output-box{margin:0}.test-outputs{min-width:0;scroll-margin-top:64px}.test-outputs .two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.test-outputs .output-box{margin:0}@media(max-width:650px){.test-content.has-input{grid-template-columns:minmax(0,1fr)}}.ws-console .result-heading{margin:0;padding:8px 0;gap:10px}.console-stream-head .button{min-height:26px;padding:3px 8px;font-size:12px}@media(max-width:700px){.workspace-context{gap:4px;max-width:100%}.workspace-expand-button .button-label{display:none}.workspace-context>.icon-button,.workspace-context>.workspace-expand-button{width:32px;min-width:32px;min-height:36px;padding:6px}}.ws-console-toolbar{display:flex;flex:none;align-items:center;min-height:30px}.ws-console-toolbar>.button{min-height:30px;padding:4px 10px;font-size:13px}.console-window.ws-console{--paper: #0c0c0c;--soft: #161616;--line: #333;position:fixed;inset:0;margin:auto;padding:0;width:min(1100px,calc(100vw - 32px));max-width:calc(100vw - 32px);height:fit-content;max-height:min(80dvh,760px);border:1px solid #454545;border-radius:6px;box-shadow:0 22px 80px #0008;overflow:hidden;font:14px/1.5 var(--font-code);font-variant-ligatures:none}.console-window :where(button,a,pre,code,table,th,td,summary){font-family:var(--font-code)}.console-window::selection,.console-window ::selection{background:#b9d6ff;color:#0c1524;text-shadow:none}.console-window:not([open]){display:none}.console-window[open]{display:flex;flex-direction:column}.console-window::backdrop{background:#0005}.console-window .console-window-head{flex:none;padding:0 0 0 12px;gap:10px;min-height:40px;background:#1a1a1a;border-radius:0;border-bottom:1px solid #333}.console-window-head h2{font-size:13px;font-weight:400;letter-spacing:normal;margin:0}.console-window-actions{display:flex;align-items:center;align-self:stretch;margin-left:auto}.console-window-actions .text-link{padding:6px 12px;font-size:12px}.console-window-control{display:grid;place-items:center;width:44px;min-height:40px;padding:0;color:#e6edf3;background:transparent;border:0;border-radius:0;cursor:pointer}.console-window-control:hover{color:#fff;background:#333}.console-window-close:hover{background:#c42b1c}.console-window-control:focus-visible{outline:2px solid #a5c8ff;outline-offset:-4px}.console-window.ws-console .console-window-body{flex:1 1 auto;min-height:0;padding:12px 16px 16px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.console-window .result-heading{z-index:3;background:var(--paper);font-weight:400}.console-window .output-box,.console-window .raw-output{border-radius:0;border:0;background:transparent;box-shadow:none}.console-window .output-label{padding:0 0 4px;color:var(--muted);font-size:12px;font-weight:400;background:transparent;border-bottom:1px solid var(--line)}.console-window .output-box pre{padding:8px 0 12px;font-size:14px;line-height:1.5}.console-window .console-test-tabs>button{border-radius:2px;border-color:transparent;background:transparent}.console-window .console-test-tabs>button:hover{background:#202020}.console-window .console-test-tabs>button[aria-selected=true]{background:#202020}.console-window .diagnostic{background:transparent;border:0;border-radius:0;padding-inline:0;font-weight:400}.console-window .output-label>span{flex:1;min-width:0}.console-window .output-label .actions{flex-wrap:nowrap;gap:2px}.console-window .output-label .button,.console-window .output-label .icon-button{min-width:30px;min-height:30px;padding:0 5px}.console-window .output-label .button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.console-window .test-content .output-box pre,.console-window .raw-output pre,.console-window .output-diff-scroll{max-height:none;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:650px){.console-window.ws-console{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 32px)}.console-window .console-window-head{padding-left:10px;padding-right:0;gap:6px}.console-window .console-window-head .text-link{font-size:12px}}@media(max-width:440px){.console-window .test-outputs .two-column{grid-template-columns:minmax(0,1fr)}}.project-editor-window.expanded-only.is-expanded{width:100vw;height:100dvh;max-height:100dvh;inset:0;margin:0;border:0;border-radius:0;box-shadow:none}.starter-editor-window>.question-project-settings{display:flex;flex-direction:column;flex:1 1 0;min-height:0;gap:12px;padding:12px;overflow:hidden}.starter-editor-window .project-editor{flex:1 1 0;min-height:0}.starter-project-options{flex:none;max-height:35dvh;overflow:auto}.starter-project-options>summary{cursor:pointer;font-weight:600;padding:4px 0}.compiler-window .ws-side:has(.ws-fit-panels),.compiler-window .ws-fit-panels{overflow:hidden}.compiler-window .ws-fit-panels{flex:1 1 0;height:100%;min-height:0}.compiler-window .ws-fit-panels>.ws-panel[data-panel=problem]{flex:0 1 auto;min-height:calc(var(--ws-problem-head, 38px) + var(--ws-problem-action, 0px))}.compiler-window .ws-fit-panels>.ws-panel[data-panel=samples]{flex:0 0 auto;min-height:0;max-height:calc(100% - var(--ws-problem-head, 38px) - var(--ws-problem-action, 0px) - 8px)}.compiler-window .ws-fit-panels .ws-panel-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.compiler-window .ws-fit-panels .ws-panel-body[hidden]{display:none}.compiler-window .ws-fit-panels [data-panel=problem] .ws-panel-body{padding:0}.ws-fit-panels .ws-problem,.ws-fit-panels .ws-problem-text{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.ws-fit-panels .ws-problem-content{display:flow-root;flex:none;padding:4px 12px 12px}.ws-fit-panels .ws-problem{position:relative}.ws-problem-more{position:absolute;inset:auto 0 0;display:flex;justify-content:center;align-items:center;min-height:36px;isolation:isolate}.ws-problem-more:before{content:"";position:absolute;inset:-10px 0 0;z-index:-1;background:var(--paper)}.ws-problem-more .ws-read-more{padding:5px 18px;border-radius:20px;background:var(--paper);box-shadow:0 0 12px var(--paper)}.compiler-window .project-editor.files-only,.compiler-window .project-editor.files-only .project-files{display:flex;flex-direction:column;flex:1 1 0;min-height:0;width:100%;overflow:hidden}.project-files>.file-tree{min-height:0;flex:1 1 auto;overflow:auto}.project-new-menu{position:relative;margin-left:auto;font-size:14px;z-index:3}.project-new-menu>summary{display:flex;gap:6px;align-items:center;cursor:pointer;min-height:32px;padding:4px 8px;border:1px solid var(--line);border-radius:6px;list-style:none}.project-new-menu>summary::-webkit-details-marker{display:none}.project-new-options{position:absolute;right:0;top:calc(100% + 4px);display:grid;min-width:160px;padding:4px;background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #0002}.project-new-options .button{justify-content:flex-start;white-space:nowrap}.project-folder-path{display:flex;align-items:center;gap:4px;padding:4px 8px 8px;min-width:0;font-size:13px;color:var(--muted)}.project-folder-path>button{display:flex;align-items:center;gap:5px;background:none;border:0;color:var(--ink);padding:4px;cursor:pointer}.project-folder-path>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-tree summary.is-selected{background:var(--selection)}.file-tree .file-tree{margin-left:12px;padding-left:12px;border-left:1px solid var(--line)}.project-files .files-heading{flex:none;gap:10px;align-items:center}.project-files .project-build-settings{flex:none;margin-top:auto;border-top:1px solid var(--line);padding:10px}.compiler-window.is-expanded>.workspace{padding-bottom:max(4px,env(safe-area-inset-bottom))}.ws-console-toolbar{flex-wrap:wrap;gap:6px}.ws-console-toolbar .workspace-next-question,.console-window-foot .workspace-next-question{max-width:100%;white-space:normal;text-align:center}.ws-fit-panels .ws-read-more{flex:none;min-height:32px;white-space:nowrap}.ws-fit-panels .ws-sample{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0}.workspace .ws-fit-panels .ws-sample-tabs{flex:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}.ws-fit-panels .ws-sample-pair{flex:1 1 auto;grid-template-rows:minmax(0,1fr);min-height:0}.ws-fit-panels .output-box{display:flex;flex-direction:column;min-height:0}.ws-fit-panels .output-label{flex:none}.ws-fit-panels .sample-output-preview{flex:1 1 auto;min-height:0;overflow:clip}.ws-fit-panels .ws-custom .code-input{flex:1 1 auto;min-height:24px;max-height:100%;resize:none}@media(max-height:500px)and (max-width:1000px){.ws-fit-panels [data-panel=problem]:has(.ws-problem-more)>.ws-panel-head{display:none}.ws-fit-panels .ws-panel-head{min-height:32px}.ws-fit-panels .ws-panel-head h2 button{min-height:30px}.ws-fit-panels .ws-panel-head>.icon-button{min-height:28px;height:28px;width:28px}.compiler-window .ws-fit-panels [data-panel=samples] .ws-panel-body{padding:2px 8px 4px}.ws-fit-panels [data-panel=samples] .output-label{min-height:28px}.ws-fit-panels .output-label .icon-button,.ws-fit-panels .output-label .button{min-height:26px;height:26px}.ws-fit-panels .ws-sample-tabs button{min-height:26px}.compiler-window .workspace-top .question-picker select{min-height:32px;height:32px}.compiler-window>.workspace{gap:6px}.compiler-window .workspace-top.quiet-workspace-top{flex-wrap:nowrap;gap:6px;min-height:36px;margin-bottom:0}.compiler-window .workspace-top .question-picker,.compiler-window .workspace-top .workspace-question-title{flex:1 1 0;min-width:0}.compiler-window .workspace-context{flex:none;gap:4px;margin-left:0}.compiler-window .workspace-expand-button .button-label,.compiler-window .workspace-save-text{display:none}.compiler-window .workspace-context>.icon-button,.compiler-window .workspace-context>.workspace-expand-button{width:30px;min-width:30px;min-height:32px;padding:4px}.compiler-window .ws-mobile-switch{padding:2px}.compiler-window .ws-mobile-switch button{min-height:30px;padding-block:4px}}.starter-project-options[open]>summary{margin-bottom:8px}.forecast-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px 14px}.storage-forecast meter{width:100%;height:24px}.starter-editor-window .project-policy{margin:0;padding:8px 0}.lab-facts{display:flex;flex-wrap:wrap;align-items:center;gap:2px var(--space-4);margin-top:2px}.lab-secret{display:inline-flex;align-items:center;gap:var(--space-1)}.lab-secret b{font-size:1.05rem;margin-left:2px}.lab-secret .icon-button{width:30px;height:30px;min-height:30px}.lab-open{color:var(--success);font-weight:700}.lab-backup{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:var(--space-3) 0 0}.choice-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--space-4)}.choice-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border:1.5px solid var(--control-line);border-radius:999px;background:var(--paper);color:var(--ink);font:inherit;font-weight:700;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.choice-chip svg{flex:none;color:var(--muted)}.choice-chip:hover{border-color:var(--accent)}.choice-chip.on{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.choice-chip.on svg{color:var(--accent-ink)}@media(prefers-reduced-motion:reduce){.choice-chip{transition:none}}@media(max-width:650px){.choice-chip{flex:1 1 calc(50% - 5px);justify-content:flex-start}}.modal.exam-call{width:min(520px,calc(100vw - 32px))}.exam-call .modal-head{border-bottom:0;padding:28px 28px 0}.exam-call .modal-body.screen-pages-dialog{padding:0 28px}.exam-call .modal-head h2{font-size:1.75rem;line-height:1.2}.exam-call .screen-pages-dialog .screen-content{display:grid;gap:24px;padding:18px 0 28px}.exam-call-course{display:flex;justify-content:space-between;gap:12px;margin:0;font-size:1.05rem;font-weight:700;color:var(--muted)}.exam-call-course span{color:var(--success);white-space:nowrap}.exam-call-steps{list-style:none;margin:0;padding:0;display:grid;gap:18px}.exam-call-steps li{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:14px;font-size:1.1rem;font-weight:700;color:var(--muted)}.exam-call-steps li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--line);font-weight:800}.exam-call-steps small{display:block;margin-top:2px;font-size:.95rem;font-weight:500}.exam-call-steps li.current{color:var(--ink)}.exam-call-steps li.current>span{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.exam-call-steps li.done>span{border-color:var(--success);color:var(--success)}.button.exam-call-enter{width:100%;min-height:56px;margin-bottom:10px;justify-content:center;font-size:1.2rem}.button.exam-call-enter svg{width:22px;height:22px}.button.exam-call-again{justify-self:start}.room-lab{display:flex;align-items:center;gap:var(--space-2);font-weight:700}.room-lab select{min-width:140px;font-weight:700}.exam-room{flex:1 1 auto}.exam-room-bar{flex-shrink:0}.room-body{display:flex;gap:var(--space-4);flex:1 1 auto;min-height:0}.room-main{display:flex;flex-direction:column;gap:var(--space-3);flex:1 1 0;min-width:0;min-height:0}.room-main>.search-box{flex:0 0 auto}.room-side{display:flex;flex-direction:column;gap:var(--space-3);flex:0 0 330px;min-height:0;overflow:auto}.room-models{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.room-model{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-4);border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:6px 8px 6px 14px}.room-model-title{font-size:1.1rem}.room-model .lab-secret b{font-size:1.15rem}.room-model>.lab-secret{flex-wrap:wrap;width:100%;column-gap:var(--space-2)}.room-model-actions{display:flex;gap:6px;width:100%}.room-model-actions .button{flex:1 1 auto;min-height:36px;padding:4px 8px;font-size:14px;white-space:nowrap}.room-models-empty{margin:0;color:var(--muted)}.room-figures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;background:var(--paper);overflow:hidden;flex-shrink:0}.room-figures button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:6px 14px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.room-figures button:nth-child(-n+2){border-top:0}.room-figures button:nth-child(2n){border-left:1px solid var(--line)}.room-figures button:hover{background:var(--hover)}.room-figures button[aria-pressed=true]{background:var(--selection)}.room-figures span{font-weight:600;color:var(--muted)}.room-figures button[aria-pressed=true] span{color:var(--ink)}.room-figures b{font-size:20px;font-variant-numeric:tabular-nums}.room-figures .room-alert b,.room-warning{color:var(--error)}.room-warning{font-weight:700}.room-clock{font-variant-numeric:tabular-nums;font-weight:700}.exam-room .text-button.room-student{padding:0;font-weight:700;color:var(--accent)}.exam-room .text-button.room-student:hover{text-decoration:none;color:var(--ink)}.room-student-line{margin:0 0 var(--space-2);color:var(--muted);font-weight:600}.room-model>.lab-secret>.muted{width:100%}.room-paused{color:var(--warning)}.room-minutes{display:flex;align-items:center;gap:6px;font-weight:600}.room-history-facts{margin:0 0 var(--space-3);padding:0;list-style:none;display:grid;gap:4px}.room-history{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.room-history li{display:flex;gap:var(--space-3);padding:8px 0;border-bottom:1px solid var(--line)}.room-history li:last-child{border-bottom:0}.room-history time{flex:0 0 auto;font-weight:700;font-variant-numeric:tabular-nums}.exam-room-bar .button{white-space:nowrap}.preview-models{list-style:none;margin:0;padding:0;display:grid;gap:10px}.preview-models li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.preview-models a{font-weight:700}.room-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.room-actions .button{gap:5px;min-height:30px;padding:2px 8px;font-size:13.5px;white-space:nowrap}.room-actions .button svg{width:15px;height:15px}.room-actions .button.room-icon{padding:2px 6px}@media(max-width:650px){.exam-room-time{flex-wrap:wrap}}@media(max-width:1100px){.room-body{flex-direction:column}.room-side{order:-1;flex:0 0 auto;overflow:visible}}.guide-page{--guide-mark: #d93f22;--guide-dim: rgb(12 17 26 / 50%);--guide-stage: min(100%, calc((100dvh - 24px)*1.7786) , 1060px);display:flex;flex-direction:column;gap:16px}:root[data-theme=dark] .guide-page{--guide-mark: #ff6a4d;--guide-dim: rgb(5 8 12 / 58%)}.guide-player{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:12px;border-radius:var(--radius)}.guide-player.student{background:var(--positive-surface)}.guide-player.student .guide-stage{outline:3px solid var(--success);outline-offset:-1px}.guide-who{display:inline-flex;align-items:center;justify-self:start;gap:8px;color:var(--muted);font-size:var(--text-sm);font-weight:600}.guide-who.student{color:var(--success)}.guide-switch{position:absolute;top:50%;left:50%;display:grid;justify-items:center;gap:6px;width:min(86%,420px);padding:22px 24px;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-menu);text-align:center}.guide-switch.student{border:2px solid var(--success);color:var(--success)}.guide-switch strong{color:var(--ink);font-size:var(--text-lg)}.guide-switch span{color:var(--muted);font-size:var(--text-sm)}.guide-page>.page-title{flex-wrap:wrap;gap:12px 24px;margin-bottom:0}.guide-page>.page-title .actions{display:flex;align-items:center;gap:16px;min-width:0;max-width:100%}.guide-stepbar{position:relative;display:flex;align-items:center;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none}.guide-stepbar button{flex:none;display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:1.5px solid var(--line);border-radius:50%;background:var(--paper);color:var(--muted);font:inherit;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer}.guide-stepbar button.part-start{margin-left:12px}.guide-stepbar button:hover{border-color:var(--control-line);color:var(--ink)}.guide-stepbar button[aria-current=step]{border-color:var(--guide-mark);background:var(--guide-mark);color:#fff}.guide-keys-touch{display:none}@media(pointer:coarse){.guide-keys-fine{display:none}.guide-keys-touch{display:inline}}.guide-stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer;position:relative;width:var(--guide-stage);max-width:100%;aspect-ratio:1366 / 768;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.guide-camera{position:absolute;inset:0;transform-origin:0 0}.guide-camera img,.guide-camera svg{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%}.guide-dim{fill:var(--guide-dim)}.guide-ring{fill:none;stroke:var(--guide-mark);stroke-width:4}.guide-ripple{fill:none;stroke:var(--guide-mark);stroke-width:3}.guide-pointer{fill:#fff;stroke:#10151b;stroke-width:1.6;stroke-linejoin:round}.guide-end{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;gap:14px;overflow-y:auto;padding:clamp(18px,4vw,44px);background:var(--paper)}.guide-end h2{margin:0;font-size:var(--text-title);line-height:1.2}.guide-end ul{display:grid;gap:8px;max-width:72ch;margin:0;padding-left:20px;font-size:var(--text-base)}.guide-side{display:grid;align-content:start;gap:14px;min-width:0}.guide-caption{display:grid;gap:6px;min-width:0}.guide-meta{color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.guide-caption h2{margin:0;font-size:24px;line-height:1.25;text-wrap:balance}.guide-note{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;min-height:3em;max-width:78ch}.guide-note.intro{grid-template-columns:minmax(0,1fr)}.guide-note p{margin:0;font-size:var(--text-base);line-height:1.5}.guide-badge{display:inline-grid;place-items:center;width:26px;height:26px;margin-top:1px;border:2px solid var(--guide-mark);border-radius:50%;color:var(--guide-mark);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.guide-track{display:flex;gap:4px;margin-top:4px}.guide-track button{position:relative;flex:1;height:6px;padding:0;overflow:hidden;border:0;border-radius:3px;background:var(--line);cursor:pointer}.guide-track i{position:absolute;inset:0 auto 0 0;width:0;border-radius:3px;background:var(--guide-mark)}.guide-keys{margin:0;color:var(--muted);font-size:var(--text-xs)}.guide-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.guide-controls .guide-next{flex-direction:row-reverse}.guide-count{margin-left:auto;color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.guide-steps{display:grid;gap:18px}.guide-steps h3{margin:0 0 6px;color:var(--muted);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.guide-steps ol{margin:0;padding:0;list-style:none}.guide-steps button{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;width:100%;padding:7px 8px;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink);font:inherit;font-size:var(--text-sm);line-height:1.35;text-align:left;cursor:pointer}.guide-steps button:hover{background:var(--hover)}.guide-step-number{display:inline-grid;place-items:center;width:24px;height:24px;border:1.5px solid var(--line);border-radius:50%;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.guide-steps button[aria-current=step]{font-weight:700}.guide-steps button[aria-current=step] .guide-step-number{border-color:var(--guide-mark);background:var(--guide-mark);color:#fff}@media(min-width:1100px){.guide-page{--guide-stage: min( calc(100vw - 420px) , max(480px, calc((100dvh - var(--header-height) - 196px) * 1.7786)), 1060px )}.guide-player{grid-template-columns:var(--guide-stage) minmax(280px,340px);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"stage side" "stage controls";column-gap:28px;align-self:flex-start}.guide-stage{grid-area:stage}.guide-side{grid-area:side}.guide-controls{grid-area:controls;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.guide-controls .guide-next{order:-1}.guide-controls .button:first-child{order:-2}.guide-count{display:none}}@media(max-width:650px){.guide-player{padding:8px}.guide-stage{width:100%}.guide-switch{padding:14px 16px}.guide-count{display:none}.guide-page>.page-title{gap:10px}.guide-page>.page-title h1{font-size:24px}.guide-page>.page-title .actions{width:100%;gap:10px}.guide-page>.page-title .actions>.button{flex:none;min-height:36px;padding-inline:10px}.guide-stepbar{flex:1}.guide-caption h2{font-size:20px}.guide-controls{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding-block:10px calc(10px + env(safe-area-inset-bottom,0px));background:var(--page)}.guide-controls .button{flex-direction:column;gap:2px;min-height:52px;padding-inline:4px}.guide-controls .guide-next{flex-direction:column-reverse}.guide-player.student .guide-controls{background:var(--positive-surface)}}.student-list-bar{align-items:center}.student-list-summary{flex:1 1 260px;margin:0;color:var(--muted)}.course-stats{display:flex;flex-direction:column;gap:14px;min-height:0}.stats-filters{align-items:end;margin:0;padding-bottom:0}.stats-filters .field{margin:0}.stats-filters .field{min-width:0;flex:0 1 220px}.stats-filters select{width:100%;min-width:0}.stats-grades{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.stats-view-picker{display:none}.stats-view{min-width:0;display:flex;flex-direction:column;gap:16px}.stats-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:0;margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats-tiles>div{padding:12px 14px 12px 0;min-width:0}.stats-tiles dt{font-size:14px;color:var(--muted);font-weight:600}.stats-tiles dd{margin:2px 0 0;font-size:28px;font-weight:700;line-height:1.15;color:var(--ink)}.stats-tiles small{color:var(--muted);font-size:13px}.stats-pair .stats-bar-list{max-height:max(150px,calc(100dvh - 550px))}.stats-pair{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px}.stats-chart{position:relative;margin:0;min-width:0}.stats-chart figcaption{font-size:15px;font-weight:650;color:var(--ink);margin-bottom:10px}.stats-bar-list{display:flex;flex-direction:column;gap:2px;max-height:max(200px,calc(100dvh - 450px));overflow-y:auto}.stats-bar-row{display:grid;grid-template-columns:minmax(70px,190px) minmax(0,1fr) 48px;align-items:center;gap:10px;min-height:28px;border-radius:4px;cursor:default}.stats-bar-row:hover,.stats-bar-row:focus-visible{background:var(--hover);outline:none}.stats-bar-name{font-size:14px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-bar-track{height:14px;display:flex;align-items:center;border-left:1px solid var(--line)}.stats-bar-fill{height:14px;background:var(--accent);border-radius:0 4px 4px 0}.stats-bar-value{font-size:14px;font-variant-numeric:tabular-nums;color:var(--muted);text-align:right}.stats-column-plot{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;padding-bottom:22px}.stats-axis{display:flex;flex-direction:column;justify-content:space-between;text-align:right;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;margin:-7px 0}.stats-column-area{position:relative;display:flex;align-items:stretch;gap:2px;border-bottom:1px solid var(--line)}.stats-grid-lines{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.stats-grid-lines span{border-top:1px solid var(--line);opacity:.6}.stats-grid-lines span:last-child{border:0}.stats-column{position:relative;flex:1 1 0;min-width:0;display:flex;align-items:flex-end;justify-content:center;outline:none}.stats-column:hover,.stats-column:focus-visible{background:var(--hover)}.stats-column-fill{width:min(100%,24px);background:var(--accent);border-radius:4px 4px 0 0}.stats-column small{position:absolute;top:100%;margin-top:4px;font-size:12px;color:var(--muted);white-space:nowrap}.stats-column small.is-hidden{display:none}.stats-tip{position:absolute;z-index:5;transform:translate(-50%,-100%);display:flex;flex-direction:column;gap:1px;padding:8px 10px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow-menu, 0 6px 20px #0002);font-size:13px;white-space:nowrap;pointer-events:none}.stats-tip span{color:var(--muted)}.stats-heat-scroll{overflow:auto;max-height:max(220px,calc(100dvh - 450px))}.stats-heat table{table-layout:fixed;border-collapse:separate;border-spacing:2px;min-width:100%}.stats-heat th{font-size:13px;font-weight:600;color:var(--muted);text-align:left;padding:4px 6px;white-space:nowrap;position:sticky;background:var(--page)}.stats-heat thead th:first-child,.stats-heat tbody th{width:120px}.stats-heat thead th{top:0;z-index:1;max-width:120px;vertical-align:bottom}.stats-heat thead th span{display:block;overflow:hidden;text-overflow:ellipsis;max-width:110px}.stats-heat th small{display:block;font-weight:500;font-size:12px}.stats-heat tbody th{left:0;color:var(--ink)}.stats-heat tbody th small{display:inline;margin-left:6px;color:var(--muted)}.stats-heat td{padding:0}.stats-heat td button{display:block;width:100%;min-width:64px;height:32px;border:0;border-radius:4px;font:inherit;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer}.stats-heat td button:hover,.stats-heat td button:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.stats-heat-total th{font-weight:700}.stats-scale{display:flex;align-items:center;gap:2px;margin-top:10px;font-size:12px;color:var(--muted)}.stats-scale i{width:28px;height:10px;border-radius:2px}.stats-scale span:first-child{margin-right:6px}.stats-scale span:last-child{margin-left:6px}@media(max-width:950px){.stats-pair{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.stats-view-picker{display:flex;align-items:center;gap:12px}.stats-layout{display:block}.stats-layout .settings-sections{display:none}.stats-tiles dd{font-size:22px}.stats-filters .field{flex:1 1 140px}}.student-view-floating{top:auto;bottom:20px;right:20px;z-index:70;box-shadow:0 8px 24px #0003}.student-view-floating.is-placed{bottom:auto}.student-view-floating>span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}@media print{.student-view-bar{display:none}}.lab-examiners{list-style:none;margin:0 0 12px;padding:0;max-height:min(60vh,460px);overflow-y:auto}.lab-examiners li{display:grid;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:44px;border-bottom:1px solid var(--line)}.lab-examiners li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.people-filter{flex-wrap:wrap}.people-filter .search-box{flex:0 1 380px;min-width:0}.people-filter>.review-switch{flex:none}.people-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:1 1 0;min-width:0;min-height:44px}.people-actions .student-list-summary{flex:0 1 auto;min-width:0;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.filter-bar.people-filter{display:flex;flex-wrap:wrap}.filter-bar.people-filter>.search-box,.filter-bar.people-filter>.review-switch,.filter-bar.people-filter>.people-actions{flex:1 1 100%;width:100%}.people-actions{justify-content:flex-start;flex-wrap:wrap}.people-actions .student-list-summary{flex:1 1 100%;text-align:left;white-space:normal}.people-filter .review-switch button{flex:1 1 0}}.people-section{margin-top:12px}.people-section .student-list-bar{margin:0 0 12px}.people-section .team-table td{padding-top:6px;padding-bottom:6px}.people-filter .student-list-bar{display:contents}#main:focus,.compiler-window:focus{outline:none}@media(max-width:760px){.page-title{align-items:stretch}.catalog-controls .toolbar-search{grid-column:1 / -1}.aligned-table [data-layout=rows] td:not(:has(input)),.aligned-table [data-layout=rows] td:not(:has(input)) .table-cell-line{white-space:normal;overflow-wrap:anywhere;text-overflow:clip}.aligned-table [data-layout=rows] td:has(input) .table-cell-line{display:flex;align-items:flex-start;gap:8px;white-space:normal;text-overflow:clip}.prose .data-table td{display:block;position:static;min-height:0;padding:4px 0;text-align:left;white-space:normal;overflow:visible;text-overflow:clip}.prose .data-table td:before{display:block;position:static;width:auto;margin:0 0 2px;font-size:13px;font-weight:650}}@media(max-width:650px){.site-footer{flex-wrap:nowrap;gap:4px;padding:7px 12px;font-size:12.5px;white-space:nowrap}.site-footer-made{gap:4px}.site-footer-made img{width:17px;height:17px}.compiler-window .ws-side:has(.ws-fit-panels),.compiler-window .ws-fit-panels{overflow-x:hidden;overflow-y:auto}.compiler-window .ws-fit-panels>.ws-panel[data-panel=problem],.compiler-window .ws-fit-panels>.ws-panel[data-panel=samples]{flex:none;min-height:0;max-height:none}.compiler-window .ws-fit-panels .ws-panel-body,.ws-fit-panels .ws-problem,.ws-fit-panels .ws-problem-text,.ws-fit-panels .ws-sample,.ws-fit-panels .ws-sample-pair{flex:none;overflow:visible}.ws-fit-panels .is-clipped{-webkit-mask-image:none;mask-image:none}.ws-fit-panels .ws-sample-pair{grid-template-columns:minmax(0,1fr);grid-template-rows:none}.ws-fit-panels .sample-output-preview{max-height:40vh;overflow:auto}}@media(max-width:370px){.site-footer{font-size:12px;padding:6px 8px}}@media(max-width:480px){.record-list .record>.button.open .button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.record-list .record>.button.open{min-width:44px;padding-inline:12px}}@media(max-width:400px){.workspace-run-actions .button{padding-inline:12px}}@media(max-width:650px){.project-file-bar:has(>select>option:only-child)>svg,.project-file-bar>select:has(>option:only-child){display:none}.project-file-bar>select{flex:0 0 auto;min-width:88px}}@media(max-width:650px){.content-panel>.screen-viewport>.screen-content:has(>.question-page){height:auto}.question-page.fit-page,.question-page>.question-form,.question-page .question-form>[data-field="Problem statement"],.question-page [data-field="Problem statement"]>.field-control,.question-page [data-field="Problem statement"] .rich-editor{flex:none}.question-page>.reference-section,.question-page>.question-project-settings{flex:none}.question-page>.reference-section>.project-editor-window,.question-page>.reference-section .project-editor,.question-page>.reference-section .project-code{flex:none;height:auto;min-height:0}.question-page>.reference-section .code-editor-frame{flex:none;height:55vh}.question-page [data-field="Problem statement"] .rich-surface{flex:none;min-height:55vh;padding:12px 14px}.rich-toolbar{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:4px}.rich-toolbar::-webkit-scrollbar{display:none}.rich-group{flex:none;padding:0 4px}.question-page>.settings-form{grid-template-columns:minmax(0,1fr)}.question-page>.settings-form .field select,.question-page>.settings-form .field input{width:100%;max-width:none}.question-page .project-policy{grid-template-columns:minmax(0,1fr)}.question-page .project-policy select{width:100%}.question-page .test-summary{flex-direction:column;align-items:stretch;gap:4px}.question-page .test-summary .actions{justify-content:flex-start;flex-wrap:nowrap;gap:4px;padding-left:27px}.question-page .test-summary .button{width:auto;min-width:40px;min-height:36px;padding:0 10px}}@media(max-width:650px){.question-page .starter-editor-window .project-editor{display:flex;flex-direction:column;overflow-y:auto}.question-page .starter-editor-window .project-files{flex:none}.question-page .starter-editor-window .project-code{display:flex;flex:none;flex-direction:column;min-height:0}.question-page .starter-editor-window .project-code>.code-editor-frame{flex:none;height:60dvh}}.all-done{display:flex;align-items:center;gap:24px;margin:8px 0 20px}.all-done h2{margin:0 0 6px;font-size:1.75rem}.all-done p{margin:0;max-width:46ch;color:var(--muted);font-size:17px}.party-popper{flex:none;overflow:visible}.party-popper-body{transform-box:view-box;transform-origin:72px 628px;animation:popper-kick .7s cubic-bezier(.3,1.6,.5,1) both,popper-wait 3.2s ease-in-out .9s infinite}.party-popper-streamer{stroke-dasharray:1;stroke-dashoffset:1;transform-box:fill-box;transform-origin:0% 100%;animation:popper-draw .65s cubic-bezier(.2,.8,.3,1) var(--delay) forwards,popper-sway 2.6s ease-in-out calc(var(--delay) + .8s) infinite}.party-popper-dot{transform-box:fill-box;transform-origin:center;animation:popper-burst .7s cubic-bezier(.2,.9,.3,1.2) var(--delay) both,popper-float 2.4s ease-in-out calc(.9s + var(--float)) infinite}@keyframes popper-kick{0%{transform:rotate(8deg) scale(.92)}45%{transform:rotate(-5deg) scale(1.03)}to{transform:rotate(0) scale(1)}}@keyframes popper-wait{0%,to{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes popper-draw{to{stroke-dashoffset:0}}@keyframes popper-sway{0%,to{transform:rotate(0) translateY(0)}50%{transform:rotate(-4deg) translateY(-6px)}}@keyframes popper-burst{0%{transform:translate(var(--dx),var(--dy)) scale(0)}to{transform:translate(0) scale(1)}}@keyframes popper-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(prefers-reduced-motion:reduce){.party-popper-body,.party-popper-streamer,.party-popper-dot{animation:none;stroke-dashoffset:0}}@media(max-width:650px){.all-done{flex-direction:column;text-align:center}.all-done .party-popper{width:140px;height:140px}}.drawn-check{flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.drawn-check-ring{stroke-width:3.5}.drawn-check-tick{stroke-width:4.5}.drawn-check.play .drawn-check-ring,.drawn-check.play .drawn-check-tick{stroke-dasharray:1;stroke-dashoffset:1}.drawn-check.play .drawn-check-ring{animation:check-draw .42s cubic-bezier(.4,0,.2,1) forwards}.drawn-check.play .drawn-check-tick{animation:check-draw .3s cubic-bezier(.3,.7,.3,1) .36s forwards}.drawn-check.play{transform-origin:center;animation:check-pop .36s cubic-bezier(.3,1.6,.5,1) .62s both}@keyframes check-draw{to{stroke-dashoffset:0}}@keyframes check-pop{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}.drawn-check.calm.play .drawn-check-ring{animation-duration:.9s}.drawn-check.calm.play .drawn-check-tick{animation-duration:.52s;animation-delay:.8s}.drawn-check.calm.play{animation:check-breathe 3.6s ease-in-out 1.6s infinite}@keyframes check-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.exam-handed-in{text-align:center}.exam-handed-in .drawn-check{color:var(--success);margin:0 auto 18px;display:block}.k-busy{display:inline-block;flex:none;width:22px;height:22px;margin:-3px -2px;background:currentColor;-webkit-mask:url(/kompile-loader-k.svg) center / contain no-repeat;mask:url(/kompile-loader-k.svg) center / contain no-repeat}.streak-chip{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:15px;white-space:nowrap}.streak-chip strong{color:var(--ink);font-size:17px}.streak-flame{overflow:visible}.streak-flame-body{transform-box:view-box;transform-origin:20px 46px;transform:scale(var(--grow));animation:flame-flicker 1.6s ease-in-out infinite}.streak-flame-outer{fill:#fd716f}.streak-flame-inner{fill:#fdaaa9;transform-box:fill-box;transform-origin:50% 100%;animation:flame-core 1.1s ease-in-out infinite}.streak-chip:not(.lit) .streak-flame-outer{fill:var(--control-line)}.streak-chip:not(.lit) .streak-flame-inner{fill:var(--line)}.streak-chip:not(.lit) .streak-flame-body,.streak-chip:not(.lit) .streak-flame-inner{animation:none}.streak-flame.grow .streak-flame-body{animation:flame-grow .9s cubic-bezier(.3,1.5,.5,1) both,flame-flicker 1.6s ease-in-out .9s infinite}@keyframes flame-flicker{0%,to{transform:scale(var(--grow)) skew(0)}30%{transform:scale(calc(var(--grow) * .97),calc(var(--grow) * 1.05)) skew(-3deg)}65%{transform:scale(calc(var(--grow) * 1.02),calc(var(--grow) * .97)) skew(2deg)}}@keyframes flame-core{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.14)}}@keyframes flame-grow{0%{transform:scale(calc(var(--grow) * .4))}to{transform:scale(var(--grow))}}.topic-finished{display:flex;align-items:center;gap:22px;margin:8px 0 28px}.topic-finished-body{display:grid;gap:6px;flex:1;min-width:0}.topic-finished-kicker{font-size:15px;font-weight:700;color:var(--success)}.topic-finished h2{margin:0;font-size:24px;letter-spacing:-.3px}.topic-finished-meter{display:flex;align-items:center;gap:12px;max-width:420px;font-size:15px;font-weight:650;color:var(--muted)}.topic-finished-track{flex:1;height:8px;border-radius:4px;background:var(--soft);overflow:hidden}.topic-finished-track>span{display:block;height:100%;border-radius:inherit;background:var(--success);transform-origin:left;animation:finished-fill .9s cubic-bezier(.3,.8,.3,1) .25s both}@keyframes finished-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.topic-finished .party-popper{margin:-6px 0}.row-solved{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--success);font-size:15px;font-weight:650}.row-solved .drawn-check.play .drawn-check-ring{animation-delay:var(--at)}.row-solved .drawn-check.play .drawn-check-tick{animation-delay:calc(var(--at) + .36s)}.row-solved .drawn-check.play{animation-delay:calc(var(--at) + .62s)}@media(prefers-reduced-motion:reduce){.topic-finished-track>span{animation:none}}@media(max-width:650px){.topic-finished{flex-wrap:wrap;gap:12px 16px}.topic-finished .party-popper{width:76px;height:76px}.topic-finished h2{font-size:20px}.topic-finished-back{width:100%}.row-solved{font-size:0;gap:0}}.empty-drawing{display:inline-block;vertical-align:top;margin-bottom:12px;fill:none;stroke-linecap:round;stroke-linejoin:round}.empty-drawing-prompt{stroke:var(--muted);stroke-width:2.5}.empty-drawing-cursor{fill:var(--accent);animation:empty-cursor 1.1s steps(1,end) infinite}@keyframes empty-cursor{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.drawn-check.play,.drawn-check.play .drawn-check-ring,.drawn-check.play .drawn-check-tick,.streak-flame-body,.streak-flame-inner,.streak-flame.grow .streak-flame-body,.empty-drawing-cursor{animation:none;stroke-dashoffset:0}.k-busy{-webkit-mask-image:url(/kompile-loader-k-static.svg);mask-image:url(/kompile-loader-k-static.svg)}}@media(max-width:650px){.streak-chip{font-size:14px}}.stats-filters .field[data-field="Topic or exam"]{flex:0 1 360px}.passed-hero{display:flex;align-items:center;gap:16px;padding:6px 0;color:#8fe0ad;font-family:var(--font-sans)}.passed-hero-mark{display:grid;place-items:center;flex:none;width:58px;height:58px}.passed-hero .drawn-check.play .drawn-check-ring{animation-delay:var(--after)}.passed-hero .drawn-check.play .drawn-check-tick{animation-delay:calc(var(--after) + .36s)}.passed-hero .drawn-check.play{animation-delay:calc(var(--after) + .62s)}.passed-hero-text{display:grid;gap:4px;min-width:0;flex:1}.passed-hero-text strong{font-size:20px;font-weight:700;color:#e9edf1;letter-spacing:-.2px}.passed-hero-text span{font-size:14px;color:#b9c2cc}.passed-hero-bar{display:flex;gap:4px;margin-top:4px;max-width:420px}.passed-hero-bar i{flex:1;height:6px;border-radius:3px;background:#ffffff1f;position:relative;overflow:hidden}.passed-hero-bar i:after{content:"";position:absolute;inset:0;border-radius:inherit;background:#8fe0ad;transform:scaleX(0);transform-origin:left;animation:passed-fill .16s ease-out var(--at) forwards}@keyframes passed-fill{to{transform:scaleX(1)}}.console-test-tabs.pass-wave .status-dot{animation:passed-dot .42s cubic-bezier(.3,1.6,.5,1) var(--at) both}@keyframes passed-dot{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.passed-hero-bar i:after,.console-test-tabs.pass-wave .status-dot{animation:none;transform:none}}@media(max-width:650px){.passed-hero{gap:12px}.passed-hero-mark{width:48px;height:48px}.passed-hero-text strong{font-size:18px}}.tick-icon{flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tick-icon path{stroke-dasharray:1;stroke-dashoffset:1;animation:tick-draw .34s cubic-bezier(.3,.7,.3,1) forwards}@keyframes tick-draw{to{stroke-dashoffset:0}}.count-up,.rolling{font-variant-numeric:tabular-nums}.roll-digit{display:inline-block;animation:roll-in .26s cubic-bezier(.2,.8,.3,1)}@keyframes roll-in{0%{opacity:0;transform:translateY(-45%)}}.just-changed{display:inline-block;animation:state-in .32s ease-out}@keyframes state-in{0%{opacity:0;transform:translateY(4px)}}.clock-sweep{flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.clock-sweep-hand{transform-origin:12px 12px;animation:clock-sweep .9s cubic-bezier(.4,.1,.3,1) .12s both}@keyframes clock-sweep{0%{transform:rotate(-360deg)}}.theme-icon{flex:none;overflow:visible}.theme-icon-body{fill:currentColor;transform-origin:12px 12px;transition:transform .42s cubic-bezier(.3,.7,.3,1)}.theme-icon-bite{transition:transform .42s cubic-bezier(.3,.7,.3,1)}.theme-icon-rays{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;transform-origin:12px 12px;transition:transform .42s cubic-bezier(.3,.7,.3,1),opacity .3s ease}.theme-icon.is-light .theme-icon-body{transform:scale(.5)}.theme-icon.is-light .theme-icon-bite{transform:translate(10px,-10px)}.theme-icon.is-dark .theme-icon-rays{opacity:0;transform:rotate(-90deg) scale(.5)}.bell-swing{transform-origin:50% 10%;animation:bell-swing .9s ease-in-out}@keyframes bell-swing{15%{transform:rotate(14deg)}35%{transform:rotate(-11deg)}55%{transform:rotate(7deg)}75%{transform:rotate(-3deg)}}.console-test-tabs button.fail-shake{animation:fail-shake .38s ease-in-out .2s}@keyframes fail-shake{20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.print-line{animation:print-in .14s ease-out both;animation-delay:calc(var(--line) * 16ms)}@keyframes print-in{0%{opacity:0}}.cm-editor .kompile-error-token,.cm-editor .kompile-warning-token{position:relative}.cm-editor .kompile-error-token:after,.cm-editor .kompile-warning-token:after{content:"";position:absolute;inset:auto 0 -4px;height:4px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='4'%3E%3Cpath d='M0 3l1.5-2L3 3l1.5-2L6 3' fill='none' stroke='%23ef4444' stroke-width='1.2'/%3E%3C/svg%3E") repeat-x left center / 6px 4px;pointer-events:none;animation:underline-draw .42s cubic-bezier(.3,.7,.3,1) 80ms both}.workspace:has(dialog.console-window[open]) .cm-editor .kompile-error-token:after,.workspace:has(dialog.console-window[open]) .cm-editor .kompile-warning-token:after{clip-path:inset(0 100% 0 0);animation:none}.cm-editor .kompile-warning-token:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='4'%3E%3Cpath d='M0 3l1.5-2L3 3l1.5-2L6 3' fill='none' stroke='%23d99b17' stroke-width='1.2'/%3E%3C/svg%3E")}@keyframes underline-draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.course-card progress::-webkit-progress-value,.learning-progress progress::-webkit-progress-value{transform-origin:left;animation:bar-fill .7s cubic-bezier(.3,.7,.3,1) both}.course-card progress::-moz-progress-bar,.learning-progress progress::-moz-progress-bar{transform-origin:left;animation:bar-fill .7s cubic-bezier(.3,.7,.3,1) both}.stats-bar-fill{transform-origin:left;animation:bar-fill .7s cubic-bezier(.3,.7,.3,1) both}.stats-column-fill{transform-origin:bottom;animation:column-fill .7s cubic-bezier(.3,.7,.3,1) both}@keyframes bar-fill{0%{transform:scaleX(0)}}@keyframes column-fill{0%{transform:scaleY(0)}}.paste-meter{display:inline-flex;align-items:center;gap:10px;margin-right:10px}.paste-meter-track{display:inline-block;width:90px;height:6px;border-radius:3px;background:color-mix(in srgb,var(--error) 18%,transparent);overflow:hidden}.paste-meter-track i{display:block;height:100%;background:var(--error);transform-origin:left;transform:scaleX(var(--share));animation:bar-fill .8s cubic-bezier(.3,.7,.3,1) .15s both}.brand-lockup.draw-in .brand-back,.brand-lockup.draw-in .brand-front{animation:logo-wipe .56s cubic-bezier(.4,0,.2,1) both}.brand-lockup.draw-in .brand-front{animation-delay:.14s}.brand-lockup.draw-in .brand-prompt path{stroke-dasharray:1;stroke-dashoffset:1;animation:tick-draw .36s ease-out .52s forwards}.brand-lockup.draw-in .brand-prompt path+path{animation-delay:.76s}@keyframes logo-wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.course-card.just-joined{animation:card-arrive .48s cubic-bezier(.2,.7,.3,1) .15s both}@keyframes card-arrive{0%{opacity:0;transform:translateY(10px)}}.workspace.time-up .cm-content{opacity:.62;transition:opacity .7s ease}.streak-flame.jump{transform-origin:50% 100%;animation:flame-jump .7s cubic-bezier(.3,1.5,.5,1) .4s both}@keyframes flame-jump{40%{transform:translateY(-7px) scale(1.15)}}.search-tilt{transform-origin:60% 60%;animation:search-tilt .6s ease-in-out}@keyframes search-tilt{30%{transform:rotate(-18deg)}60%{transform:rotate(10deg)}}.passed-hero-mark{position:relative}.first-burst{position:absolute;inset:-12px;overflow:visible;pointer-events:none}.first-burst path{fill:none;stroke:#8fe0ad;stroke-width:3;stroke-linecap:round;stroke-dasharray:1 2;stroke-dashoffset:1;opacity:0;animation:first-burst .7s ease-out calc(var(--after) + .7s) both}@keyframes first-burst{0%{stroke-dashoffset:1;opacity:1}55%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:-1;opacity:0}}@media(prefers-reduced-motion:reduce){.tick-icon path,.roll-digit,.just-changed,.clock-sweep-hand,.bell-swing,.console-test-tabs button.fail-shake,.print-line,.cm-editor .kompile-error-token:after,.cm-editor .kompile-warning-token:after,.stats-bar-fill,.stats-column-fill,.paste-meter-track i,.brand-lockup.draw-in .brand-back,.brand-lockup.draw-in .brand-front,.brand-lockup.draw-in .brand-prompt path,.course-card.just-joined,.streak-flame.jump,.search-tilt,.first-burst path{animation:none;stroke-dashoffset:0}.first-burst{display:none}.course-card progress::-webkit-progress-value,.learning-progress progress::-webkit-progress-value{animation:none}.theme-icon-body,.theme-icon-bite,.theme-icon-rays,.workspace.time-up .cm-content{transition:none}}.theme-control-label{display:inline-flex;align-items:center;gap:8px}.desk-row .starts-in,.desk-row .starts-in span{color:var(--ink);font-weight:600}.sort-heading{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.sort-heading:hover{color:var(--accent)}.workspace-code .project-editor.compact-project.files-only>.project-files{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-content:start;gap:12px 16px;padding:16px 18px;overflow:auto}.project-editor.compact-project.files-only>.project-files>.project-folder-path{grid-area:1 / 1;align-self:center;margin:0;padding:0;font-size:15px}.project-editor.compact-project.files-only>.project-files>.files-heading{grid-area:1 / 2;min-height:36px}.project-editor.compact-project.files-only>.project-files>.file-tree{grid-area:2 / 1 / 3 / -1;flex:none;margin:0;overflow:visible}.project-editor.compact-project.files-only>.project-files>.project-build-settings{grid-area:3 / 1 / 4 / -1;margin:4px 0 0;padding:14px 0 0;border-top:1px solid var(--line)}.project-editor.compact-project.files-only .project-build-settings .field{max-width:340px}.lab-add{align-items:flex-end;margin-bottom:12px}.lab-add .field{flex:1 1 240px;margin:0}.lab-actions{display:flex;align-items:center;gap:4px}.workspace-submitted{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:15px;font-weight:700}.question-picker option.is-submitted,.select-search-option.is-submitted{color:var(--accent);font-weight:700}.button.workspace-hand-in{min-height:36px;padding-inline:14px}.hand-in-missing{margin:0 0 12px;padding-left:22px;font-weight:600}.button.room-button{border:1.5px solid currentColor;background:var(--surface, transparent);font-weight:700}.button.room-button:hover:not(:disabled){background:color-mix(in srgb,currentColor 10%,transparent);text-decoration:none}.button.room-button.tone-run{color:var(--run)}.button.room-button.tone-warning{color:var(--warning)}.button.room-button.tone-accent{color:var(--accent)}.button.room-button.tone-error{color:var(--error)}.button.room-button.tone-neutral{color:var(--text, inherit)}.workspace-clock.low,.workspace-context .workspace-clock.low{color:var(--warning);font-weight:700}.workspace-clock-note{font-weight:600}@media(max-width:700px){.workspace-clock-note{display:none}}#main.main-content:has(.lost-page){max-width:none;padding:0}.content-panel>.screen-viewport>.screen-content:has(>.lost-page){height:100%;padding-bottom:0}.lost-page{--lost-shadow: #1d2633;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(12px,3vh,28px);height:100%;min-height:320px;padding:16px;box-sizing:border-box;overflow:hidden;background:var(--page)}:root[data-theme=dark] .lost-page,:root[data-palette=galaxy] .lost-page,:root[data-palette=arcade] .lost-page{--lost-shadow: #000000}.lost-scene{display:block;flex:0 1 auto;width:min(100%,560px);max-height:50vh;min-height:0;overflow:visible}.lost-scene path{stroke-width:.5;stroke-linejoin:round}.lost-shadow{fill:var(--lost-shadow)}.lost-copy{flex:none;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.lost-code{font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.lost-copy h1{margin:0;font-size:clamp(30px,4vw,44px);line-height:1.08;font-weight:700;text-wrap:balance}.lost-copy p{margin:0;max-width:42ch;color:var(--muted);font-size:clamp(17px,1.6vw,20px);font-weight:600;line-height:1.45}.lost-copy .actions{justify-content:center;margin-top:6px}@media(max-height:520px)and (min-aspect-ratio:3/2){.lost-page{flex-direction:row;gap:clamp(20px,5vw,56px)}.lost-scene{width:min(48vw,480px);max-height:70vh}.lost-copy{flex:0 1 auto;min-width:0;max-width:44vw;align-items:flex-start;text-align:left}.lost-copy .actions{justify-content:flex-start}}.hand-in-art{--hand-in-outline: #5e3d30;--hand-in-skin: #fde3cc;--hand-in-curl: #fbd1bd;--hand-in-sleeve: #fd716f;--hand-in-cuff: #fdaaa9;--hand-in-cap: #e5484d;--hand-in-cap-side: #b8323a;--hand-in-plate: #c9ced6;--hand-in-plate-side: #a9b0ba;--hand-in-sweat: #8fc4f2;display:block;width:230px;max-width:70%;height:auto;margin:0 auto 10px}:root[data-theme=dark] .hand-in-art,:root[data-palette=galaxy] .hand-in-art,:root[data-palette=arcade] .hand-in-art{--hand-in-outline: #2a1a14;--hand-in-plate: #59626e;--hand-in-plate-side: #434b55;--hand-in-sweat: #7fb6ea}.hand-in-o{stroke:var(--hand-in-outline);stroke-width:3.5;stroke-linejoin:round;stroke-linecap:round}.hand-in-fist path,.hand-in-fist rect{fill:var(--hand-in-skin);stroke:var(--hand-in-outline);stroke-width:15;stroke-linejoin:round;stroke-linecap:round}.hand-in-fist .hand-in-curl{fill:var(--hand-in-curl)}.hand-in-fist .hand-in-line{fill:none}.hand-in-fist .hand-in-thumb{stroke:none}.hand-in-sleeve{fill:var(--hand-in-sleeve)}.hand-in-cuff{fill:var(--hand-in-cuff)}.hand-in-cap{fill:var(--hand-in-cap)}.hand-in-cap-side{fill:var(--hand-in-cap-side)}.hand-in-plate{fill:var(--hand-in-plate)}.hand-in-plate-side{fill:var(--hand-in-plate-side)}.hand-in-shine{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;opacity:.85}.hand-in-drop{fill:var(--hand-in-sweat);stroke-width:2.5}.hand-in-hover{animation:hand-in-hover 2.8s ease-in-out infinite}.hand-in-shake{animation:hand-in-shake .16s steps(2,jump-none) infinite}.hand-in-fall{transform-box:fill-box;transform-origin:50% 0%;animation:hand-in-fall-left 2.8s ease-in infinite}.hand-in-fall.is-left{animation-delay:-1.4s}.hand-in-fall.is-right{animation-name:hand-in-fall-right}.hand-in-art.is-pressing .hand-in-hover{animation:hand-in-press .5s ease-in forwards}.hand-in-art.is-pressing .hand-in-shake,.hand-in-art.is-pressing .hand-in-fall{animation:none}.hand-in-art.is-pressing .hand-in-fall{opacity:0}.hand-in-art.is-pressing .hand-in-cap-group{transform-box:fill-box;transform-origin:50% 100%;animation:hand-in-squash .5s ease-in forwards}@keyframes hand-in-hover{0%,to{transform:translateY(0)}42%{transform:translateY(6px)}50%{transform:translateY(7px)}62%{transform:translateY(-3px)}}@keyframes hand-in-shake{0%{transform:translate(-1.2px,.4px) rotate(-.8deg)}to{transform:translate(1.2px,-.4px) rotate(.8deg)}}@keyframes hand-in-fall-left{0%,30%{transform:translate(0) scale(0);opacity:0}40%{transform:translate(0) scale(1);opacity:1}58%{transform:translateY(10px) scale(1);opacity:1}80%,to{transform:translate(-3px,40px) scale(.9);opacity:0}}@keyframes hand-in-fall-right{0%,30%{transform:translate(0) scale(0);opacity:0}40%{transform:translate(0) scale(1);opacity:1}58%{transform:translateY(10px) scale(1);opacity:1}80%,to{transform:translate(3px,40px) scale(.9);opacity:0}}@keyframes hand-in-press{0%{transform:translateY(0)}to{transform:translateY(24px)}}@keyframes hand-in-squash{0%,72%{transform:scaleY(1)}to{transform:scaleY(.55)}}.modal .dialog-actions.hand-in-actions{display:grid;grid-template-columns:1fr 1fr}.modal .dialog-actions.hand-in-actions>.button{width:100%;justify-content:center}@media(max-width:420px){.modal .dialog-actions.hand-in-actions{grid-template-columns:1fr}.modal .dialog-actions.hand-in-actions>.button.danger{order:-1}}@media(prefers-reduced-motion:reduce){.hand-in-art *{animation:none!important}}.page-action-slot{display:contents}.actions>.page-action-slot>.button,.actions>.page-action-slot>.file-button{display:inline-flex;align-items:center;height:var(--action-height, 44px);min-height:var(--action-height, 44px);white-space:nowrap;line-height:1.25;flex-shrink:0}@media(max-width:700px){.page-title .actions>.page-action-slot>.button,.page-title .actions>.page-action-slot>.file-button{flex:1 1 auto;justify-content:center}.management-heading .page-title .file-button{min-height:36px;padding:7px 10px;font-size:14px}}:root[data-palette]{--radius: 14px;--radius-sm: 10px;--radius-xs: 6px;--shadow-small: 0 3px 12px #17233d0d;--focus-ring: var(--accent);--accent-strong: var(--accent)}:root[data-palette=ocean]{--page: #eaf5ff;--paper: #ffffff;--soft: #dcecff;--hover: #f2f8ff;--line: #bfd6ef;--control-line: #6983a6;--ink: #172e4a;--muted: #425970;--accent: #075bc1;--accent-hover: #074999;--accent-ink: #ffffff;--selection: #bfdbff}:root[data-palette=mint]{--page: #eaf8ef;--paper: #fbfffc;--soft: #d7f0e1;--hover: #effaf3;--line: #b9d8c7;--control-line: #5a8a72;--ink: #183c2d;--muted: #42634f;--accent: #08744d;--accent-hover: #075c3e;--accent-ink: #ffffff;--selection: #b9e8ce}:root[data-palette=sunset]{--page: #fff1df;--paper: #fffcf7;--soft: #ffe3bc;--hover: #fff5e8;--line: #e6c8a5;--control-line: #a17e64;--ink: #482e22;--muted: #745444;--accent: #9e3f0d;--accent-hover: #803309;--accent-ink: #ffffff;--selection: #ffd0a8}:root[data-palette=candy]{--page: #fff0f9;--paper: #fffbff;--soft: #f6ddf2;--hover: #fff5fc;--line: #dfbedb;--control-line: #a67c9f;--ink: #442746;--muted: #735470;--accent: #a3286b;--accent-hover: #872157;--accent-ink: #ffffff;--selection: #f3c0e4;--radius: 20px}:root[data-palette=galaxy]{--page: #100f24;--paper: #1b1933;--soft: #302749;--hover: #25203e;--line: #51416e;--control-line: #8b7cae;--ink: #f1ebff;--muted: #c4b7dc;--accent: #b49aff;--accent-hover: #ccbaff;--accent-ink: #1b1138;--selection: #4d3b76;--shadow-menu: 0 10px 30px #05020f99, 0 0 0 1px #51416e}:root[data-palette=arcade]{--page: #081c24;--paper: #102831;--soft: #1b3c45;--hover: #16323c;--line: #365d65;--control-line: #779ca3;--ink: #e4fff5;--muted: #b1d0d4;--accent: #9fe864;--accent-hover: #c0f794;--accent-ink: #14240b;--selection: #355c49;--radius: 5px;--radius-sm: 4px;--radius-xs: 3px;--shadow-menu: 0 10px 30px #0009, 0 0 0 1px #365d65}[data-palette] .app-shell{background:var(--page)}[data-palette] .site-header{box-shadow:0 2px 0 var(--line)}[data-palette] .course-card,[data-palette] .health-panel,[data-palette] .record{border-radius:var(--radius);background:var(--paper)}[data-palette] .button.primary{box-shadow:0 2px 0 var(--accent-hover)}@media(prefers-reduced-motion:no-preference){svg.lucide,.seb-icon{transition:scale .12s ease}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):active:not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit) svg.lucide,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):active:not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit) .seb-icon{scale:.86}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) .seb-icon{animation:icon-hop-squash .7s cubic-bezier(.3,.7,.3,1);transform-origin:50% 100%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-download:not(.bell-swing,.search-tilt,.spin) :is(polyline,line){animation:icon-drop .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-download:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:12px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-download:not(.bell-swing,.search-tilt,.spin) path{animation:icon-land .76s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-upload:not(.bell-swing,.search-tilt,.spin) :is(polyline,line){animation:icon-launch .76s cubic-bezier(.3,.7,.3,1) 60ms both}svg.lucide-upload:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:12px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-upload:not(.bell-swing,.search-tilt,.spin) path{animation:icon-crouch .76s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-plus:not(.bell-swing,.search-tilt,.spin){animation:icon-spin-pop .56s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-x:not(.bell-swing,.search-tilt,.spin){animation:icon-spin-shrink .56s cubic-bezier(.3,.7,.3,1)}svg.lucide-folder-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)),svg.lucide-image-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-folder-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-image-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){animation:icon-spin-pop .62s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-file-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4)),svg.lucide-mail-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4)){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4)),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-mail-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4)){animation:icon-spin-pop .62s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-calendar-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(5),path:nth-child(6)){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-calendar-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(5),path:nth-child(6)){animation:icon-spin-pop .62s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-user-plus:not(.bell-swing,.search-tilt,.spin) line,svg.lucide-user-x:not(.bell-swing,.search-tilt,.spin) line{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-plus:not(.bell-swing,.search-tilt,.spin) line,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-x:not(.bell-swing,.search-tilt,.spin) line{animation:icon-spin-pop .62s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-monitor-x:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-monitor-x:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){animation:icon-spin-pop .62s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-folder-plus:not(.bell-swing,.search-tilt,.spin) path:last-child{transform-box:view-box;transform-origin:12px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-folder-plus:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-hop .62s cubic-bezier(.3,.7,.3,1)}svg.lucide-file-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){transform-box:view-box;transform-origin:12px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){animation:icon-hop .62s cubic-bezier(.3,.7,.3,1)}svg.lucide-calendar-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-calendar-plus:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){animation:icon-ring-hop .52s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-calendar-plus:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation-delay:90ms}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-image-plus:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-rise .7s cubic-bezier(.3,.7,.3,1) 80ms both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-rotate-ccw:not(.bell-swing,.search-tilt,.spin){animation:icon-rewind .76s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-rotate-cw:not(.bell-swing,.search-tilt,.spin),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-refresh-cw:not(.bell-swing,.search-tilt,.spin){animation:icon-reload .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-history:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){transform-box:view-box;transform-origin:12px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-history:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2)){animation:icon-rewind .82s cubic-bezier(.3,.7,.3,1)}svg.lucide-history:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){transform-box:view-box;transform-origin:12px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-history:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){animation:icon-sweep-back .82s cubic-bezier(.3,.7,.3,1)}svg.lucide-clock:not(.bell-swing,.search-tilt,.spin) polyline{transform-box:view-box;transform-origin:12px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-clock:not(.bell-swing,.search-tilt,.spin) polyline{animation:icon-tick .9s cubic-bezier(.3,.7,.3,1)}svg.lucide-timer-reset:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){transform-box:view-box;transform-origin:12px 14px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-timer-reset:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-tick-back .9s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-timer-reset:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-press-top .3s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-undo2:not(.bell-swing,.search-tilt,.spin){animation:icon-swing .64s cubic-bezier(.3,.7,.3,1);--icon-x: -3px;--icon-turn: -14deg}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-undo2:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-nudge .64s cubic-bezier(.3,.7,.3,1) 60ms both;--icon-x: -1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-redo2:not(.bell-swing,.search-tilt,.spin){animation:icon-swing .64s cubic-bezier(.3,.7,.3,1);--icon-x: 3px;--icon-turn: 14deg}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-redo2:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-nudge .64s cubic-bezier(.3,.7,.3,1) 60ms both;--icon-x: 1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-save:not(.bell-swing,.search-tilt,.spin){animation:icon-squash .64s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-save:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){animation:icon-shutter .64s cubic-bezier(.3,.7,.3,1) .12s both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-play:not(.bell-swing,.search-tilt,.spin){animation:icon-play .62s cubic-bezier(.3,.7,.3,1)}svg.lucide-circle-play:not(.bell-swing,.search-tilt,.spin) polygon{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-circle-play:not(.bell-swing,.search-tilt,.spin) polygon{animation:icon-play .62s cubic-bezier(.3,.7,.3,1)}svg.lucide-pause:not(.bell-swing,.search-tilt,.spin) rect{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-pause:not(.bell-swing,.search-tilt,.spin) rect{animation:icon-bars .62s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-pause:not(.bell-swing,.search-tilt,.spin) rect:nth-child(1){animation-delay:.11s}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-square:not(.bell-swing,.search-tilt,.spin){animation:icon-stop .56s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-send:not(.bell-swing,.search-tilt,.spin){animation:icon-fly .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-send:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){transform-box:view-box;transform-origin:11px 13px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-send:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-trail .76s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-copy:not(.bell-swing,.search-tilt,.spin) rect{animation:icon-stack .68s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-copy:not(.bell-swing,.search-tilt,.spin) path{animation:icon-nudge .68s cubic-bezier(.3,.7,.3,1);--icon-x: 1px;--icon-y: 1px}svg.lucide-trash2:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(3)){transform-box:view-box;transform-origin:3px 6px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-trash2:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(3)){animation:icon-lid .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-trash2:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(2),line){transform-box:view-box;transform-origin:12px 22px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-trash2:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(2),line){animation:icon-rattle .76s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-trash2:not(.bell-swing,.search-tilt,.spin) line{animation:icon-sink .76s cubic-bezier(.3,.7,.3,1) .14s both}svg.lucide-pencil:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:15% 85%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-pencil:not(.bell-swing,.search-tilt,.spin){animation:icon-write-path .82s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-eye:not(.bell-swing,.search-tilt,.spin){animation:icon-blink .76s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-eye:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-look .76s cubic-bezier(.3,.7,.3,1) .18s both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-eye-off:not(.bell-swing,.search-tilt,.spin){animation:icon-blink .62s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-eye-off:not(.bell-swing,.search-tilt,.spin) path:nth-child(4){animation:icon-draw .52s cubic-bezier(.3,.7,.3,1);stroke-dasharray:29;--icon-length: 29}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-settings2:not(.bell-swing,.search-tilt,.spin) circle:nth-of-type(2){animation:icon-slide .76s cubic-bezier(.3,.7,.3,1);--icon-x: 6px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-settings2:not(.bell-swing,.search-tilt,.spin) circle:nth-of-type(1){animation:icon-slide .76s cubic-bezier(.3,.7,.3,1) .11s both;--icon-x: -6px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-settings:not(.bell-swing,.search-tilt,.spin){animation:icon-gear .86s cubic-bezier(.3,.7,.3,1)}svg.lucide-settings:not(.bell-swing,.search-tilt,.spin) circle{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-settings:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-hub .86s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-log-out:not(.bell-swing,.search-tilt,.spin) :is(polyline,line){animation:icon-out .68s cubic-bezier(.3,.7,.3,1)}svg.lucide-log-out:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:3px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-log-out:not(.bell-swing,.search-tilt,.spin) path{animation:icon-door .68s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-log-in:not(.bell-swing,.search-tilt,.spin) :is(polyline,line){animation:icon-in .68s cubic-bezier(.3,.7,.3,1)}svg.lucide-log-in:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:21px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-log-in:not(.bell-swing,.search-tilt,.spin) path{animation:icon-door .68s cubic-bezier(.3,.7,.3,1) .16s both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-arrow-right:not(.bell-swing,.search-tilt,.spin),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-chevron-right:not(.bell-swing,.search-tilt,.spin){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: 3px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-arrow-left:not(.bell-swing,.search-tilt,.spin),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-chevron-left:not(.bell-swing,.search-tilt,.spin){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: -3px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-arrow-up:not(.bell-swing,.search-tilt,.spin){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-y: -3px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-arrow-down:not(.bell-swing,.search-tilt,.spin),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-chevron-down:not(.bell-swing,.search-tilt,.spin){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-y: 3px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-arrow-up-right:not(.bell-swing,.search-tilt,.spin){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: 2.5px;--icon-y: -2.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-panel-right-close:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: 2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-panel-right-open:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: -2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-panel-right-close:not(.bell-swing,.search-tilt,.spin) path:nth-child(2),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-panel-right-open:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-nudge .72s cubic-bezier(.3,.7,.3,1);--icon-x: -1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-indent-increase:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: 2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-indent-increase:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2),path:nth-child(3)){animation:icon-nudge .6s cubic-bezier(.3,.7,.3,1) 60ms both;--icon-x: 1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-indent-increase:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation-delay:.12s}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-indent-increase:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation-delay:.18s}svg.lucide-bell:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:50% 12%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-bell:not(.bell-swing,.search-tilt,.spin){animation:icon-ring .98s cubic-bezier(.3,.7,.3,1)}svg.lucide-bell:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){transform-box:view-box;transform-origin:12px 4px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-bell:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-clapper .98s cubic-bezier(.3,.7,.3,1)}svg.lucide-key-round:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:65% 35%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-key-round:not(.bell-swing,.search-tilt,.spin){animation:icon-key .86s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-lock:not(.bell-swing,.search-tilt,.spin) path:last-child,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-lock-keyhole:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-shackle .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-lock:not(.bell-swing,.search-tilt,.spin) :is(rect,circle),svg.lucide-lock-keyhole:not(.bell-swing,.search-tilt,.spin) :is(rect,circle){transform-box:view-box;transform-origin:12px 16px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-lock:not(.bell-swing,.search-tilt,.spin) :is(rect,circle),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-lock-keyhole:not(.bell-swing,.search-tilt,.spin) :is(rect,circle){animation:icon-lock-wiggle .76s cubic-bezier(.3,.7,.3,1) .3s both}svg.lucide-lock-keyhole:not(.bell-swing,.search-tilt,.spin) circle{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-lock-keyhole:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-keyhole .76s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-lock-open:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:7px 11px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-lock-open:not(.bell-swing,.search-tilt,.spin) path{animation:icon-shackle-open .82s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-printer:not(.bell-swing,.search-tilt,.spin) rect{animation:icon-print .9s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-printer:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-feed .9s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-printer:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-buzz .9s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-maximize2:not(.bell-swing,.search-tilt,.spin) :is(polyline:nth-child(1),line:nth-child(3)){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: 2px;--icon-y: -2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-maximize2:not(.bell-swing,.search-tilt,.spin) :is(polyline:nth-child(2),line:nth-child(4)){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: -2px;--icon-y: 2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-minimize2:not(.bell-swing,.search-tilt,.spin) :is(polyline:nth-child(1),line:nth-child(4)){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: 1.5px;--icon-y: -1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-minimize2:not(.bell-swing,.search-tilt,.spin) :is(polyline:nth-child(2),line:nth-child(3)){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: -1.5px;--icon-y: 1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-expand:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: 2px;--icon-y: 2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-expand:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: -2px;--icon-y: 2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-expand:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: 2px;--icon-y: -2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-expand:not(.bell-swing,.search-tilt,.spin) path:nth-child(4){animation:icon-corner .68s cubic-bezier(.3,.7,.3,1);--icon-x: -2px;--icon-y: -2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-mail:not(.bell-swing,.search-tilt,.spin){animation:icon-lift .82s cubic-bezier(.3,.7,.3,1)}svg.lucide-mail:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:12px 7px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-mail:not(.bell-swing,.search-tilt,.spin) path{animation:icon-flap .82s cubic-bezier(.3,.7,.3,1)}svg.lucide-mail-plus:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){transform-box:view-box;transform-origin:12px 7px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-mail-plus:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-flap .82s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-mail-plus:not(.bell-swing,.search-tilt,.spin){animation:icon-lift .82s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-round:not(.bell-swing,.search-tilt,.spin) circle,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-check:not(.bell-swing,.search-tilt,.spin) circle,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-plus:not(.bell-swing,.search-tilt,.spin) circle,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-x:not(.bell-swing,.search-tilt,.spin) circle,:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-users:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-nod .7s cubic-bezier(.3,.7,.3,1)}svg.lucide-user-round:not(.bell-swing,.search-tilt,.spin) path{transform-box:view-box;transform-origin:12px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-round:not(.bell-swing,.search-tilt,.spin) path{animation:icon-shrug .7s cubic-bezier(.3,.7,.3,1) 60ms both}svg.lucide-user-check:not(.bell-swing,.search-tilt,.spin) path:nth-child(1),svg.lucide-user-plus:not(.bell-swing,.search-tilt,.spin) path:nth-child(1),svg.lucide-user-x:not(.bell-swing,.search-tilt,.spin) path:nth-child(1),svg.lucide-users:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){transform-box:view-box;transform-origin:9px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-check:not(.bell-swing,.search-tilt,.spin) path:nth-child(1),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-plus:not(.bell-swing,.search-tilt,.spin) path:nth-child(1),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-x:not(.bell-swing,.search-tilt,.spin) path:nth-child(1),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-users:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-shrug .7s cubic-bezier(.3,.7,.3,1) 60ms both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-users:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4)){animation:icon-hop-small .7s cubic-bezier(.3,.7,.3,1) .14s both}svg.lucide-check:not(.bell-swing,.search-tilt,.spin) path{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-check:not(.bell-swing,.search-tilt,.spin) path{animation:icon-check .62s cubic-bezier(.3,.7,.3,1);stroke-dasharray:23;--icon-length: 23}svg.lucide-circle-check:not(.bell-swing,.search-tilt,.spin) path{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-circle-check:not(.bell-swing,.search-tilt,.spin) path{animation:icon-check .62s cubic-bezier(.3,.7,.3,1) 80ms both;stroke-dasharray:9;--icon-length: 9}svg.lucide-circle-check:not(.bell-swing,.search-tilt,.spin) circle{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-circle-check:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-ring-pulse .62s cubic-bezier(.3,.7,.3,1)}svg.lucide-clipboard-check:not(.bell-swing,.search-tilt,.spin) path:last-child{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-clipboard-check:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-check .62s cubic-bezier(.3,.7,.3,1) .12s both;stroke-dasharray:9;--icon-length: 9}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-clipboard-check:not(.bell-swing,.search-tilt,.spin) rect{animation:icon-nudge .5s cubic-bezier(.3,.7,.3,1);--icon-y: -1.5px}svg.lucide-shield-check:not(.bell-swing,.search-tilt,.spin) path:last-child{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-shield-check:not(.bell-swing,.search-tilt,.spin) path:last-child{animation:icon-check .62s cubic-bezier(.3,.7,.3,1) .12s both;stroke-dasharray:9;--icon-length: 9}svg.lucide-shield-check:not(.bell-swing,.search-tilt,.spin) path:first-child{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-shield-check:not(.bell-swing,.search-tilt,.spin) path:first-child{animation:icon-ring-pulse .62s cubic-bezier(.3,.7,.3,1)}svg.lucide-monitor-check:not(.bell-swing,.search-tilt,.spin) path:first-child{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-monitor-check:not(.bell-swing,.search-tilt,.spin) path:first-child{animation:icon-check .62s cubic-bezier(.3,.7,.3,1) .12s both;stroke-dasharray:9;--icon-length: 9}svg.lucide-user-check:not(.bell-swing,.search-tilt,.spin) polyline{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-user-check:not(.bell-swing,.search-tilt,.spin) polyline{animation:icon-check .62s cubic-bezier(.3,.7,.3,1) .2s both;stroke-dasharray:9;--icon-length: 9}svg.lucide-book-open:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){transform-box:view-box;transform-origin:12px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-book-open:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-pages .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-book-open:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){transform-box:view-box;transform-origin:12px 21px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-book-open:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-spine .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-house:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:50% 100%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-house:not(.bell-swing,.search-tilt,.spin){animation:icon-hop-squash .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-house:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){transform-box:view-box;transform-origin:9px 0}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-house:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-door-open .76s cubic-bezier(.3,.7,.3,1) .2s both}svg.lucide-folder:not(.bell-swing,.search-tilt,.spin),svg.lucide-folder-open:not(.bell-swing,.search-tilt,.spin),svg.lucide-monitor:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:50% 100%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-folder:not(.bell-swing,.search-tilt,.spin),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-folder-open:not(.bell-swing,.search-tilt,.spin),:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-monitor:not(.bell-swing,.search-tilt,.spin){animation:icon-hop-squash .7s cubic-bezier(.3,.7,.3,1)}svg.lucide-inbox:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:50% 100%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-inbox:not(.bell-swing,.search-tilt,.spin){animation:icon-hop-squash .7s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-inbox:not(.bell-swing,.search-tilt,.spin) polyline{animation:icon-tray .7s cubic-bezier(.3,.7,.3,1) .16s both}svg.lucide-archive:not(.bell-swing,.search-tilt,.spin) rect{transform-box:view-box;transform-origin:2px 8px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-archive:not(.bell-swing,.search-tilt,.spin) rect{animation:icon-archive-lid .76s cubic-bezier(.3,.7,.3,1)}svg.lucide-archive:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){transform-box:view-box;transform-origin:12px 12px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-archive:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){animation:icon-slot .76s cubic-bezier(.3,.7,.3,1) .12s both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-text:not(.bell-swing,.search-tilt,.spin){animation:icon-nudge .76s cubic-bezier(.3,.7,.3,1);--icon-y: -1.5px}svg.lucide-file-text:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4),path:nth-child(5)){transform-box:view-box;transform-origin:8px 0}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-text:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(3),path:nth-child(4),path:nth-child(5)){animation:icon-write .52s cubic-bezier(.3,.7,.3,1) 80ms both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-text:not(.bell-swing,.search-tilt,.spin) path:nth-child(4){animation-delay:.17s}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-text:not(.bell-swing,.search-tilt,.spin) path:nth-child(5){animation-delay:.26s}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-code:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-double .76s cubic-bezier(.3,.7,.3,1);--icon-x: -1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-file-code:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-double .76s cubic-bezier(.3,.7,.3,1);--icon-x: 1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-layers:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-spread .82s cubic-bezier(.3,.7,.3,1);--icon-y: -4px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-layers:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-spread .82s cubic-bezier(.3,.7,.3,1) 50ms both;--icon-y: -2px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-layers:not(.bell-swing,.search-tilt,.spin) path:nth-child(3){animation:icon-spread .82s cubic-bezier(.3,.7,.3,1) .1s both;--icon-y: .5px}svg.lucide-ellipsis:not(.bell-swing,.search-tilt,.spin) circle{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-ellipsis:not(.bell-swing,.search-tilt,.spin) circle{animation:icon-dot .62s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-ellipsis:not(.bell-swing,.search-tilt,.spin) circle:nth-child(1){animation-delay:90ms}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-ellipsis:not(.bell-swing,.search-tilt,.spin) circle:nth-child(2){animation-delay:.18s}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-menu:not(.bell-swing,.search-tilt,.spin) line:nth-child(2){animation:icon-nudge .62s cubic-bezier(.3,.7,.3,1);--icon-x: -2.5px}svg.lucide-menu:not(.bell-swing,.search-tilt,.spin) line:nth-child(1){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-menu:not(.bell-swing,.search-tilt,.spin) line:nth-child(1){animation:icon-squeeze .62s cubic-bezier(.3,.7,.3,1) 70ms both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-menu:not(.bell-swing,.search-tilt,.spin) line:nth-child(3){animation:icon-nudge .62s cubic-bezier(.3,.7,.3,1) .14s both;--icon-x: 2.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-graduation-cap:not(.bell-swing,.search-tilt,.spin){animation:icon-toss .86s cubic-bezier(.3,.7,.3,1)}svg.lucide-graduation-cap:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){transform-box:view-box;transform-origin:22px 10px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-graduation-cap:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-tassel .86s cubic-bezier(.3,.7,.3,1) .12s both}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-square-terminal:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: 1.5px}svg.lucide-square-terminal:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){transform-box:view-box;transform-origin:11px 13px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-square-terminal:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-type .72s cubic-bezier(.3,.7,.3,1) .12s both}svg.lucide-search:not(.bell-swing,.search-tilt,.spin){transform-box:view-box;transform-origin:45% 45%}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-search:not(.bell-swing,.search-tilt,.spin){animation:icon-scan .86s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-zoom-in:not(.bell-swing,.search-tilt,.spin){animation:icon-zoom .68s cubic-bezier(.3,.7,.3,1)}svg.lucide-zoom-in:not(.bell-swing,.search-tilt,.spin) :is(line:nth-child(3),line:nth-child(4)){transform-box:view-box;transform-origin:11px 11px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-zoom-in:not(.bell-swing,.search-tilt,.spin) :is(line:nth-child(3),line:nth-child(4)){animation:icon-spin-pop .68s cubic-bezier(.3,.7,.3,1) .1s both}svg.lucide-qr-code:not(.bell-swing,.search-tilt,.spin) rect{transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-qr-code:not(.bell-swing,.search-tilt,.spin) rect{animation:icon-pop-in .56s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-qr-code:not(.bell-swing,.search-tilt,.spin) rect:nth-child(2){animation-delay:90ms}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-qr-code:not(.bell-swing,.search-tilt,.spin) rect:nth-child(3){animation-delay:.18s}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-crop:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: -1.5px;--icon-y: 1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-crop:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation:icon-double .72s cubic-bezier(.3,.7,.3,1);--icon-x: 1.5px;--icon-y: -1.5px}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-flip-horizontal:not(.bell-swing,.search-tilt,.spin){animation:icon-flip .72s cubic-bezier(.3,.7,.3,1)}svg.lucide-list-ordered:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2),path:nth-child(3)){transform-box:view-box;transform-origin:10px 0}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-list-ordered:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(1),path:nth-child(2),path:nth-child(3)){animation:icon-write .52s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-list-ordered:not(.bell-swing,.search-tilt,.spin) path:nth-child(1){animation-delay:90ms}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-list-ordered:not(.bell-swing,.search-tilt,.spin) path:nth-child(2){animation-delay:.18s}svg.lucide-list-ordered:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(4),path:nth-child(5),path:nth-child(6)){transform-box:fill-box;transform-origin:center}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-list-ordered:not(.bell-swing,.search-tilt,.spin) :is(path:nth-child(4),path:nth-child(5),path:nth-child(6)){animation:icon-pop-in .52s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-minus:not(.bell-swing,.search-tilt,.spin){animation:icon-squeeze .52s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-ban:not(.bell-swing,.search-tilt,.spin){animation:icon-ban .68s cubic-bezier(.3,.7,.3,1)}:where(a,button,summary,[role=button],[role=tab],[role=menuitem]):where(:hover,:focus-visible):not(:disabled,[aria-disabled=true],[aria-busy=true],.action-run,.action-submit,.sort-heading) svg.lucide-ban:not(.bell-swing,.search-tilt,.spin) path{animation:icon-draw .48s cubic-bezier(.3,.7,.3,1) .12s both;stroke-dasharray:21;--icon-length: 21}@keyframes icon-nudge{45%{transform:translate(var(--icon-x, 0),var(--icon-y, 0))}}@keyframes icon-double{25%{transform:translate(var(--icon-x, 0),var(--icon-y, 0))}50%{transform:translate(0)}70%{transform:translate(calc(var(--icon-x, 0px) * .6),calc(var(--icon-y, 0px) * .6))}88%{transform:translate(0)}}@keyframes icon-drop{30%{transform:translateY(4px)}50%{transform:translateY(-1.5px)}68%{transform:translateY(1px)}84%{transform:translateY(0)}}@keyframes icon-land{24%{transform:scaleY(1)}34%{transform:scale(1.06,.8)}52%{transform:scale(.98,1.06)}70%{transform:scale(1)}}@keyframes icon-launch{18%{transform:translateY(1px)}42%{transform:translateY(-4.5px)}62%{transform:translateY(.8px)}80%{transform:translateY(-.6px)}}@keyframes icon-crouch{16%{transform:scale(1.06,.82)}38%{transform:scale(.98,1.06)}58%{transform:scale(1)}}@keyframes icon-spin-pop{0%{transform:rotate(0) scale(1)}55%{transform:rotate(100deg) scale(1.25)}80%{transform:rotate(86deg) scale(.95)}to{transform:rotate(90deg) scale(1)}}@keyframes icon-spin-shrink{0%{transform:rotate(0) scale(1)}50%{transform:rotate(100deg) scale(.75)}80%{transform:rotate(86deg) scale(1.08)}to{transform:rotate(90deg) scale(1)}}@keyframes icon-hop{35%{transform:translateY(-2.5px)}65%{transform:translateY(.5px)}}@keyframes icon-hop-small{35%{transform:translateY(-2px)}65%{transform:translateY(.4px)}}@keyframes icon-ring-hop{40%{transform:translateY(-2px)}}@keyframes icon-rise{45%{transform:translateY(-2.5px)}75%{transform:translateY(.4px)}}@keyframes icon-hop-squash{18%{transform:scale(1.08,.88)}42%{transform:translateY(-3.5px) scale(.94,1.08)}64%{transform:translateY(0) scale(1.1,.88)}82%{transform:scale(.98,1.03)}}@keyframes icon-rewind{0%{transform:rotate(0)}70%{transform:rotate(-385deg)}to{transform:rotate(-360deg)}}@keyframes icon-reload{0%{transform:rotate(0)}12%{transform:rotate(-20deg)}72%{transform:rotate(380deg)}to{transform:rotate(360deg)}}@keyframes icon-sweep-back{0%{transform:rotate(0)}80%{transform:rotate(-740deg)}to{transform:rotate(-720deg)}}@keyframes icon-tick{0%{transform:rotate(0)}20%{transform:rotate(95deg)}25%{transform:rotate(90deg)}45%{transform:rotate(185deg)}50%{transform:rotate(180deg)}70%{transform:rotate(275deg)}75%{transform:rotate(270deg)}95%{transform:rotate(365deg)}to{transform:rotate(360deg)}}@keyframes icon-tick-back{0%{transform:rotate(0)}20%{transform:rotate(-95deg)}25%{transform:rotate(-90deg)}45%{transform:rotate(-185deg)}50%{transform:rotate(-180deg)}70%{transform:rotate(-275deg)}75%{transform:rotate(-270deg)}95%{transform:rotate(-365deg)}to{transform:rotate(-360deg)}}@keyframes icon-press-top{45%{transform:translateY(1.5px)}}@keyframes icon-swing{35%{transform:translate(var(--icon-x)) rotate(var(--icon-turn))}65%{transform:translate(calc(var(--icon-x) * -.3)) rotate(calc(var(--icon-turn) * -.3))}85%{transform:translate(0) rotate(0)}}@keyframes icon-squash{25%{transform:scale(1.1,.78) translateY(2px)}50%{transform:scale(.94,1.08) translateY(-1px)}72%{transform:scale(1.03,.97)}}@keyframes icon-shutter{40%{transform:translate(3px)}70%{transform:translate(-.5px)}}@keyframes icon-play{25%{transform:translate(-1px) scale(.9)}55%{transform:translate(2.5px) scale(1.12)}80%{transform:translate(-.3px) scale(.98)}}@keyframes icon-bars{30%{transform:scaleY(.55)}60%{transform:scaleY(1.1)}}@keyframes icon-stop{30%{transform:scale(.72) rotate(-8deg)}65%{transform:scale(1.08) rotate(3deg)}}@keyframes icon-fly{20%{transform:translate(-1px,1px) rotate(-6deg)}50%{transform:translate(4px,-4px) rotate(10deg)}75%{transform:translate(-.5px,.5px) rotate(-2deg)}}@keyframes icon-trail{45%{transform:scale(.4)}75%{transform:scale(1.05)}}@keyframes icon-stack{35%{transform:translate(-4px,-4px)}60%{transform:translate(.8px,.8px)}80%{transform:translate(-.3px,-.3px)}}@keyframes icon-lid{30%{transform:translateY(-3px) rotate(-22deg)}48%{transform:translateY(-2px) rotate(-14deg)}70%{transform:translateY(.5px) rotate(4deg)}86%{transform:rotate(-1.5deg)}}@keyframes icon-rattle{55%{transform:rotate(0)}64%{transform:rotate(-5deg)}74%{transform:rotate(4deg)}84%{transform:rotate(-2deg)}}@keyframes icon-sink{40%{transform:translateY(1.5px)}70%{transform:translateY(-.4px)}}@keyframes icon-write-path{15%{transform:translate(-1px,1px) rotate(-12deg)}32%{transform:translate(1.5px,-.5px) rotate(6deg)}49%{transform:translate(-.5px,1px) rotate(-10deg)}66%{transform:translate(2px) rotate(5deg)}84%{transform:translate(0) rotate(-2deg)}}@keyframes icon-blink{12%{transform:scaleY(1)}22%{transform:scaleY(.1)}34%{transform:scaleY(1)}}@keyframes icon-look{25%{transform:translate(-2.5px)}55%{transform:translate(2.5px)}80%{transform:translate(0)}}@keyframes icon-draw{0%{stroke-dashoffset:var(--icon-length)}to{stroke-dashoffset:0}}@keyframes icon-check{0%{stroke-dashoffset:var(--icon-length);transform:scale(1)}55%{stroke-dashoffset:0;transform:scale(1)}75%{transform:scale(1.2)}to{stroke-dashoffset:0;transform:scale(1)}}@keyframes icon-ring-pulse{30%{transform:scale(.88)}65%{transform:scale(1.06)}}@keyframes icon-slide{40%{transform:translate(var(--icon-x))}65%{transform:translate(calc(var(--icon-x) * -.2))}85%{transform:translate(0)}}@keyframes icon-gear{0%{transform:rotate(0)}10%{transform:rotate(-15deg)}70%{transform:rotate(195deg)}to{transform:rotate(180deg)}}@keyframes icon-hub{30%{transform:scale(.6)}70%{transform:scale(1.15)}}@keyframes icon-out{30%{transform:translate(4.5px)}55%{transform:translate(4.5px)}80%{transform:translate(-.6px)}}@keyframes icon-in{0%{transform:translate(0)}28%{transform:translate(-4px)}58%{transform:translate(1.5px)}80%{transform:translate(-.4px)}}@keyframes icon-door{25%{transform:scaleX(1)}45%{transform:scaleX(.7)}75%{transform:scaleX(1.05)}}@keyframes icon-ring{10%{transform:rotate(16deg)}24%{transform:rotate(-14deg)}38%{transform:rotate(10deg)}52%{transform:rotate(-7deg)}66%{transform:rotate(4deg)}80%{transform:rotate(-2deg)}}@keyframes icon-clapper{14%{transform:translate(-2px)}28%{transform:translate(2px)}42%{transform:translate(-1.5px)}56%{transform:translate(1px)}70%{transform:translate(-.5px)}}@keyframes icon-key{25%{transform:translate(-1.5px,1.5px)}50%{transform:translate(-1.5px,1.5px) rotate(-38deg)}72%{transform:translate(0) rotate(6deg)}88%{transform:rotate(-2deg)}}@keyframes icon-shackle{30%{transform:translateY(-3px)}50%{transform:translateY(-3px)}64%{transform:translateY(.6px)}76%{transform:translateY(0)}}@keyframes icon-lock-wiggle{20%{transform:rotate(-5deg)}45%{transform:rotate(4deg)}70%{transform:rotate(-2deg)}}@keyframes icon-keyhole{35%{transform:scale(1.8)}65%{transform:scale(.9)}}@keyframes icon-shackle-open{25%{transform:translateY(-2.5px)}50%{transform:translateY(-2.5px) rotate(-18deg)}75%{transform:translateY(0) rotate(3deg)}90%{transform:rotate(-1deg)}}@keyframes icon-print{15%{transform:translateY(-2px)}45%{transform:translateY(3px)}60%{transform:translateY(3px)}85%{transform:translateY(-.4px)}}@keyframes icon-feed{15%{transform:translateY(0)}45%{transform:translateY(2px)}70%{transform:translateY(0)}}@keyframes icon-buzz{20%{transform:translate(0)}26%{transform:translate(-.6px)}32%{transform:translate(.6px)}38%{transform:translate(-.6px)}44%{transform:translate(.6px)}50%{transform:translate(0)}}@keyframes icon-corner{35%{transform:translate(var(--icon-x),var(--icon-y))}62%{transform:translate(calc(var(--icon-x) * -.3),calc(var(--icon-y) * -.3))}82%{transform:translate(0)}}@keyframes icon-lift{35%{transform:translateY(-2px) rotate(-6deg)}70%{transform:translateY(.4px) rotate(2deg)}}@keyframes icon-flap{20%{transform:scaleY(1)}50%{transform:scaleY(-.75)}62%{transform:scaleY(-.75)}88%{transform:scaleY(1.08)}}@keyframes icon-nod{25%{transform:translateY(-2.5px)}50%{transform:translateY(.6px)}70%{transform:translateY(-1px)}86%{transform:translateY(0)}}@keyframes icon-shrug{25%{transform:scaleY(.88)}50%{transform:scaleY(1.05)}72%{transform:scaleY(1)}}@keyframes icon-pages{30%{transform:scaleX(.7)}60%{transform:scaleX(1.08)}80%{transform:scaleX(.98)}}@keyframes icon-spine{30%{transform:scaleY(1.08)}60%{transform:scaleY(.96)}}@keyframes icon-door-open{20%{transform:scaleX(1)}45%{transform:scaleX(.25)}65%{transform:scaleX(.25)}90%{transform:scaleX(1.05)}}@keyframes icon-tray{40%{transform:translateY(1.8px)}70%{transform:translateY(-.4px)}}@keyframes icon-archive-lid{30%{transform:translateY(-3px) rotate(-10deg)}55%{transform:translateY(-2px) rotate(-6deg)}75%{transform:translateY(.5px) rotate(2deg)}}@keyframes icon-slot{40%{transform:scaleX(1.7)}70%{transform:scaleX(.9)}}@keyframes icon-write{0%{transform:scaleX(0)}}@keyframes icon-spread{35%{transform:translateY(var(--icon-y))}58%{transform:translateY(var(--icon-y))}80%{transform:translateY(calc(var(--icon-y) * -.15))}}@keyframes icon-dot{35%{transform:translateY(-3px) scale(1.4)}70%{transform:translateY(.4px) scale(1)}}@keyframes icon-squeeze{35%{transform:scaleX(.5)}70%{transform:scaleX(1.1)}}@keyframes icon-toss{35%{transform:translateY(-4px) rotate(-18deg)}60%{transform:translateY(.5px) rotate(5deg) scale(1.06,.92)}80%{transform:rotate(-2deg)}}@keyframes icon-tassel{30%{transform:rotate(24deg)}55%{transform:rotate(-16deg)}78%{transform:rotate(6deg)}}@keyframes icon-type{0%{transform:scaleX(0)}30%{transform:scaleX(.5)}60%{transform:scaleX(1)}}@keyframes icon-scan{20%{transform:translate(-1.5px,-1px) rotate(-10deg)}40%{transform:translate(1.5px,-1px) rotate(6deg)}60%{transform:translate(1.5px,1px) rotate(-4deg)}80%{transform:translate(-1px,1px) rotate(3deg)}}@keyframes icon-zoom{40%{transform:scale(1.22)}70%{transform:scale(.96)}}@keyframes icon-pop-in{0%{transform:scale(1)}30%{transform:scale(.5)}70%{transform:scale(1.15)}}@keyframes icon-flip{45%{transform:scaleX(-1)}70%{transform:scaleX(-1)}}@keyframes icon-ban{0%{transform:rotate(0)}70%{transform:rotate(195deg)}to{transform:rotate(180deg)}}}@media(prefers-reduced-motion:no-preference){.leaving-layer{position:fixed;inset:0;z-index:calc(var(--layer-toast) + 10);pointer-events:none}.switch-bar{position:fixed;z-index:calc(var(--layer-dialog) - 1);pointer-events:none;transform-origin:left center}[data-switching=shadow]{box-shadow:none!important}[data-switching=after]:after{opacity:0!important}[role=tab],.desktop-nav a,.mobile-nav a,.review-switch button,.settings-section-picker button,.ws-sample-tabs button,.dashboard-tabs button,.email-panel-tabs button,.choice-chip,.toggle-chip{transition:color .16s ease,background-color .18s ease,border-color .18s ease}.modal[open]:not(.console-window){animation:modal-in .22s cubic-bezier(.2,.8,.2,1)}.modal[open]:not(.console-window)::backdrop{animation:backdrop-in .2s ease-out}.toast{animation:toast-in .26s cubic-bezier(.2,.8,.2,1)}.select-search{animation:menu-in .17s cubic-bezier(.2,.8,.2,1);transform-origin:top center}.mobile-nav{animation:menu-drop .22s cubic-bezier(.2,.8,.2,1)}.mobile-nav a{animation:menu-item-in .26s cubic-bezier(.2,.8,.2,1) both}.mobile-nav a:nth-child(2){animation-delay:30ms}.mobile-nav a:nth-child(3){animation-delay:60ms}.mobile-nav a:nth-child(4){animation-delay:90ms}.mobile-nav a:nth-child(5){animation-delay:.12s}.mobile-nav a:nth-child(n+6){animation-delay:.15s}@keyframes modal-in{0%{opacity:0;translate:0 12px;scale:.96}}@keyframes backdrop-in{0%{opacity:0}}@keyframes toast-in{0%{opacity:0;translate:0 12px;scale:.95}}@keyframes menu-in{0%{opacity:0;translate:0 -4px;scale:.95}}@keyframes menu-drop{0%{opacity:0;translate:0 -8px}}@keyframes menu-item-in{0%{opacity:0;translate:-8px 0}}}@media(prefers-reduced-motion:no-preference){input:not([type=checkbox],[type=radio],[type=range],[type=color]),textarea,select{transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}input::placeholder,textarea::placeholder{transition:opacity .18s ease}input:focus::placeholder,textarea:focus::placeholder{opacity:.45}:is(a,button,summary,input,select,textarea,[role=tab]):focus-visible:not(.cm-editor *,.fail-shake){animation:focus-in .22s cubic-bezier(.2,.8,.2,1)}.field-error .field-control{animation:field-shake .36s ease-in-out}.field .field-message{animation:drop-in .24s cubic-bezier(.2,.8,.2,1)}.field .field-message svg{animation:icon-pop .36s cubic-bezier(.2,.8,.2,1) 80ms both}.alert{animation:drop-in .26s cubic-bezier(.2,.8,.2,1)}.alert>svg{animation:icon-pop .42s cubic-bezier(.2,.8,.2,1) 90ms both}.alert.error>svg{animation:icon-pop .42s cubic-bezier(.2,.8,.2,1) 90ms both,alert-nudge .42s ease-in-out .32s}.toast.leaving{animation:toast-out .22s ease-in forwards}.password-strength-bar i{transition:background-color .2s ease}.password-strength-bar i.on{transform-origin:left center;animation:strength-on .3s cubic-bezier(.2,.8,.2,1)}.tab-count.just-changed,.notification-button .just-changed{animation:count-pop .36s ease-in-out}.sort-heading svg{animation:sort-flip .26s cubic-bezier(.2,.8,.2,1)}.data-table td{transition:background-color .14s ease}.record,.person-row,.file-item,.course-card{transition:background-color .16s ease,border-color .16s ease}.button{transition:background-color .14s ease,border-color .14s ease,color .14s ease,opacity .18s ease,scale .11s ease}.button:active:not(:disabled,.action-run,.action-submit){scale:.97}.text-link,.text-button{transition:color .14s ease,text-underline-offset .16s ease}.text-link:hover,.text-button:hover{text-underline-offset:2px}.avatar img{animation:photo-in .26s ease-out}.brand:hover .brand-lockup:not(.draw-in) .brand-prompt path,.brand:focus-visible .brand-lockup:not(.draw-in) .brand-prompt path{stroke-dasharray:1;animation:prompt-draw .36s ease-out both}.brand:hover .brand-lockup:not(.draw-in) .brand-prompt path+path,.brand:focus-visible .brand-lockup:not(.draw-in) .brand-prompt path+path{animation-delay:.2s}.brand:hover .brand-lockup:not(.draw-in) .brand-front,.brand:focus-visible .brand-lockup:not(.draw-in) .brand-front{animation:panel-lift .56s cubic-bezier(.3,1.3,.5,1)}@keyframes focus-in{0%{outline-offset:6px;outline-color:transparent}}@keyframes field-shake{20%{translate:-4px 0}40%{translate:4px 0}60%{translate:-2.5px 0}80%{translate:1.5px 0}}@keyframes drop-in{0%{opacity:0;translate:0 -5px}}@keyframes icon-pop{0%{scale:.5;opacity:0}}@keyframes alert-nudge{25%{rotate:-12deg}55%{rotate:9deg}80%{rotate:-4deg}}@keyframes toast-out{to{opacity:0;translate:0 10px;scale:.96}}@keyframes strength-on{0%{transform:scaleX(0)}}@keyframes count-pop{40%{scale:1.2}}@keyframes sort-flip{0%{rotate:180deg;scale:.6;opacity:0}}@keyframes photo-in{0%{opacity:0;scale:.85}}@keyframes prompt-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes panel-lift{40%{translate:10px -14px}}}
