:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:var(--font-weight-normal);color-scheme:light dark;color:var(--color-text-primary);background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:var(--font-weight-medium);color:var(--color-primary);text-decoration:inherit}a:hover{color:var(--color-primary-hover)}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:var(--font-size-4xl);line-height:1.1}button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:#000;border-color:transparent}button:focus{outline:2px solid var(--color-primary);outline-offset:2px}button:disabled{opacity:.6;cursor:not-allowed}button:hover{border-color:var(--color-primary)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (max-width: 768px){.sign-in-link{background:transparent!important;border:none;color:var(--color-primary);text-decoration:underline;padding:0;font-size:inherit;font-weight:inherit;cursor:pointer}.sign-in-link:hover{color:var(--color-primary-hover);text-decoration:underline}}@media (prefers-color-scheme: light){:root{color:var(--color-text-primary);background-color:#fff}a:hover{color:var(--color-primary-hover)}button{background-color:#f9f9f9}}@media (prefers-color-scheme: light) and (max-width: 768px){.sign-in-link{color:var(--color-primary)}.sign-in-link:hover{color:var(--color-primary-hover)}}.card-base,.profile-container{background-color:#f0f1f2;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}@media (prefers-color-scheme: dark){:root{--color-text-primary: var(--color-gray-200);--color-text-secondary: var(--color-gray-300);--color-text-muted: var(--color-gray-500)}h1,h2,h3,h4,h5,h6,label{color:var(--color-text-primary)}select option{color:var(--color-text-primary);background:var(--color-gray-900)}.button-secondary{background-color:#0f0f0f;color:var(--color-text-primary);border-color:var(--color-gray-600)}.button-secondary:hover:not(:disabled){background-color:#1a1a1a;border-color:var(--color-gray-500)}.button-ghost{color:var(--color-secondary);border-color:var(--color-secondary)}.button-ghost:hover:not(:disabled){background-color:#61dafb1a}.card-base,.profile-container{background-color:#222;border-color:var(--color-gray-700)}.input-base{background-color:var(--color-gray-950);border-color:var(--color-gray-600);color:var(--color-text-primary)}.input-base:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff33}.code-container{background-color:var(--color-gray-950);border-color:var(--color-gray-700)}.submit-button.disabled{color:var(--color-gray-700);background-color:#0a0a0a}.submit-button.approve-button.enabled,.submit-button.reject-button.enabled{color:var(--color-gray-500)}.issues-section,.missed-section,.matched-section{color:var(--color-text-primary)}}.profile-container{margin:var(--spacing-sm) 0}.profile-container .profile-field{margin-bottom:var(--spacing-lg)}.profile-container .error-message{color:var(--color-danger)}.profile-container .claims-list{max-height:200px;overflow-y:auto}.button-group{display:flex;align-items:center}.patch-purpose{margin-bottom:var(--spacing-2xl);font-size:var(--font-size-base);line-height:1.35;color:var(--color-text-primary);text-align:left}.patch-purpose strong{font-weight:var(--font-weight-bold);margin-right:var(--spacing-xs);font-size:var(--font-size-base)}.patch-purpose em{font-style:italic;color:var(--color-text-secondary);font-size:var(--font-size-base)}@media (prefers-color-scheme: dark){.profile-container{background-color:var(--color-gray-900);border-color:var(--color-gray-700);color:var(--color-text-primary)}.profile-container .profile-field,.patch-purpose{color:var(--color-text-primary)}.patch-purpose strong{color:#fff}.patch-purpose em{color:var(--color-text-secondary)}}.card-base{background-color:#f0f1f2;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}@media (prefers-color-scheme: dark){:root{--color-text-primary: var(--color-gray-200);--color-text-secondary: var(--color-gray-300);--color-text-muted: var(--color-gray-500)}h1,h2,h3,h4,h5,h6,label{color:var(--color-text-primary)}select option{color:var(--color-text-primary);background:var(--color-gray-900)}.button-secondary{background-color:#0f0f0f;color:var(--color-text-primary);border-color:var(--color-gray-600)}.button-secondary:hover:not(:disabled){background-color:#1a1a1a;border-color:var(--color-gray-500)}.button-ghost{color:var(--color-secondary);border-color:var(--color-secondary)}.button-ghost:hover:not(:disabled){background-color:#61dafb1a}.card-base{background-color:#222;border-color:var(--color-gray-700)}.input-base{background-color:var(--color-gray-950);border-color:var(--color-gray-600);color:var(--color-text-primary)}.input-base:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff33}.code-container{background-color:var(--color-gray-950);border-color:var(--color-gray-700)}.submit-button.disabled{color:var(--color-gray-700);background-color:#0a0a0a}.submit-button.approve-button.enabled,.submit-button.reject-button.enabled{color:var(--color-gray-500)}.issues-section,.missed-section,.matched-section{color:var(--color-text-primary)}}.code-review-practice{padding:var(--spacing-xl)}.practice-start{text-align:center;padding:var(--spacing-xl)}.practice-header{margin-bottom:var(--spacing-xl);text-align:center;max-width:800px;margin-left:auto;margin-right:auto}.practice-header .header-controls{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.practice-header .test-info{margin-top:var(--spacing-md)}.practice-header .test-info .test-id{background-color:var(--color-gray-100);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-family:monospace;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.common-selection{display:flex;align-items:center;gap:var(--spacing-sm);margin:var(--spacing-sm) 0}.common-selection label{font-weight:var(--font-weight-bold)}.common-dropdown{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;background-color:var(--color-gray-50);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-sm);line-height:1.4;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.common-dropdown:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff1a}.common-dropdown::placeholder{color:var(--color-text-secondary)}.common-dropdown:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #007bff40}.common-dropdown:hover{border-color:var(--color-gray-500)}.loading-message{text-align:center;padding:var(--spacing-xl)}.error-message{color:var(--color-danger);padding:var(--spacing-md);border:1px solid var(--color-danger);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-xl)}.signin-required{color:var(--color-danger);margin-top:var(--spacing-md)}.code-section{margin-bottom:var(--spacing-xl)}.code-viewer-container{background-color:var(--color-gray-50);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--font-size-sm);line-height:1.4;overflow:auto;padding:var(--spacing-sm)}.code-viewer-container .cm-editor{text-align:left}.code-viewer-container .cm-content{text-align:left;white-space:pre}.code-viewer-container .cm-line{text-align:left}.patch-controls{display:flex;gap:var(--spacing-xs);align-items:center;margin:var(--spacing-xs) 0 var(--spacing-sm)}.patch-controls label{font-weight:var(--font-weight-bold);margin-right:var(--spacing-sm)}.patch-controls button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:var(--color-gray-100);color:var(--color-gray-700);border-color:var(--color-gray-300);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.patch-controls button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.patch-controls button:disabled{opacity:.6;cursor:not-allowed}.patch-controls button:hover:not(:disabled){background-color:var(--color-gray-200);border-color:var(--color-gray-400)}.patch-controls button.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.merge-single-editor{border:1px solid var(--color-gray-200);border-radius:var(--border-radius-sm);overflow:hidden}.unified-diff{font-family:monospace;white-space:pre-wrap;background:var(--color-gray-100);padding:var(--spacing-xs);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm)}.unified-line.removed{background:#dc354514;color:#a71d2a}.unified-line.added{background:#28a74514;color:#165b2e}.unified-line.equal{background:transparent;color:inherit}.review-section{margin-bottom:var(--spacing-xl);max-width:800px;margin-left:auto;margin-right:auto}.review-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;background-color:var(--color-gray-50);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);min-height:150px;font-family:monospace;font-size:var(--font-size-sm);resize:none}.review-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff1a}.review-textarea::placeholder{color:var(--color-text-secondary)}.character-count{display:flex;align-items:center;margin-top:var(--spacing-xs);font-size:var(--font-size-xs)}.character-count .count{color:var(--color-text-secondary)}.character-count .count.warning{color:var(--color-warning);font-weight:var(--font-weight-bold)}.character-count .count.limit{color:var(--color-danger);font-weight:var(--font-weight-bold)}.character-count .warning-text{color:var(--color-warning);font-weight:var(--font-weight-bold);font-size:var(--font-size-xs)}.character-count .limit-text{color:var(--color-danger);font-weight:var(--font-weight-bold);font-size:var(--font-size-xs)}.submit-section{text-align:center}.submit-buttons{display:flex;gap:var(--spacing-lg);justify-content:center}.submit-button{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;text-decoration:none;padding:var(--spacing-sm) var(--spacing-lg);color:#fff;border:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-normal)}.submit-button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.submit-button:disabled{opacity:.6;cursor:not-allowed}.submit-button.enabled{cursor:pointer}.submit-button.disabled{background-color:var(--color-gray-100);color:var(--color-gray-800)!important;cursor:not-allowed}.submit-button.approve-button.enabled{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:var(--color-gray-100);border-color:var(--color-gray-300);color:var(--color-gray-700)}.submit-button.approve-button.enabled:focus{outline:2px solid var(--color-primary);outline-offset:2px}.submit-button.approve-button.enabled:disabled{opacity:.6;cursor:not-allowed}.submit-button.approve-button.enabled:hover:not(:disabled){background-color:var(--color-gray-200);border-color:var(--color-gray-400)}.submit-button.approve-button.enabled:hover{transform:translateY(-1px)}.submit-button.reject-button.enabled{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:var(--color-gray-100);border-color:var(--color-gray-300);color:var(--color-gray-700)}.submit-button.reject-button.enabled:focus{outline:2px solid var(--color-primary);outline-offset:2px}.submit-button.reject-button.enabled:disabled{opacity:.6;cursor:not-allowed}.submit-button.reject-button.enabled:hover:not(:disabled){background-color:var(--color-gray-200);border-color:var(--color-gray-400)}.submit-button.reject-button.enabled:hover{transform:translateY(-1px)}.loading-indicator{margin-top:var(--spacing-md);color:var(--color-info);font-style:italic}.submission-result{margin-top:var(--spacing-xl);background-color:var(--color-gray-100);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-sm);text-align:left;overflow-wrap:anywhere;word-break:break-word;max-width:800px;margin-left:auto;margin-right:auto}.submission-result h4{margin-top:0;color:var(--color-gray-700)}.submission-result p{margin-bottom:0;color:var(--color-success);font-weight:var(--font-weight-bold)}.submission-result .summary-block{background:#fff;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-sm);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;font-family:system-ui,sans-serif;font-size:var(--font-size-sm);line-height:1.4;margin:var(--spacing-xs) 0 var(--spacing-lg);text-align:left}.submission-result ul{padding-left:var(--spacing-xl);margin:var(--spacing-sm) 0 var(--spacing-lg);text-align:left;list-style:disc}.submission-result li{margin-bottom:var(--spacing-sm);text-align:left;line-height:1.35}.explain-row{margin-top:var(--spacing-md)}.explain-button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:transparent;color:var(--color-primary);border-color:var(--color-primary);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--border-radius-sm)}.explain-button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.explain-button:disabled{opacity:.6;cursor:not-allowed}.explain-button:hover:not(:disabled){background-color:#646cff1a}.explain-button:hover:not(:disabled){background:#007bff1a}.explain-button.disabled,.explain-button[disabled]{background:var(--color-gray-200);color:var(--color-gray-500);border-color:var(--color-gray-300);cursor:not-allowed}.explanation-block{margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-2xl);margin-left:0;padding:0 0 0 var(--spacing-lg);position:relative;color:var(--color-text-primary);font-size:var(--font-size-sm);background:transparent;transition:max-height var(--transition-slow),opacity var(--transition-slow),transform var(--transition-slow),padding var(--transition-fast);max-height:0;opacity:0;transform:scaleY(.98) translateY(-6px);overflow:hidden}.explanation-block:before{content:"";position:absolute;left:var(--spacing-xs);top:0;width:3px;height:100%;background:var(--color-gray-200);border-radius:2px}.explanation-block.open{max-height:1000px;opacity:1;transform:scaleY(1) translateY(0);padding:0 0 0 var(--spacing-lg)}.explanation-text{white-space:pre-wrap;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-primary);margin-left:0;line-height:1.5}.explanation-examples{background:transparent;border:none;padding:0;border-radius:0;margin-top:var(--spacing-sm)}.explanation-examples pre{margin:var(--spacing-sm) 0 0;white-space:pre-wrap;font-family:monospace;font-size:var(--font-size-xs)}.explain-error{margin-top:var(--spacing-sm);color:var(--color-danger);font-size:var(--font-size-xs)}.explanation-block{transition:max-height .45s ease,opacity .45s ease,transform .45s ease,padding .28s ease;max-height:0;opacity:0;transform:scaleY(.98) translateY(-6px);overflow:hidden}.explanation-block.open{max-height:1000px;opacity:1;transform:scaleY(1) translateY(0);padding:0 0 0 16px}.explanation-block.closed{max-height:0;opacity:0;transform:scaleY(.98) translateY(-6px);padding:0}.recommended-code-section{margin-top:var(--spacing-sm);max-width:800px;margin-left:auto;margin-right:auto}.recommended-code-section .toggle-recommended-code{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:var(--color-gray-100);color:var(--color-gray-700);border-color:var(--color-gray-300);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--border-radius-sm)}.recommended-code-section .toggle-recommended-code:focus{outline:2px solid var(--color-primary);outline-offset:2px}.recommended-code-section .toggle-recommended-code:disabled{opacity:.6;cursor:not-allowed}.recommended-code-section .toggle-recommended-code:hover:not(:disabled){background-color:var(--color-gray-200);border-color:var(--color-gray-400)}.recommended-code-section .toggle-recommended-code:hover:not(:disabled){background-color:var(--color-gray-50)}.recommended-code-section .recommended-code-block{margin-top:var(--spacing-xs);background-color:var(--color-gray-50);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--font-size-sm);line-height:1.4;overflow:auto;padding:var(--spacing-sm);transition:max-height var(--transition-slow),opacity var(--transition-slow),transform var(--transition-slow);max-height:0;opacity:0;transform:scaleY(.98) translateY(-6px);will-change:max-height,opacity,transform}.recommended-code-section .recommended-code-block.open{max-height:1200px;opacity:1;transform:scaleY(1) translateY(0)}.recommended-code-section .recommended-code-block.closed{max-height:0;opacity:0;transform:scaleY(.98) translateY(-6px)}.patch-display .unified-diff{margin-bottom:var(--spacing-sm);border:1px dashed var(--color-gray-300);padding:var(--spacing-xs);background:var(--color-gray-50);font-family:monospace;font-size:var(--font-size-xs);white-space:pre-wrap}.patch-display .side-by-side{display:flex;gap:var(--spacing-sm)}.patch-display .side-by-side .pane{flex:1 1 50%;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-sm);overflow:hidden;padding:var(--spacing-xs);background:#fff}.patch-display .side-by-side .pane h5{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-xs)}@media (prefers-color-scheme: dark){.code-review-practice .explain-button{background:#61dafb0f;color:#61dafb;border-color:#61dafb47}.code-review-practice .explain-button:hover{background:#61dafb1f}.code-review-practice .explain-button.disabled,.code-review-practice .explain-button[disabled]{background:#111318;color:#6b7280;border-color:#20252a}.code-review-practice .explanation-block{color:#e6e6e6;background:transparent}.code-review-practice .explanation-block:before{background:#ffffff0a}.code-review-practice .explanation-text{color:#e6e6e6}.code-review-practice .explanation-examples{background:#071018;border:1px solid rgba(255,255,255,.04);padding:8px;border-radius:6px;margin-top:8px}.code-review-practice .explanation-examples pre{color:#cbd5e1;background:transparent}.code-review-practice .explain-error{color:#ff8a95}.code-review-practice .recommended-code-section .toggle-recommended-code{background:transparent;color:#e6e6e6;border-color:#ffffff0f}.code-review-practice .recommended-code-section .toggle-recommended-code:hover{background:#ffffff05}.code-review-practice .recommended-code-section .recommended-code-block{border-color:#ffffff0a}.code-review-practice .submission-result{background-color:transparent;border-color:#ffffff0a}.code-review-practice .submission-result h4{color:#e6e6e6}.code-review-practice .submission-result p{color:#8ce99a}.code-review-practice .submission-result .summary-block{background:#071018;border:1px solid rgba(255,255,255,.03);color:#d1e7ff}}.merge-view{display:block;gap:var(--spacing-sm)}.merge-editors{display:flex;gap:var(--spacing-sm)}.merge-editors.stacked{display:flex;flex-direction:column;gap:var(--spacing-sm)}.merge-editors.stacked .editor-pane{max-height:60vh;height:auto}.merge-editors.stacked .editor-pane .cm-scroller{max-height:100%}.editor-pane{flex:1;min-width:600px}.pane-title{font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.merge-unified{grid-column:1 / span 3;margin-top:var(--spacing-sm)}.unified-diff{border:1px solid var(--color-gray-200);padding:var(--spacing-xs);background:var(--color-gray-50);font-family:monospace;font-size:var(--font-size-xs);max-height:280px;overflow:auto}.unified-line{padding:2px var(--spacing-sm);white-space:pre-wrap}.unified-line.added{background:#e6ffed;color:#066c38}.unified-line.removed{background:#fff1f0;color:#8b1c1c}.unified-line.equal{color:#222}.spinner{display:inline-block;width:10px;height:10px;border-radius:50%;border:2px solid rgba(0,0,0,.15);border-top-color:#00000073;animation:spin .8s linear infinite;margin-left:var(--spacing-sm);vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.submission-result .issues-section,.submission-result .missed-section,.submission-result .matched-section{text-align:left}.submission-result em{font-style:italic;display:inline}.score-row{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.bonus-badge{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:linear-gradient(180deg,#fffbe6,#fff1b8);color:#664d03;border:1px solid #ffd966;padding:.1rem .4rem;border-radius:999px;font-weight:var(--font-weight-bold);font-size:.85rem;line-height:1}.bonus-symbol{color:#ffb400;font-size:1.05rem;line-height:1;display:inline-block;transform:none}.bonus-value{font-size:.85rem;color:#6b4f00;display:inline-block}.score{display:inline-flex;align-items:center;line-height:1;margin:0}.negative-badge{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:linear-gradient(180deg,#fff1f0,#ffd6d3);color:#6b0b00;border:1px solid #ff8a80;padding:.12rem .45rem;border-radius:999px;font-weight:var(--font-weight-bold);font-size:.85rem}.negative-symbol{color:#d32f2f;font-size:1rem;line-height:1;display:inline-block}.negative-text{font-size:.85rem;color:#6b0b00;display:inline-block}.judgment-badge{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:linear-gradient(180deg,#f6ffed,#d9f7be);color:#135200;border:1px solid #73d13d;padding:.1rem .4rem;border-radius:999px;font-weight:var(--font-weight-bold);font-size:.85rem;line-height:1}.judgment-symbol{color:#389e0d;font-size:1.05rem;line-height:1;display:inline-block}.judgment-text{font-size:.85rem;color:#135200;display:inline-block}@media (prefers-color-scheme: dark){.common-dropdown{background-color:var(--color-gray-950);color:var(--color-text-primary);border-color:var(--color-gray-400)}.common-dropdown:focus{box-shadow:0 0 0 3px #646cff1f;border-color:var(--color-primary)}.code-viewer-container{border-color:var(--color-gray-600);background-color:var(--color-gray-950)}.code-viewer-container .cm-editor,.code-viewer-container .cm-scroller,.code-viewer-container .cm-content{background:transparent;color:var(--color-text-primary)}.code-viewer-container .cm-gutters{background:#161616;color:#8b8b8b;border-right:1px solid var(--color-gray-700)}.code-viewer-container .cm-line{color:inherit}.submission-result{background-color:var(--color-gray-900);border-color:var(--color-gray-700);color:var(--color-text-primary);max-width:800px;margin-left:auto;margin-right:auto}.submission-result .summary-block{background:var(--color-gray-800);border-color:var(--color-gray-600);color:var(--color-text-primary)}.review-textarea{background-color:var(--color-gray-950);color:var(--color-text-primary);border-color:var(--color-gray-600)}.character-count .count{color:var(--color-text-secondary)}.loading-indicator{color:var(--color-info)}.submit-button.disabled{background-color:var(--color-gray-700);color:var(--color-gray-400);border-color:var(--color-gray-600);opacity:.9;cursor:not-allowed}.submit-button.disabled:hover{background-color:var(--color-gray-700);color:var(--color-gray-400)}.submit-button.approve-button.enabled{background-color:#2d5a2d}.submit-button.approve-button.enabled:hover{background-color:#3d6b3d}.submit-button.reject-button.enabled{background-color:#5a2d2d}.submit-button.reject-button.enabled:hover{background-color:#6b3d3d}.recommended-code-section .toggle-recommended-code{background:transparent;color:var(--color-text-primary);border-color:#ffffff0f}.recommended-code-section .toggle-recommended-code:hover{background:#ffffff05}.recommended-code-section .recommended-code-block{border-color:#ffffff0a;background-color:var(--color-gray-900)}.recommended-code-section .recommended-code-block .cm-editor,.recommended-code-section .recommended-code-block .cm-scroller,.recommended-code-section .recommended-code-block .cm-content{background:transparent;color:var(--color-text-primary)}.recommended-code-section .recommended-code-block .cm-gutters{background:#161616;color:#8b8b8b;border-right:1px solid var(--color-gray-700)}.recommended-code-section .recommended-code-block .cm-line{color:inherit}.patch-controls button{background:var(--color-gray-800);color:var(--color-text-primary);border-color:var(--color-gray-400)}.patch-controls button:hover{background:var(--color-gray-700);border-color:var(--color-gray-500)}.patch-controls button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.unified-diff{background:var(--color-gray-900);border-color:var(--color-gray-600)}.merge-single-editor{border-color:var(--color-gray-600)}.unified-line.added{background:#22c55e26;color:#bbf7d0}.unified-line.removed{background:#ef444426;color:#fecaca}.unified-line.equal{color:var(--color-text-secondary)}.explain-button{background:#61dafb0f;color:var(--color-secondary);border-color:#61dafb47}.explain-button:hover{background:#61dafb1f}.explain-button.disabled,.explain-button[disabled]{background:#111318;color:#6b7280;border-color:#20252a}.explanation-block{color:var(--color-text-primary);background:transparent}.explanation-block:before{background:#ffffff0a}.explanation-text{color:var(--color-text-primary)}.explanation-examples{background:#071018;border:1px solid rgba(255,255,255,.04);padding:var(--spacing-xs);border-radius:var(--border-radius-md);margin-top:var(--spacing-xs)}.explanation-examples pre{color:#cbd5e1;background:transparent}.explain-error{color:#ff8a95}}.recommended-code-section.below-code{margin-top:var(--spacing-xs);display:block;text-align:left}.recommended-code-section.below-code .toggle-recommended-code{margin-left:0}.merge-editors.stacked .pane-title{margin-bottom:var(--spacing-xs)}@media (max-width: 768px){.code-review-practice{padding:var(--spacing-md)}.review-textarea{min-width:unset}.submit-buttons{gap:var(--spacing-sm)}.submit-button{width:auto;max-width:none}.submission-result{overflow-x:hidden;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.submission-result .summary-block{word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap}.submission-result ul,.submission-result li{word-wrap:break-word;overflow-wrap:break-word}*{max-width:100%;box-sizing:border-box}}:root{--color-primary: #646cff;--color-primary-hover: #535bf2;--color-secondary: #61dafb;--color-success: #28a745;--color-success-hover: #218838;--color-danger: #dc3545;--color-danger-hover: #c82333;--color-warning: #ff8c00;--color-info: #007bff;--color-gray-100: #f8f9fa;--color-gray-200: #e9ecef;--color-gray-300: #dee2e6;--color-gray-400: #ced4da;--color-gray-500: #adb5bd;--color-gray-600: #6c757d;--color-gray-700: #495057;--color-gray-800: #343a40;--color-gray-900: #212529;--color-text-primary: #213547;--color-text-secondary: #666;--color-text-muted: #888;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px;--border-radius-sm: 4px;--border-radius-md: 6px;--border-radius-lg: 8px;--border-radius-xl: 12px;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s ease-in-out;--transition-normal: .3s ease-in-out;--transition-slow: .5s ease-in-out}.card-base,.feature{background-color:#f0f1f2;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}.card-base:hover{box-shadow:var(--shadow-md)}@media (prefers-color-scheme: dark){:root{--color-text-primary: var(--color-gray-200);--color-text-secondary: var(--color-gray-300);--color-text-muted: var(--color-gray-500)}h1,h2,h3,h4,h5,h6,label{color:var(--color-text-primary)}select option{color:var(--color-text-primary);background:var(--color-gray-900)}.button-secondary{background-color:#0f0f0f;color:var(--color-text-primary);border-color:var(--color-gray-600)}.button-secondary:hover:not(:disabled){background-color:#1a1a1a;border-color:var(--color-gray-500)}.button-ghost{color:var(--color-secondary);border-color:var(--color-secondary)}.button-ghost:hover:not(:disabled){background-color:#61dafb1a}.card-base,.feature{background-color:#222;border-color:var(--color-gray-700)}.input-base{background-color:var(--color-gray-950);border-color:var(--color-gray-600);color:var(--color-text-primary)}.input-base:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff33}.code-container{background-color:var(--color-gray-950);border-color:var(--color-gray-700)}.submit-button.disabled{color:var(--color-gray-700);background-color:#0a0a0a}.submit-button.approve-button.enabled,.submit-button.reject-button.enabled{color:var(--color-gray-500)}.issues-section,.missed-section,.matched-section{color:var(--color-text-primary)}}#root{max-width:1600px;margin:0 auto;padding:4rem 2rem 2rem;text-align:center;line-height:1.6}.app-header{position:fixed;top:0;left:0;right:0;padding:var(--spacing-lg) 2rem;z-index:100;background:#fffffff2;display:flex;justify-content:flex-end}.app-header .auth-controls{display:flex;align-items:center;gap:var(--spacing-lg)}.app-header .auth-controls .welcome-text{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.app-header .auth-controls button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:var(--color-gray-100);color:var(--color-gray-700);border-color:var(--color-gray-300);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.app-header .auth-controls button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.app-header .auth-controls button:disabled{opacity:.6;cursor:not-allowed}.app-header .auth-controls button:hover:not(:disabled){background-color:var(--color-gray-200);border-color:var(--color-gray-400)}@media (prefers-color-scheme: dark){#root{background-color:#0f0f0f;color:var(--color-text-primary);max-width:1600px}.app-header{background:#0f0f0ff2}.app-header .auth-controls .welcome-text{color:var(--color-text-primary)}.app-header .auth-controls button{background-color:var(--color-gray-800);color:var(--color-text-primary);border-color:var(--color-gray-600)}.app-header .auth-controls button:hover{background-color:var(--color-gray-700);border-color:var(--color-gray-500)}}.hero{margin-bottom:3rem}.hero h1{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-sm);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tagline{font-size:var(--font-size-lg);color:var(--color-text-muted);margin-bottom:0}.content{max-width:1600px;margin:0 auto}.description{text-align:left}.description>p{font-size:var(--font-size-base);margin-bottom:2rem;text-align:center}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:3rem 0}.feature h3{margin-top:0;margin-bottom:var(--spacing-sm);font-size:var(--font-size-lg)}.feature p{margin-bottom:0;color:var(--color-text-secondary)}.cta{text-align:center;margin:3rem 0}.start-button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);padding:var(--spacing-lg) 2rem;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.start-button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.start-button:disabled{opacity:.6;cursor:not-allowed}.start-button:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.disclaimer{text-align:center;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-gray-200)}.disclaimer p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.auth-welcome{margin-bottom:var(--spacing-xl)}.auth-warning{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);text-align:center}.auth-warning p{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.auth-warning .sign-in-link{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:transparent;color:var(--color-primary);border-color:var(--color-primary);padding:0;font-size:inherit;border:none;background:none}.auth-warning .sign-in-link:focus{outline:2px solid var(--color-primary);outline-offset:2px}.auth-warning .sign-in-link:disabled{opacity:.6;cursor:not-allowed}.auth-warning .sign-in-link:hover:not(:disabled){background-color:#646cff1a}.auth-warning .sign-in-link:hover{background:none;text-decoration:underline}@media (max-width: 768px){.hero h1{font-size:var(--font-size-3xl)}.features{grid-template-columns:1fr}#root{padding:4rem var(--spacing-lg) var(--spacing-lg)}.app-header .auth-controls button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border:1px solid transparent;border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;background-color:transparent;color:var(--color-primary);border-color:var(--color-primary);padding:0;border:none;background:none}.app-header .auth-controls button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.app-header .auth-controls button:disabled{opacity:.6;cursor:not-allowed}.app-header .auth-controls button:hover:not(:disabled){background-color:#646cff1a}.app-header .auth-controls button:hover{background:none;text-decoration:underline}}
