@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css";
html[data-theme=dark] .hp-hero{box-shadow:none;background:#111218;border-color:#a5b4fc2e}html[data-theme=dark] .hp-hero-highlight{color:#c7d2fe}html[data-theme=dark] .hp-hero-meta{border-top-color:#ffffff24}html[data-theme=dark] .hp-hero-poster{color:#f8fafc;background-color:#171821;background-image:linear-gradient(90deg,#ffffff0e 1px,#0000 1px),linear-gradient(#ffffff0e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-color:#ffffff29;box-shadow:inset 0 0 0 8px #111218}html[data-theme=dark] .hp-hero-orb-a{opacity:.6;background:#818cf8}html[data-theme=dark] .hp-hero-orb-b{opacity:.45;background:#5eead4}html[data-theme=dark] .hp-hero-orb-c{opacity:.32;background:#c084fc}html[data-theme=dark] .hp-hero-grid-lines{mix-blend-mode:normal;background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px)}html[data-theme=dark] .hp-hero-photo{background:#15151e;border-color:#ffffff29;box-shadow:0 24px 56px #000000a6}html[data-theme=dark] .hp-hero-photo figcaption{background:#15151e;border-top-color:#ffffff1a}html[data-theme=dark] .hp-hero-medal{border-color:#15151e;box-shadow:0 16px 36px #000000bf}html[data-theme=dark] .hp-hero-warn{color:#fde68a;background:#fbbf241f;border-color:#fbbf2452}html[data-theme=dark] .hp-pulse-card,html[data-theme=dark] .hp-split-card,html[data-theme=dark] .hp-notice-card,html[data-theme=dark] .hp-pillar,html[data-theme=dark] .hp-metric-cell{background:#15151e;border-color:#ffffff1a;box-shadow:inset 0 1px #ffffff0f}html[data-theme=dark] a.hp-pulse-card:hover{border-color:#a5b4fc;box-shadow:0 12px 36px #a5b4fc38,inset 0 1px #ffffff1a}html[data-theme=dark] .hp-pulse-list-card,html[data-theme=dark] .hp-pulse-list-card:hover{box-shadow:none;background:0 0;border-color:#0000}html[data-theme=dark] .hp-pulse-card:before{background:radial-gradient(70% 60% at 0 0,#a5b4fc2e 0%,#0000 60%)}html[data-theme=dark] .hp-pulse-empty{background:#ffffff0a}html[data-theme=dark] .hp-pulse-row{background:0 0;border-color:#ffffff1f}html[data-theme=dark] .hp-pulse-row:hover{background:#a5b4fc14;border-color:#ffffff1f}html[data-theme=dark] .hp-pulse-state.is-live{color:#99f6e4;background:#5eead424;border-color:#5eead466;box-shadow:0 0 18px #5eead43d}html[data-theme=dark] .hp-pulse-state.is-upcoming{color:#c7d2fe;background:#a5b4fc24;border-color:#a5b4fc66}html[data-theme=dark] .hp-tag{color:#ededf0;background:#ffffff14}html[data-theme=dark] .hp-tag-rated{color:#c7d2fe;background:#a5b4fc2e}html[data-theme=dark] .hp-tag-pinned{color:#fde68a;background:#fbbf242e}html[data-theme=dark] .hp-metric-cell:before{opacity:1;background:linear-gradient(90deg,#a5b4fc 0%,#5eead4 100%);height:3px}html[data-theme=dark] .hp-metric-cell:hover{border-color:#a5b4fc66;box-shadow:0 12px 32px #0006,inset 0 1px #ffffff14}html[data-theme=dark] .hp-pillar:hover{border-color:#a5b4fc5c;box-shadow:0 16px 40px #00000080,inset 0 1px #ffffff14}html[data-theme=dark] .hp-pillar-icon-a{color:#c7d2fe;background:#a5b4fc33;box-shadow:inset 0 0 0 1px #a5b4fc3d}html[data-theme=dark] .hp-pillar-icon-b{color:#fde68a;background:#fbbf242e;box-shadow:inset 0 0 0 1px #fbbf243d}html[data-theme=dark] .hp-pillar-icon-c{color:#99f6e4;background:#5eead42e;box-shadow:inset 0 0 0 1px #5eead43d}html[data-theme=dark] .hp-card-link{color:#c7d2fe}html[data-theme=dark] .hp-empty{color:#ededf0;background:#ffffff08;border-color:#ffffff29}html[data-theme=dark] .hp-pulse-list{background:0 0}html[data-theme=dark] .hp-rank-row:hover{background:#a5b4fc1a}html[data-theme=dark] .hp-schedule-row{background:0 0;border-color:#ffffff1a}html[data-theme=dark] .hp-schedule-row:hover{background:#a5b4fc1f;border-color:#a5b4fc;box-shadow:0 6px 18px #a5b4fc29}html[data-theme=dark] .hp-notices-board{background:0 0;border-color:#ffffff1f}html[data-theme=dark] .hp-notice-empty{background:#ffffff0a}html[data-theme=dark] .hp-join{background:radial-gradient(60% 80% at 100% 100%,#5eead473 0%,#0000 55%),radial-gradient(60% 80% at 0 0,#a5b4fc8c 0%,#0000 55%),linear-gradient(135deg,#1e1b4b 0%,#0f172a 100%);border:1px solid #a5b4fc47;box-shadow:0 28px 72px #0000008c,inset 0 1px #ffffff1f}html[data-theme=dark] .hp-join:before{background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px)}html[data-theme=dark] .hp-command-board,html[data-theme=dark] .hp-main-grid .hp-pulse-list-card,html[data-theme=dark] .hp-main-grid .hp-rank-card,html[data-theme=dark] .hp-main-grid .hp-notices-panel,html[data-theme=dark] .hp-status-strip{background:#14151d;border-color:#ffffff1f}html[data-theme=dark] .hp-command-board .hp-hero-poster{box-shadow:none;background-color:#14151d;background-image:linear-gradient(90deg,#ffffff0e 1px,#0000 1px),linear-gradient(#ffffff0e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-bottom-color:#ffffff1f}html[data-theme=dark] .hp-command-board .hp-poster-season{color:#a5b4fc;background:#14151d}html[data-theme=dark] .hp-command-board .hp-poster-caption{color:#a1a1aa}html[data-theme=dark] .hp-command-board .hp-poster-main strong{color:#f8fafc}html[data-theme=dark] .hp-action-strip{background:#14151d}html[data-theme=dark] .hp-action-strip a{color:#f8fafc;border-right-color:#ffffff1f}html[data-theme=dark] .hp-action-strip a:hover{color:#c7d2fe;background:#a5b4fc1a}html[data-theme=dark] .hp-action-strip .hp-discord-action{color:#fff;background:#595bd8;border-right-color:#4f46e5}html[data-theme=dark] .hp-action-strip .hp-discord-action:hover{color:#fff;background:#4f46e5}html[data-theme=dark] .hp-action-strip .hp-discord-action:focus-visible{outline-color:#c7d2feb8}html[data-theme=dark] .hp-main-grid .hp-pulse-list,html[data-theme=dark] .hp-main-grid .hp-rank-list{border-top-color:#ffffff7a}html[data-theme=dark] .hp-main-grid .hp-pulse-list-head,html[data-theme=dark] .hp-main-grid .hp-card-head{border-bottom-color:#ffffff1f}html[data-theme=dark] .hp-main-grid .hp-rank-row,html[data-theme=dark] .hp-notices-panel .hp-notice-card,html[data-theme=dark] .hp-status-strip .hp-metric-cell,html[data-theme=dark] .hp-status-strip .hp-metric-cell:nth-child(-n+2),html[data-theme=dark] .hp-action-strip a:nth-child(-n+2){border-color:#ffffff1f}html[data-theme=dark] .hp-status-strip{border-top-color:var(--accent)}html[data-theme=dark] .hp-status-strip .hp-metric-cell{background:0 0}html[data-theme=dark] .hp-empty-flat{background:#ffffff08}
.homepage-announcement-bar{width:100vw;color:var(--announcement-light-foreground,var(--heading));background:var(--announcement-light-background);border-bottom:1px solid color-mix(in srgb, var(--announcement-light-foreground,var(--heading)) 18%, transparent);margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}html[data-theme=dark] .homepage-announcement-bar{color:var(--announcement-dark-foreground,var(--text));background:var(--announcement-dark-background);border-bottom-color:color-mix(in srgb, var(--announcement-dark-foreground,var(--text)) 18%, transparent)}.homepage-announcement-inner{width:min(var(--max-width), calc(100% - 36px));align-items:center;gap:10px;min-height:44px;margin:0 auto;padding:6px 12px;display:flex}.homepage-announcement-icon{opacity:.9;flex:none}.homepage-announcement-content{min-width:0;color:inherit;overflow-wrap:anywhere;text-wrap:pretty;flex-wrap:wrap;flex:auto;align-items:baseline;column-gap:.35em;font-size:.94rem;font-weight:650;line-height:1.4;display:flex}.homepage-announcement-content br{flex-basis:100%;width:0}.homepage-announcement-content .announcement-right{text-align:end;margin-inline-start:auto;padding-inline-start:1rem}.homepage-announcement-content a{color:inherit;text-underline-offset:4px;font-weight:800;text-decoration:underline;text-decoration-thickness:1.5px;transition:opacity .15s cubic-bezier(.22,1,.36,1)}.homepage-announcement-content a:hover{opacity:.72}.homepage-announcement-content a:focus-visible{outline-offset:3px;border-radius:3px;outline:2px solid}.homepage-announcement-content code,.homepage-announcement-content kbd{border:1px solid color-mix(in srgb, currentColor 28%, transparent);background:color-mix(in srgb, currentColor 10%, transparent);font-family:var(--font-mono);border-radius:4px;padding:.1em .35em;font-size:.88em}@media (max-width:640px){.homepage-announcement-inner{gap:9px;min-height:42px;padding:6px}.homepage-announcement-content{font-size:.88rem;line-height:1.4}}@media (prefers-reduced-motion:reduce){.homepage-announcement-content a{transition:none}}
.admin-sortable-list{flex-direction:column;display:flex}.admin-sortable-row{border-top:1px solid var(--border);background:var(--panel);grid-template-columns:20px minmax(0,auto) minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px;transition:border-color .12s,background .12s,opacity .12s;display:grid}.admin-sortable-row:first-child{border-top:none}.admin-sortable-row.dragging{opacity:.55}.admin-sortable-row.drop-before{border-top:2px solid var(--accent)}.admin-sortable-row.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.admin-sortable-grip{color:var(--muted);cursor:grab;-webkit-user-select:none;user-select:none;font-weight:700}.admin-sortable-preview{object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--border);width:144px;height:72px}.admin-sortable-main{flex-direction:column;gap:4px;min-width:0;display:flex}.admin-sortable-title{color:var(--text);font-weight:700}.admin-sortable-meta{text-align:right;min-width:88px}@media (max-width:960px){.admin-sortable-row{grid-template-columns:20px minmax(0,1fr)}.admin-sortable-preview{grid-column:2;width:100%;max-width:180px}.admin-sortable-main,.admin-sortable-meta,.admin-sortable-row>.inline{grid-column:2}.admin-sortable-meta{text-align:left}}
.profile-banner-credit-fields{border:0;border-block:1px solid var(--border);gap:12px;margin:0;padding:16px 0;display:grid}.profile-banner-credit-fields>legend{color:var(--heading);padding:0;font-size:.95rem;font-weight:750}.profile-banner-credit-fields>p{margin:0}.profile-banner-credit-list{gap:12px;display:grid}.profile-banner-credit-entry{border:1px solid var(--border);border-radius:var(--radius-lg);gap:12px;padding:14px;display:grid}.profile-banner-credit-entry-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-banner-credit-entry-head>strong{color:var(--heading);font-size:.88rem}.profile-banner-credit-remove{min-height:32px;padding:5px 9px}.profile-banner-credit-add{justify-self:start}.profile-banner-credit-external-fields{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:12px;display:grid}@media (max-width:720px){.profile-banner-credit-external-fields{grid-template-columns:minmax(0,1fr)}}
.contest-admin-page{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.contest-admin-page>.notice,.contest-admin-page>.contest-editor-section,.contest-admin-page>.table-card,.contest-admin-page>.grid-2,.contest-admin-page>.contest-admin-tool-nav,.contest-admin-page>.contest-admin-tool-group-heading,.contest-admin-page>.contest-admin-action-list{grid-column:1/-1}.contest-admin-discord-settings{align-items:stretch}.contest-admin-discord-settings>.panel{height:100%}.contest-admin-discord-settings>:only-child{grid-column:1/-1}.contest-admin-tool-nav{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0 2px;display:flex}.contest-admin-tool-nav a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:36px;color:var(--text);align-items:center;padding:7px 11px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.contest-admin-tool-nav a:hover{border-color:var(--accent);color:var(--accent)}.contest-admin-tool-group-heading{border-top:1px solid var(--border);margin-top:8px;padding-top:24px;scroll-margin-top:24px}.contest-admin-tool-group-heading h2{color:var(--heading);margin:0;font-size:1.18rem;line-height:1.35}.contest-admin-tool-group-heading p{color:var(--muted);margin:5px 0 0;font-size:.9rem;line-height:1.55}.contest-admin-danger-heading h2{color:var(--danger)}.contest-admin-action-list{border-block:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.contest-admin-page.is-contest-operator .contest-admin-action-list{grid-template-columns:repeat(3,minmax(0,1fr))}.contest-admin-action-item{grid-template-columns:24px minmax(0,1fr);align-content:start;gap:10px 12px;padding:16px;display:grid}.contest-admin-action-item+.contest-admin-action-item{border-left:1px solid var(--border)}.contest-admin-action-item>.doj-material-symbol{color:var(--accent)}.contest-admin-action-item h3{color:var(--heading);margin:0;font-size:.96rem;line-height:1.4}.contest-admin-action-item p{color:var(--muted);margin:4px 0 0;font-size:.84rem;line-height:1.5}.contest-admin-action-item>.button-ghost{grid-column:2;justify-self:start}.contest-admin-clone-form{gap:12px;display:grid}.contest-admin-clone-options{display:grid}.contest-admin-clone-option{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding:10px 0;display:grid}.contest-admin-clone-option+.contest-admin-clone-option{border-top:1px solid var(--border)}.contest-admin-clone-option input{margin:3px 0 0}.contest-admin-clone-option strong,.contest-admin-clone-option span span{display:block}.contest-admin-clone-option strong{color:var(--heading);font-size:.88rem;line-height:1.4}.contest-admin-clone-option span span{color:var(--muted);margin-top:2px;font-size:.8rem;line-height:1.45}.contest-admin-clone-footer{justify-items:start;gap:10px;display:grid}.contest-admin-clone-footer p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.5}.contest-admin-danger-actions{align-items:stretch}.contest-admin-danger-actions>.panel{height:100%}.contest-admin-danger-actions>:only-child{grid-column:1/-1}.contest-editor-section{margin:0;padding:0}.contest-editor-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.contest-editor-header-copy{min-width:0}.contest-editor-header-action{flex:none}.contest-editor-compact-grid{grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:10px 12px;display:grid}.contest-editor-compact-grid>.grid-2,.contest-editor-compact-grid .grid-3{display:contents}.contest-editor-compact-grid .label,.contest-editor-compact-grid .inline{min-width:0}.contest-editor-divider{background:var(--border);grid-column:1/-1;height:1px;margin:6px 0}.contest-editor-form-heading{color:var(--heading);border-top:1px solid var(--border);margin-top:4px;padding-top:16px;font-size:.92rem;font-weight:700;line-height:1.3}.contest-editor-wide-field,.contest-editor-slug-field{grid-column:span 4}.contest-editor-medium-field,.contest-editor-range-field{grid-column:span 2}.contest-editor-narrow-field{grid-column:span 1}.contest-editor-entry-fee-summary{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-alt);grid-column:span 2;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:3px 12px;min-height:68px;padding:9px 12px;display:grid}.contest-editor-entry-fee-summary>strong{color:var(--heading);font-variant-numeric:tabular-nums;text-align:right}.contest-editor-entry-fee-summary>.small{grid-column:1/-1}.contest-editor-range-control{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.contest-editor-range-control .input{width:100%;min-width:0}.contest-window-duration-field{border:0;min-width:0;margin:0;padding:0}.contest-window-duration-field>legend{color:var(--muted);margin-bottom:6px;font-size:.82rem;font-weight:650}.contest-window-duration-control{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.contest-window-duration-control>label{min-width:0;position:relative}.contest-window-duration-control .input{font-variant-numeric:tabular-nums;width:100%;min-width:0;padding-right:24px}.contest-window-duration-control span{color:var(--muted);pointer-events:none;font-size:.72rem;font-weight:700;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.contest-editor-compact-grid .textarea{min-height:74px}.contest-editor-content-grid .textarea{min-height:112px}.contest-editor-content-grid{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);align-items:start;gap:16px;display:grid}.contest-editor-rules-field{min-width:0}.contest-rule-images{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-alt);gap:12px;min-width:0;padding:14px;display:grid}.contest-rule-images-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.contest-rule-images-heading>div{gap:2px;min-width:0;display:grid}.contest-rule-images-heading>.doj-material-symbol{color:var(--accent);flex:none}.contest-rule-image-upload{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.contest-rule-image-picker{cursor:pointer;justify-content:center;gap:7px;min-width:0}.contest-rule-image-selection{min-height:1.25em}.contest-rule-image-list{border-top:1px solid var(--border);display:grid}.contest-rule-image-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;display:grid}.contest-rule-image-row+.contest-rule-image-row{border-top:1px solid var(--border)}.contest-rule-image-row>a{min-width:0;color:var(--text);align-items:center;gap:7px;font-size:.82rem;font-weight:650;text-decoration:none;display:flex}.contest-rule-image-row>a:hover{color:var(--accent)}.contest-rule-image-row>a span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contest-rule-image-actions{align-items:center;gap:4px;display:flex}.contest-rule-image-actions .button-ghost{align-items:center;gap:5px;min-height:32px;padding:5px 8px;display:inline-flex}.contest-rule-image-delete{color:var(--danger)}.contest-rule-image-empty{margin:0}.contest-problem-sorter-actions{justify-content:flex-end;gap:8px}.contest-problem-sorter-actions .button-ghost{align-items:center;gap:6px;display:inline-flex}.contest-problem-add-dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(520px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--text);margin:auto;padding:24px;overflow:auto;box-shadow:0 4px 8px #0f172a2e}.contest-problem-add-dialog::backdrop{background:#09090b7a}.contest-problem-add-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.contest-problem-add-dialog-header .section-title,.contest-problem-add-dialog-header p{margin:0}.contest-problem-add-dialog-header p{margin-top:4px}.contest-problem-add-dialog-close{flex:none;place-items:center;width:40px;height:40px;padding:0;display:inline-grid}.contest-problem-add-dialog-fields{grid-template-columns:minmax(0,1fr) 120px;align-items:end;gap:12px;display:grid}.contest-problem-sorter-list{gap:8px;display:grid}.contest-problem-sorter{gap:8px}.contest-admin-problems .section-header{margin-bottom:0}.contest-problem-sorter-hint{margin:0}.contest-problem-sorter-row{--contest-problem-drag-width:48px;border:1px solid var(--border);background:var(--surface);will-change:transform;grid-template-columns:22px minmax(180px,1fr) minmax(440px,auto);align-items:center;gap:12px;padding:12px 14px;transition:border-color .16s ease-out,background-color .16s ease-out,box-shadow .16s ease-out;display:grid;position:relative}.contest-problem-sorter-row.dragging{z-index:1;border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 6%, var(--surface));box-shadow:0 4px 8px color-mix(in srgb, var(--heading) 14%, transparent)}.contest-problem-sorter-grip-cell{align-self:stretch;min-height:40px}.contest-problem-sorter-grip{width:var(--contest-problem-drag-width);cursor:grab;color:var(--muted);touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;font-weight:700;transition:background-color .14s ease-out,color .14s ease-out;display:grid;position:absolute;inset-block:0;inset-inline-start:0}.contest-problem-sorter-grip:hover{background:color-mix(in srgb, var(--accent) 7%, transparent);color:var(--heading)}.contest-problem-sorter-grip:active{cursor:grabbing}@media (prefers-reduced-motion:reduce){.contest-problem-sorter-row{transition:none}}.contest-problem-sorter-main{min-width:0}.contest-problem-sorter-main strong,.contest-problem-sorter-main .small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.contest-problem-sorter-controls{grid-template-columns:minmax(170px,220px) minmax(130px,165px) auto auto;align-items:end;gap:8px;display:grid}.contest-problem-sorter-editor{align-items:flex-end;gap:8px;display:flex}.contest-problem-sorter-controls .label{min-width:0}.contest-dummy-id-preview{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-alt);width:fit-content;color:var(--muted);align-items:center;gap:12px;padding:10px 12px;font-size:.85rem;font-weight:600;display:flex}.contest-dummy-id-preview code,.contest-dummy-id,.contest-dummy-password{color:var(--heading);font-family:var(--font-mono);font-variant-ligatures:none}.contest-dummy-mode-picker{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;display:grid}.contest-dummy-mode-picker legend{color:var(--heading);grid-column:1/-1;margin-bottom:8px;font-size:.9rem;font-weight:700}.contest-dummy-mode-picker>label{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:flex-start;gap:10px;min-width:0;padding:14px;display:flex}.contest-dummy-mode-picker>label:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border-strong))}.contest-dummy-mode-picker>label.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.contest-dummy-mode-picker input[type=radio]{accent-color:var(--accent);margin-top:3px}.contest-dummy-mode-picker span{gap:3px;min-width:0;display:grid}.contest-dummy-mode-picker strong{color:var(--heading);font-size:.92rem}.contest-dummy-mode-picker small{color:var(--muted);font-size:.8rem}.contest-dummy-count-field{max-width:240px}.contest-dummy-create-actions,.contest-dummy-export-actions,.contest-dummy-row-actions{flex-wrap:wrap;align-items:center;gap:8px}.contest-dummy-list-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.contest-dummy-account-table{min-width:1080px}.contest-dummy-account-table th:first-child{width:180px}.contest-dummy-account-table th:nth-child(2){width:520px}.contest-dummy-account-table th:nth-child(3){width:280px}.contest-dummy-account-table th:nth-child(4){width:100px}.contest-dummy-edit-form{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) auto;align-items:center;gap:8px;display:grid}.contest-dummy-display-name,.contest-dummy-real-user{text-overflow:ellipsis;min-width:0}.contest-dummy-password{white-space:nowrap;letter-spacing:.035em}.contest-dummy-password-cell{align-items:center;gap:8px;display:flex}.contest-dummy-row-actions{display:flex}.contest-problem-sorter-controls>button,.contest-problem-sorter-remove>button{height:40px}.contest-problem-sorter-remove{align-items:flex-end;display:flex}.contest-problem-sorter-field{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;display:grid}.contest-problem-sorter-field>span{white-space:nowrap}@media (max-width:1100px){.contest-editor-compact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.contest-editor-wide-field,.contest-editor-slug-field{grid-column:span 2}.contest-problem-sorter-row{grid-template-columns:22px minmax(0,1fr)}.contest-problem-sorter-editor{grid-column:2/-1}.contest-admin-action-list,.contest-admin-page.is-contest-operator .contest-admin-action-list{grid-template-columns:minmax(0,1fr)}.contest-admin-action-item+.contest-admin-action-item{border-top:1px solid var(--border);border-left:0}}@media (max-width:760px){.contest-editor-header{flex-direction:column;align-items:stretch}.contest-editor-header-action .button-ghost{justify-content:center;width:100%}.contest-admin-page,.contest-editor-compact-grid{grid-template-columns:minmax(0,1fr)}.contest-admin-page>*,.contest-editor-wide-field,.contest-editor-slug-field,.contest-editor-medium-field,.contest-editor-range-field,.contest-editor-narrow-field,.contest-editor-entry-fee-summary{grid-column:1}.contest-editor-content-grid{grid-template-columns:minmax(0,1fr)}.contest-problem-sorter-row{--contest-problem-drag-width:44px;grid-template-columns:18px minmax(0,1fr)}.contest-problem-sorter-editor{grid-column:1/-1}.contest-problem-sorter-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto}.contest-problem-add-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:20px}.contest-problem-add-dialog-fields{grid-template-columns:minmax(0,1fr)}.contest-admin-tool-nav{flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}.contest-admin-tool-nav a{flex:none}.contest-admin-tool-group-heading{margin-top:2px;padding-top:20px}.contest-dummy-mode-picker{grid-template-columns:minmax(0,1fr)}.contest-dummy-list-heading{flex-direction:column;align-items:flex-start}.contest-dummy-export-actions{width:100%}.contest-dummy-export-actions>*{flex:auto;justify-content:center}}.contest-scoring-settings{border:0;grid-column:1/-1;min-width:0;margin:0;padding:0}.contest-scoring-settings legend{color:var(--heading);margin-bottom:10px;font-weight:700}.contest-scoring-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(100%,400px);display:grid}.contest-scoring-options button{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--text);text-align:left;cursor:pointer;flex-direction:column;flex:1;gap:3px;padding:12px 16px;display:flex}.contest-scoring-options button strong{color:var(--heading);font-size:1rem}.contest-scoring-options button span{word-break:keep-all;font-size:.8rem}.contest-scoring-options button[aria-pressed=true]{border-color:var(--accent);background:rgba(var(--accent-rgb), .08)}.contest-scoring-options button:hover:not(:disabled){border-color:var(--accent)}.contest-scoring-options button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.contest-scoring-options button:disabled{cursor:default;opacity:.7}.contest-scoring-fields{gap:8px;margin-top:14px;display:grid}.contest-scoring-fields p{word-break:keep-all;margin:0;font-size:.82rem}.contest-scoring-penalty{justify-self:start}.contest-scoring-penalty input{font-variant-numeric:tabular-nums;width:120px}
.doj-problem-replacement>summary{cursor:pointer;padding:4px 0;font-weight:600}.doj-problem-replacement-body{margin-top:16px}.doj-problem-replacement-options{flex-wrap:wrap;align-items:end;gap:16px}.doj-problem-replacement-options>label{flex:160px;min-width:0}.doj-problem-replacement [hidden]{display:none!important}.doj-problem-replacement p{word-break:keep-all;margin:4px 0 0}.doj-problem-replacement .section-title{font-size:1rem}.doj-problem-replacement input,.doj-problem-replacement select,.doj-problem-replacement textarea{min-width:0;max-width:100%}.doj-problem-editor-workspace{grid-template-columns:244px minmax(0,1fr);align-items:start;gap:20px;min-width:0;display:grid}.doj-problem-editor-workspace.is-collapsed{grid-template-columns:64px minmax(0,1fr)}.doj-problem-editor-sidebar{z-index:20;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);gap:10px;width:244px;max-height:calc(100vh - 92px);padding:10px;display:grid;position:fixed;top:76px;overflow:hidden auto}.doj-problem-editor-sidebar-head{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.doj-problem-editor-sidebar-title{gap:2px;min-width:0;padding-left:8px;display:grid}.doj-problem-editor-sidebar-title span{color:var(--muted);font-size:.75rem;font-weight:700}.doj-problem-editor-sidebar-title strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.doj-problem-editor-sidebar-toggle{border-radius:var(--radius);width:44px;height:44px;color:var(--heading);cursor:pointer;background:0 0;border:1px solid #0000;flex:0 0 44px;justify-content:center;align-items:center;padding:0;display:inline-flex}.doj-problem-editor-sidebar-toggle:hover{border-color:var(--border);background:var(--surface-alt)}.doj-problem-editor-sidebar-toggle:focus-visible,.doj-problem-editor-nav-link:focus-visible{outline:3px solid rgba(var(--accent-rgb), .22);outline-offset:2px}.doj-problem-editor-nav-icon{fill:currentColor;flex:0 0 22px;width:22px;height:22px}.doj-problem-editor-nav{gap:4px;display:grid}.doj-problem-editor-nav-link{border-radius:var(--radius);min-width:0;min-height:44px;color:var(--text);align-items:center;gap:11px;padding:9px 10px;font-size:.88rem;font-weight:650;line-height:1.3;text-decoration:none;display:flex}.doj-problem-editor-nav-link:hover{background:var(--surface-alt);color:var(--heading)}.doj-problem-editor-nav-link.is-active{background:rgba(var(--accent-rgb), .12);color:var(--accent)}.doj-problem-editor-nav-link.is-disabled{color:var(--muted);cursor:not-allowed;opacity:.48}.doj-problem-editor-nav-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-sidebar-title,.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-nav-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-sidebar-head,.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-nav-link{justify-content:center}.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-nav-link{padding-left:0;padding-right:0}.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-sidebar{width:64px}.doj-problem-editor-content{grid-column:2;min-width:0}html[data-theme=dark] .doj-problem-editor-sidebar{background:var(--surface)}@media (max-width:960px){.doj-problem-editor-workspace,.doj-problem-editor-workspace.is-collapsed{grid-template-columns:minmax(0,1fr)}.doj-problem-editor-sidebar{width:100%;max-height:calc(100vh - 76px);margin-top:12px;position:sticky;top:68px}.doj-problem-editor-content{grid-column:1}.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-sidebar{justify-self:start;width:64px}.doj-problem-editor-workspace.is-collapsed .doj-problem-editor-nav{display:none}}
.homepage-announcement-admin-page{gap:24px;padding-top:28px}.homepage-announcement-admin-header,.homepage-announcement-section-copy,.homepage-announcement-admin-content{gap:8px;display:grid}.homepage-announcement-admin-header{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;padding-bottom:18px}.homepage-announcement-admin-content{gap:32px}.homepage-announcement-create-panel{box-shadow:none;gap:20px;display:grid}.homepage-announcement-create-form,.homepage-announcement-item-form{gap:18px;display:grid}.homepage-announcement-locale-grid,.homepage-announcement-theme-grid,.homepage-announcement-theme-previews{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.homepage-announcement-editor-section-head{justify-content:space-between;align-items:flex-end;gap:14px;padding-top:2px;display:flex}.homepage-announcement-editor-section-head h3,.homepage-announcement-editor-section-head p{margin:0}.homepage-announcement-editor-section-head h3{color:var(--heading);font-size:.96rem;font-weight:800}.homepage-announcement-editor-section-head p{color:var(--muted);margin-top:4px;font-size:.8rem;font-weight:650}.homepage-announcement-help-trigger{flex:none;gap:7px}.homepage-announcement-theme-editor{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-alt);gap:14px;min-width:0;margin:0;padding:16px;display:grid}.homepage-announcement-theme-editor legend{color:var(--heading);padding:0 7px;font-size:.9rem;font-weight:800}.homepage-announcement-html-input{min-height:112px;font-family:var(--font-mono);font-size:.86rem;line-height:1.55}.homepage-announcement-locale-editor{min-width:0}.homepage-announcement-theme-colors{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.homepage-announcement-color-field{width:100%;min-width:0}.homepage-announcement-color-label{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.homepage-announcement-color-default{color:var(--accent-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.72rem;font-weight:750}.homepage-announcement-color-default:hover{text-underline-offset:3px;text-decoration:underline}.homepage-announcement-color-default:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.homepage-announcement-color-controls{grid-template-columns:46px minmax(0,1fr);gap:8px;display:grid}.homepage-announcement-color-picker{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;width:46px;height:40px;padding:3px}.homepage-announcement-color-value{min-width:0;font-family:var(--font-mono)}.homepage-announcement-contrast{border-radius:var(--radius-pill);align-items:center;gap:5px;width:fit-content;padding:4px 8px;font-size:.76rem;font-weight:800;display:inline-flex}.homepage-announcement-contrast.is-good{color:#166534;background:color-mix(in srgb, #22c55e 12%, var(--surface))}.homepage-announcement-contrast.is-low{color:#92400e;background:color-mix(in srgb, #f59e0b 14%, var(--surface))}html[data-theme=dark] .homepage-announcement-contrast.is-good{color:#a7f3d0}html[data-theme=dark] .homepage-announcement-contrast.is-low{color:#fde68a}.homepage-announcement-preview-block,.homepage-announcement-theme-previews>div{gap:6px;min-width:0;display:grid}.homepage-announcement-mode-label{color:var(--muted);font-size:.76rem;font-weight:800}.homepage-announcement-preview-context{--announcement-preview-shell:#f4f4f5;--announcement-preview-header:#fff;--announcement-preview-border:#d4d4d8;--announcement-preview-heading:#18181b;--announcement-preview-muted:#a1a1aa;--announcement-preview-default-foreground:#09090b;border:1px solid var(--announcement-preview-border);border-radius:var(--radius);color:var(--announcement-preview-heading);background:var(--announcement-preview-shell);overflow:hidden}.homepage-announcement-preview-context.is-dark{--announcement-preview-shell:#0b0b12;--announcement-preview-header:#181821;--announcement-preview-border:#34343f;--announcement-preview-heading:#f4f4f5;--announcement-preview-muted:#71717a;--announcement-preview-default-foreground:#ededf0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.homepage-announcement-preview-header{border-bottom:1px solid var(--announcement-preview-border);background:var(--announcement-preview-header);justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:0 13px;display:flex}.homepage-announcement-preview-brand{color:var(--announcement-preview-heading);letter-spacing:-.02em;align-items:center;gap:7px;font-size:.7rem;font-weight:900;display:inline-flex}.homepage-announcement-preview-logo{background:var(--accent);border-radius:5px;width:17px;height:17px;box-shadow:inset 0 0 0 5px #ffffffe0}.homepage-announcement-preview-nav{align-items:center;gap:6px;display:inline-flex}.homepage-announcement-preview-nav i,.homepage-announcement-preview-line{border-radius:var(--radius-pill);background:var(--announcement-preview-muted);display:block}.homepage-announcement-preview-nav i{width:19px;height:4px}.homepage-announcement-preview{min-height:50px;color:var(--announcement-preview-foreground,var(--announcement-preview-default-foreground));background:var(--announcement-preview-background);overflow-wrap:anywhere;align-items:center;gap:10px;padding:11px 14px;font-size:.92rem;font-weight:650;line-height:1.5;display:flex}.homepage-announcement-preview-content{flex-wrap:wrap;flex:auto;align-items:baseline;column-gap:.35em;min-width:0;display:flex}.homepage-announcement-preview-content br{flex-basis:100%;width:0}.homepage-announcement-preview-content .announcement-right{text-align:end;margin-inline-start:auto;padding-inline-start:1rem}.homepage-announcement-preview-page{background:var(--announcement-preview-shell);align-content:center;gap:7px;min-height:42px;padding:9px 14px 10px;display:grid}.homepage-announcement-preview-line{opacity:.54;width:min(58%,180px);height:5px}.homepage-announcement-preview-line.is-strong{background:var(--announcement-preview-heading);opacity:.8;width:min(36%,112px);height:7px}.homepage-announcement-preview>.doj-material-symbol{flex:none}.homepage-announcement-preview a{color:inherit;text-underline-offset:3px;font-weight:800;text-decoration:underline}.homepage-announcement-preview code,.homepage-announcement-preview kbd{border:1px solid color-mix(in srgb, currentColor 28%, transparent);background:color-mix(in srgb, currentColor 10%, transparent);font-family:var(--font-mono);border-radius:4px;padding:.1em .35em;font-size:.88em}.homepage-announcement-preview-empty{opacity:.72;font-weight:600}.homepage-announcement-form-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.homepage-announcement-help-dialog{border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:min(720px,100vw - 32px);max-height:min(720px,100vh - 48px);color:var(--text);background:var(--surface);padding:22px;overflow:auto}.homepage-announcement-help-dialog::backdrop{background:#09090b94}.homepage-announcement-help-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;display:flex}.homepage-announcement-help-head h2,.homepage-announcement-help-head p,.homepage-announcement-help-row p,.homepage-announcement-help-security{margin:0}.homepage-announcement-help-head h2{color:var(--heading);font-size:1.25rem;font-weight:850}.homepage-announcement-help-head p{color:var(--muted);margin-top:6px;font-size:.86rem;line-height:1.55}.homepage-announcement-help-head .button-ghost{flex:none;gap:6px}.homepage-announcement-help-list{display:grid}.homepage-announcement-help-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(13rem,1.15fr) minmax(0,1fr);align-items:start;gap:18px;padding:15px 0;display:grid}.homepage-announcement-help-row code{border:1px solid var(--border);border-radius:var(--radius-sm);width:fit-content;max-width:100%;color:var(--heading);background:var(--surface-alt);overflow-wrap:anywhere;padding:5px 7px;font-size:.78rem;line-height:1.55}.homepage-announcement-help-row p,.homepage-announcement-help-security{color:var(--text);font-size:.84rem;line-height:1.55}.homepage-announcement-help-security{color:var(--muted);margin-top:16px;font-weight:650}.homepage-announcement-create-actions,.homepage-announcement-item-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.homepage-announcement-create-actions .button,.homepage-announcement-item-actions .button-ghost{gap:7px}.homepage-announcement-stack-section{gap:16px;display:grid}.homepage-announcement-stack-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.homepage-announcement-stack-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);gap:16px;padding:20px;display:grid}.homepage-announcement-stack-item.is-active{border-color:color-mix(in srgb, var(--accent) 48%, var(--border));background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.homepage-announcement-stack-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:.8rem;font-weight:650;display:flex}.homepage-announcement-state{border:1px solid var(--border);border-radius:var(--radius-pill);min-height:26px;color:var(--muted);background:var(--surface-alt);align-items:center;padding:3px 9px;display:inline-flex}.homepage-announcement-state.is-active{color:var(--accent-dark);border-color:color-mix(in srgb, var(--accent) 34%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.homepage-announcement-edit-disclosure{border-top:1px solid var(--border);padding-top:12px}.homepage-announcement-edit-disclosure summary{width:fit-content;color:var(--text);cursor:pointer;font-size:.84rem;font-weight:750}.homepage-announcement-edit-disclosure[open] summary{margin-bottom:16px}.homepage-announcement-empty{border:1px dashed var(--border-strong);border-radius:var(--radius);min-height:92px;color:var(--muted);background:var(--surface-alt);text-align:center;padding:28px}.homepage-announcement-empty[aria-busy=true]{background:linear-gradient(90deg, var(--surface-alt), var(--surface), var(--surface-alt));background-size:240% 100%;animation:1.4s ease-in-out infinite homepage-announcement-loading}@keyframes homepage-announcement-loading{to{background-position:-200% 0}}@media (max-width:840px){.homepage-announcement-locale-grid,.homepage-announcement-theme-grid,.homepage-announcement-theme-previews{grid-template-columns:1fr}.homepage-announcement-color-field{width:100%}}@media (max-width:640px){.homepage-announcement-admin-header{grid-template-columns:1fr;align-items:stretch}.homepage-announcement-admin-header .button-ghost{justify-self:start}.homepage-announcement-create-panel,.homepage-announcement-stack-item{padding:18px}.homepage-announcement-editor-section-head,.homepage-announcement-help-head{flex-direction:column;align-items:stretch}.homepage-announcement-help-trigger,.homepage-announcement-help-head .button-ghost{justify-content:center;width:100%}.homepage-announcement-theme-colors,.homepage-announcement-help-row{grid-template-columns:1fr}.homepage-announcement-form-footer,.homepage-announcement-create-actions{flex-direction:column;align-items:stretch}.homepage-announcement-create-actions .button,.homepage-announcement-create-actions .button-ghost{width:100%}}@media (prefers-reduced-motion:reduce){.homepage-announcement-empty[aria-busy=true]{animation:none}}
.account-ban-page,.account-ban-admin-page{width:min(100%,980px);margin-inline:auto}.account-ban-page-heading,.account-ban-form-footer,.account-ban-appeal-meta,.account-ban-admin-actions,.account-ban-status-form{justify-content:space-between;align-items:center;gap:16px;display:flex}.account-ban-state,.account-ban-guidance,.account-ban-appeal-readonly,.account-ban-detail-summary{border-radius:var(--radius-lg);padding:20px}.account-ban-state-temporary{color:#713f12;background:#fef3c7;border:1px solid #f59e0b}.account-ban-state-permanent{color:#fff;background:#09090b}html[data-theme=dark] .account-ban-state-temporary{color:#fef3c7;background:#422006;border-color:#b45309}.account-ban-guidance{background:var(--surface-alt);border:1px solid var(--border)}.account-ban-guidance p,.account-ban-state p,.account-ban-reason{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.65}.account-ban-reason-editor summary{cursor:pointer;width:fit-content;color:var(--accent);font-weight:700}.account-ban-reason-editor[open] summary{margin-bottom:14px}.account-ban-reason-textarea{resize:vertical;line-height:1.65}.account-ban-appeal-textarea{resize:vertical;min-height:360px;line-height:1.7}.account-ban-status{border-radius:var(--radius);min-height:28px;color:var(--heading);background:var(--surface-alt);white-space:nowrap;align-items:center;padding:3px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.account-ban-status.status-additional_info_required,.account-ban-status.status-active{color:#713f12;background:#fef3c7}.account-ban-status.status-completed{color:#065f46;background:#d1fae5}.account-ban-status.status-ended{color:var(--muted)}html[data-theme=dark] .account-ban-status.status-additional_info_required,html[data-theme=dark] .account-ban-status.status-active{color:#fde68a;background:#422006}html[data-theme=dark] .account-ban-status.status-completed{color:#a7f3d0;background:#064e3b}.account-ban-appeal-readonly,.account-ban-detail-summary{background:var(--surface);border:1px solid var(--border)}.account-ban-appeal-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}.account-ban-create-grid{grid-template-columns:minmax(0,1fr) minmax(180px,.4fr);gap:16px;display:grid}.account-ban-table td,.account-ban-table th{vertical-align:middle}.account-ban-detail-summary{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:24px;display:grid}.account-ban-detail-summary dl{margin:0}.account-ban-detail-summary dl div{border-bottom:1px solid var(--border);grid-template-columns:minmax(120px,.7fr) minmax(0,1fr);gap:12px;padding-block:7px;display:grid}.account-ban-detail-summary dt{color:var(--muted)}.account-ban-detail-summary dd{margin:0;font-weight:650}.account-ban-admin-actions,.account-ban-status-form{flex-wrap:wrap;justify-content:flex-start}.account-ban-status-form label{align-items:center;gap:10px;display:flex}.account-ban-revisions summary{cursor:pointer;font-weight:700}.account-ban-revisions[open] summary{margin-bottom:18px}.account-ban-revision+.account-ban-revision{border-top:1px solid var(--border);padding-top:18px}@media (max-width:700px){.account-ban-page-heading,.account-ban-form-footer,.account-ban-appeal-meta{flex-direction:column;align-items:flex-start}.account-ban-create-grid,.account-ban-detail-summary{grid-template-columns:1fr}.account-ban-appeal-textarea{min-height:300px}}
.admin-overview{gap:28px;display:grid}.admin-overview-header{gap:8px;display:grid}.admin-overview-header h1{color:var(--heading);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:2rem;font-weight:800;line-height:1.2}.admin-overview-header p{color:var(--muted);text-wrap:pretty;margin:0;line-height:1.65}.admin-overview-layout{grid-template-columns:minmax(240px,280px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.admin-overview-sidebar{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);display:grid}.admin-task-navigation,.admin-section-index,.admin-summary-block{padding:18px}.admin-section-index,.admin-summary-block{border-top:1px solid var(--border)}.admin-nav-group+.admin-nav-group{margin-top:22px}.admin-nav-group h2,.admin-section-index h2,.admin-summary-block h2{color:var(--muted);letter-spacing:0;margin:0 0 8px;font-size:.78rem;font-weight:700;line-height:1.4}.admin-nav-links{display:grid}.admin-nav-link{border-radius:var(--radius-sm);min-width:0;color:var(--heading);justify-content:space-between;align-items:center;gap:12px;margin:0 -8px;padding:9px 8px;text-decoration:none;transition:background-color .16s,color .16s;display:flex}.admin-nav-link>span:first-child{gap:1px;min-width:0;display:grid}.admin-nav-link strong{font-size:.9rem;font-weight:700;line-height:1.4}.admin-nav-link small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.4;overflow:hidden}.admin-nav-arrow{color:var(--muted);font-size:1rem;transition:transform .16s,color .16s}.admin-nav-link:hover{background:var(--surface-alt);color:var(--accent-dark)}.admin-nav-link:hover .admin-nav-arrow{color:var(--accent);transform:translate(2px)}.admin-nav-link:focus-visible,.admin-section-index a:focus-visible{outline:2px solid rgba(var(--accent-rgb), .45);outline-offset:2px}.admin-section-index{gap:4px;display:grid}.admin-section-index a{width:fit-content;color:var(--text);padding:3px 0;font-size:.84rem;font-weight:600;text-decoration:none}.admin-section-index a:hover{color:var(--accent-dark);text-underline-offset:3px;text-decoration:underline}.admin-summary-block dl{gap:7px;margin:0;display:grid}.admin-summary-block dl>div{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.admin-summary-block dt{color:var(--muted);font-size:.78rem}.admin-summary-block dd{color:var(--heading);font-variant-numeric:tabular-nums;margin:0;font-size:.84rem;font-weight:700}.admin-settings{gap:24px;min-width:0;display:grid}.admin-settings-section{scroll-margin-top:calc(var(--site-header-height) + 18px);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);overflow:hidden}.admin-settings-header{border-bottom:1px solid var(--border);background:var(--surface-alt);gap:4px;padding:18px 20px;display:grid}.admin-settings-header h2{color:var(--heading);letter-spacing:-.015em;margin:0;font-size:1.05rem;font-weight:750;line-height:1.35}.admin-settings-header p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.55}.admin-setting-row{gap:10px;padding:20px}.admin-setting-row+.admin-setting-row{border-top:1px solid var(--border)}.admin-setting-row>strong{color:var(--heading);font-size:.95rem;line-height:1.45}.admin-setting-row>p{margin:0;line-height:1.65}.admin-setting-row-danger{background:color-mix(in srgb, var(--danger) 7%, transparent)}.admin-setting-actions,.admin-setting-form,.admin-discord-tier-row{flex-wrap:wrap;align-items:flex-end}.admin-setting-form>:is(.select,[data-select-root]){width:min(100%,320px)}.admin-setting-form-wide>.label{min-width:min(180px,100%)}.admin-checkbox-label{align-items:center;gap:8px;min-height:42px}.admin-checkbox-label input{width:16px;height:16px}.admin-grant-list,.admin-discord-tiers{gap:0;margin-top:4px}.admin-grant-row,.admin-discord-tier-row{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:12px 0}.admin-discord-tier-row{justify-content:flex-start}.admin-discord-tier-name{min-width:190px}.admin-discord-role-field{min-width:min(260px,100%)}.admin-color-input{min-height:42px;padding:5px}@media (max-width:960px){.admin-overview-layout{grid-template-columns:1fr}.admin-task-navigation{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.admin-nav-group+.admin-nav-group{margin-top:0}.admin-section-index{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.admin-section-index h2{width:100%;margin-bottom:0}}@media (max-width:640px){.admin-overview{gap:22px}.admin-overview-header h1{font-size:1.65rem}.admin-overview-layout,.admin-settings{gap:18px}.admin-task-navigation{grid-template-columns:1fr}.admin-nav-link small{white-space:normal}.admin-settings-header,.admin-setting-row{padding:16px}.admin-setting-form,.admin-setting-form>:is(.select,[data-select-root]),.admin-setting-form>.label,.admin-setting-form>button,.admin-setting-form-wide>.label,.admin-discord-tier-row>.label,.admin-discord-tier-row>button,.admin-discord-tier-name{width:100%}}@media (prefers-reduced-motion:reduce){.admin-nav-link,.admin-nav-arrow{transition:none}}
.doj-worker-command{padding:18px}.doj-worker-command-summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:12px;list-style-position:outside;display:flex}.doj-worker-command-status{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-alt);align-items:center;min-height:28px;padding:4px 10px;font-size:12px;font-weight:800;display:inline-flex}.doj-worker-command-status.status-succeeded{color:color-mix(in srgb, var(--success) 55%, var(--heading));background:color-mix(in srgb, var(--success) 10%, var(--surface));border-color:color-mix(in srgb, var(--success) 32%, var(--border))}.doj-worker-command-status.status-assigned,.doj-worker-command-status.status-claimed,.doj-worker-command-status.status-upload_started,.doj-worker-command-status.status-result_received,.doj-worker-command-status.status-batch_completed{color:color-mix(in srgb, var(--accent) 55%, var(--heading));background:color-mix(in srgb, var(--accent) 10%, var(--surface));border-color:color-mix(in srgb, var(--accent) 32%, var(--border))}.doj-worker-command-status.status-queued,.doj-worker-command-status.status-retry_queued,.doj-worker-command-status.status-lock_only{color:color-mix(in srgb, var(--warning) 55%, var(--heading));background:color-mix(in srgb, var(--warning) 10%, var(--surface));border-color:color-mix(in srgb, var(--warning) 32%, var(--border))}.doj-worker-command-status.status-testcase_stored,.doj-worker-command-status.status-queue_completed,.doj-worker-command-status.status-lease_released{color:color-mix(in srgb, var(--success) 55%, var(--heading));background:color-mix(in srgb, var(--success) 10%, var(--surface));border-color:color-mix(in srgb, var(--success) 32%, var(--border))}.doj-worker-command-status.status-failed,.doj-worker-command-status.status-timed_out,.doj-worker-command-status.status-lease_expired,.doj-worker-command-status.status-cancelled{color:color-mix(in srgb, var(--danger) 55%, var(--heading));background:color-mix(in srgb, var(--danger) 10%, var(--surface));border-color:color-mix(in srgb, var(--danger) 32%, var(--border))}.doj-worker-command-output{border:1px solid var(--border);border-radius:var(--radius);color:#f1f3f5;white-space:pre-wrap;overflow-wrap:anywhere;background:#111318;max-height:360px;margin:6px 0 0;padding:14px;font-size:12px;line-height:1.55;overflow:auto}.judge-worker-terminal{border-radius:var(--radius);color:#e9ecef;min-height:220px;max-height:520px;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Consolas, monospace);white-space:pre-wrap;overflow-wrap:anywhere;background:#0f1115;border:1px solid #2b303b;padding:16px;font-size:12px;line-height:1.55;overflow:auto}.judge-worker-log-line{grid-template-columns:92px 54px minmax(0,1fr);gap:10px;padding:2px 0;display:grid}.judge-worker-log-line.level-warn{color:#ffd43b}.judge-worker-log-line.level-error{color:#ff8787}.judge-worker-log-line.level-debug,.judge-worker-terminal-muted{color:#868e96}.judge-worker-console-entry{gap:5px;margin-bottom:16px;display:grid}.judge-worker-console-entry pre{color:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.judge-worker-console-entry pre.danger{color:#ff8787}.judge-worker-terminal-prompt{color:#69db7c;font-weight:800}.judge-worker-console-form{border-radius:var(--radius);background:#0f1115;border:1px solid #2b303b;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.judge-worker-console-form input{color:#f8f9fa;width:100%;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Consolas, monospace);background:0 0;border:0;outline:0}@media (max-width:700px){.judge-worker-log-line{grid-template-columns:72px 48px minmax(0,1fr)}.judge-worker-console-form{grid-template-columns:auto minmax(0,1fr)}.judge-worker-console-form .button{grid-column:1/-1}}
.doj-progress-shell{background:#0f172a1a;border-radius:999px;width:100%;height:10px;overflow:hidden}.doj-progress-bar{border-radius:inherit;background:linear-gradient(90deg, var(--accent), #14b8a6);height:100%;transition:width .18s}
.doj-call-for-task-table{width:100%;min-width:760px}.doj-call-for-task-table th,.doj-call-for-task-table td{vertical-align:middle;padding:12px 18px}.doj-call-for-task-table th:first-child,.doj-call-for-task-table td:first-child{padding-left:24px}.doj-call-for-task-table th:last-child,.doj-call-for-task-table td:last-child{padding-right:24px}.doj-call-for-task-review-table{min-width:1540px}.doj-call-for-task-review-table th+th,.doj-call-for-task-review-table td+td{border-left:1px solid color-mix(in srgb, var(--border) 72%, transparent)}.doj-call-for-task-kind-cell{min-width:150px}.doj-call-for-task-kind{white-space:nowrap;padding-inline:10px;font-weight:700;display:inline-block}.doj-call-for-task-kind.is-contest{color:#dc2626}.doj-call-for-task-kind.is-general{color:#2563eb}
.contest-question-workspace-page{gap:20px}.contest-question-workspace-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.contest-question-workspace-back{width:fit-content;color:var(--muted);font-size:.875rem;font-weight:600;text-decoration:none}.contest-question-workspace-back:hover{color:var(--accent)}.contest-question-workspace-subtitle{margin:0}.contest-question-workspace{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-elevated);grid-template-columns:minmax(280px,360px) minmax(0,1fr);min-height:min(720px,100vh - 190px);display:grid;overflow:hidden}.contest-question-workspace-list-pane{background:var(--surface-alt);border-right:1px solid var(--border-strong);grid-template-rows:auto minmax(0,1fr);min-width:0;display:grid}.contest-question-workspace-list-header{border-bottom:1px solid var(--border);padding:14px}.contest-question-workspace-filter{border-radius:var(--radius);background:var(--bg-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.contest-question-workspace-filter button{border-radius:var(--radius-sm);min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;padding:5px 7px;font-size:.8rem;font-weight:600;display:inline-flex}.contest-question-workspace-filter button:hover{color:var(--heading)}.contest-question-workspace-filter button.is-active{background:var(--bg-elevated);color:var(--heading);box-shadow:0 1px 2px #09090b14}.contest-question-workspace-filter button span{color:var(--accent);font-variant-numeric:tabular-nums}.contest-question-workspace-list{min-height:0;overflow-y:auto}.contest-question-workspace-list-item{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;gap:6px;padding:15px 16px;transition:background .14s,color .14s;display:grid;position:relative}.contest-question-workspace-list-item:hover{background:rgba(var(--accent-rgb), .05)}.contest-question-workspace-list-item.is-selected{background:rgba(var(--accent-rgb), .11);color:var(--heading)}.contest-question-workspace-list-item:focus-visible,.contest-question-workspace-filter button:focus-visible,.contest-question-workspace-presets button:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.contest-question-workspace-list-item-topline{justify-content:space-between;align-items:center;gap:8px;display:flex}.contest-question-workspace-state{color:var(--warning);font-size:.75rem;font-weight:700}.contest-question-workspace-state.is-answered{color:var(--success)}.contest-question-workspace-list-date,.contest-question-workspace-list-problem,.contest-question-workspace-list-preview{color:var(--muted);font-size:.78rem}.contest-question-workspace-list-date{white-space:nowrap}.contest-question-workspace-list-item strong,.contest-question-workspace-list-problem,.contest-question-workspace-list-preview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contest-question-workspace-list-item strong{color:inherit;font-size:.94rem}.contest-question-workspace-unsaved{width:fit-content;color:var(--accent);font-size:.75rem;font-weight:700}.contest-question-workspace-list-empty{color:var(--muted);text-align:center;padding:36px 20px;font-size:.875rem;line-height:1.6}.contest-question-workspace-answer-pane{background:var(--bg-elevated);flex-direction:column;min-width:0;display:flex}.contest-question-workspace-question-header{border-bottom:1px solid var(--border);padding:24px 28px 20px}.contest-question-workspace-question-header h2{color:var(--heading);text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:1.25rem;line-height:1.35}.contest-question-workspace-question-meta{flex-wrap:wrap;gap:6px}.contest-question-workspace-question-body{border-bottom:1px solid var(--border);min-height:130px;color:var(--heading);overflow-wrap:anywhere;padding:24px 28px;font-size:.98rem;line-height:1.75}.contest-question-workspace-form{gap:20px;min-width:0;padding:24px 28px 28px;display:grid}.contest-question-workspace-presets{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.contest-question-workspace-presets legend{color:var(--text);margin-bottom:8px;font-size:.82rem;font-weight:600}.contest-question-workspace-presets>div{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.contest-question-workspace-presets button{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-alt);max-width:100%;color:var(--text);cursor:pointer;text-align:left;white-space:normal;overflow-wrap:anywhere;padding:7px 10px;font-size:.8rem;line-height:1.4;transition:background .12s,border-color .12s,color .12s}.contest-question-workspace-presets button:hover{border-color:rgba(var(--accent-rgb), .35);background:rgba(var(--accent-rgb), .08);color:var(--heading)}.contest-question-workspace-response-label .textarea{min-height:150px;line-height:1.7}.contest-question-workspace-form-footer{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.contest-question-workspace-form-footer>.label{width:min(100%,280px)}.contest-question-workspace-save-area{justify-content:flex-end;align-items:center;gap:12px;min-height:40px;display:flex}.contest-question-workspace-answer-empty{min-height:320px;color:var(--muted);text-align:center;flex:1;place-content:center;gap:8px;padding:32px;display:grid}.contest-question-workspace-answer-empty strong{color:var(--heading)}@media (max-width:800px){.contest-question-workspace-heading{align-items:flex-start}.contest-question-workspace{grid-template-columns:minmax(0,1fr);min-height:0;overflow:visible}.contest-question-workspace-list-pane{border-right:0;border-bottom:1px solid var(--border-strong);max-height:340px}}@media (max-width:640px){.contest-question-workspace-heading{flex-direction:column;gap:12px}.contest-question-workspace-question-header,.contest-question-workspace-question-body,.contest-question-workspace-form{padding-left:18px;padding-right:18px}.contest-question-workspace-form-footer{flex-direction:column;align-items:stretch}.contest-question-workspace-form-footer>.label{width:100%}.contest-question-workspace-save-area{flex-direction:column;align-items:stretch}.contest-question-workspace-save-area .button{width:100%}}@media (prefers-reduced-motion:reduce){.contest-question-workspace-list-item,.contest-question-workspace-presets button{transition:none}}
.contest-balloon-console,.contest-balloon-settings{gap:16px;display:grid}.contest-balloon-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.contest-balloon-header .page-title,.contest-balloon-context{margin:0}.contest-balloon-context{color:var(--muted);margin-bottom:3px;font-size:.9rem;font-weight:600}.contest-balloon-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.contest-balloon-header-actions .button-ghost,.contest-balloon-header>.button-ghost{align-items:center;gap:7px;display:inline-flex}.contest-balloon-sync{color:var(--muted);align-items:center;gap:6px;font-size:.84rem;font-weight:600;display:inline-flex}.contest-balloon-sync .doj-material-symbol{color:var(--success)}.contest-balloon-summary{border-block:1px solid var(--border-strong);background:var(--surface);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contest-balloon-summary-item{min-height:58px;color:var(--text);grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:10px 16px;display:grid}.contest-balloon-summary-item+.contest-balloon-summary-item{border-left:1px solid var(--border)}.contest-balloon-summary-item strong{color:var(--heading);font-variant-numeric:tabular-nums;font-size:1.28rem;line-height:1}.contest-balloon-summary-item.is-delivered .doj-material-symbol{color:var(--success)}.contest-balloon-list-heading,.contest-balloon-row{grid-template-columns:minmax(180px,.8fr) minmax(200px,1.1fr) minmax(125px,.58fr) minmax(165px,.72fr);align-items:center;gap:16px;display:grid}.contest-balloon-list-heading{color:var(--muted);padding:0 16px;font-size:.8rem;font-weight:700}.contest-balloon-cycle-hint{color:var(--muted);margin:0;font-size:.82rem}.contest-balloon-inline-message{border:1px solid color-mix(in srgb, var(--warning) 45%, var(--border));border-radius:var(--radius);background:color-mix(in srgb, var(--warning) 9%, var(--surface));color:var(--heading);margin:-4px 0 0;padding:10px 12px;font-size:.88rem}.contest-balloon-list{border-block:1px solid var(--border-strong);background:var(--surface);overflow:hidden}.contest-balloon-row{border:0;border-bottom:1px solid var(--border);background:var(--surface);width:100%;min-height:60px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:0;padding:8px 16px;transition:background-color .16s ease-out,color .16s ease-out}.contest-balloon-row:last-child{border-bottom:0}.contest-balloon-row:hover{background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.contest-balloon-row:active{background:color-mix(in srgb, var(--accent) 11%, var(--surface))}.contest-balloon-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;position:relative}.contest-balloon-row:disabled{cursor:progress;opacity:.72}.contest-balloon-row.is-delivered{background:var(--surface-alt);color:var(--muted)}.contest-balloon-problem{align-items:center;gap:12px;min-width:0;display:flex}.contest-balloon-icon{flex:0 0 36px;place-items:center;width:36px;height:40px;display:inline-grid}.contest-balloon-phosphor-icon{flex:none;display:block}.contest-balloon-problem-copy{min-width:0;display:grid}.contest-balloon-problem-copy strong,.contest-balloon-user{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contest-balloon-problem-copy strong{font-size:.94rem;line-height:1.35}.contest-balloon-problem-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:.75rem;line-height:1.3;overflow:hidden}.contest-balloon-user{font-size:.94rem}.contest-balloon-status{align-items:center;gap:7px;font-size:.9rem;font-weight:700;display:inline-flex}.contest-balloon-row.is-delivered .contest-balloon-status{color:var(--success)}.contest-balloon-time{color:inherit;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:left}.contest-balloon-empty{color:var(--muted);text-align:center;justify-items:center;gap:6px;padding:48px 20px;display:grid}.contest-balloon-empty strong{color:var(--heading)}.contest-balloon-empty span{font-size:.88rem}.contest-balloon-settings-list{border-block:1px solid var(--border-strong);background:var(--surface);display:grid}.contest-balloon-settings-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(240px,1fr) 92px minmax(130px,160px) minmax(180px,.75fr) auto;align-items:end;gap:12px;padding:12px 16px;display:grid}.contest-balloon-settings-row:last-child{border-bottom:0}.contest-balloon-settings-problem{align-items:center;gap:11px;min-width:0;min-height:40px;display:flex}.contest-balloon-settings-problem>span{min-width:0;display:grid}.contest-balloon-settings-problem strong,.contest-balloon-settings-problem small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contest-balloon-settings-problem strong{color:var(--heading);font-size:.92rem}.contest-balloon-settings-problem small{color:var(--muted);font-size:.75rem}.contest-balloon-color-picker input[type=color]{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;width:100%;min-height:40px;padding:4px}.contest-balloon-settings-row .input.is-invalid{border-color:var(--danger)}.contest-balloon-color-clear{min-height:40px}.contest-balloon-settings-footer{align-items:center;gap:12px;min-height:44px;display:flex}.contest-balloon-settings-success{color:var(--success);font-size:.88rem;font-weight:600}.contest-balloon-settings-error{color:var(--danger);font-size:.88rem;font-weight:600}@media (max-width:860px){.contest-balloon-header{flex-direction:column;align-items:flex-start}.contest-balloon-header-actions{justify-content:flex-start}.contest-balloon-list-heading{display:none}.contest-balloon-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"problem time""user status";gap:5px 12px;min-height:76px;padding-block:10px}.contest-balloon-problem{grid-area:problem}.contest-balloon-user{grid-area:user;padding-left:48px}.contest-balloon-status{grid-area:status;justify-self:right}.contest-balloon-time{grid-area:time;font-size:.76rem}.contest-balloon-settings-row{grid-template-columns:minmax(0,1fr) 100px minmax(130px,.75fr)}.contest-balloon-settings-problem{grid-column:1/-1}.contest-balloon-settings-row .label:last-of-type{grid-column:span 2}}@media (max-width:580px){.contest-balloon-summary-item{grid-template-columns:1fr auto;gap:3px 6px;padding-inline:12px}.contest-balloon-summary-item .doj-material-symbol{display:none}.contest-balloon-summary-item span{font-size:.78rem}.contest-balloon-summary-item strong{font-size:1.08rem}.contest-balloon-sync{flex-basis:100%}.contest-balloon-settings-row{grid-template-columns:78px minmax(0,1fr)}.contest-balloon-settings-row .label:last-of-type{grid-column:1/-1}.contest-balloon-color-clear{grid-column:1/-1;justify-self:start}.contest-balloon-settings-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.contest-balloon-row{transition:none}}
.contest-detail-hero{gap:16px}.contest-detail-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.contest-detail-admin-actions,.contest-action-links,.contest-attachment-links,.contest-participation-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.contest-detail-admin-actions{flex:none}.contest-fact-list{flex-wrap:wrap;gap:8px;display:flex}.contest-hero-meta{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(240px,.42fr);align-items:stretch;gap:24px;padding-top:16px;display:grid}.contest-hero-meta-group{min-width:0;margin:0}.contest-hero-staff{display:grid}.contest-hero-staff .contest-hero-meta-item{grid-template-columns:80px minmax(0,1fr);align-items:baseline;gap:12px;min-width:0;padding:8px 0;display:grid}.contest-hero-staff .contest-hero-meta-item:first-child{padding-top:0}.contest-hero-staff .contest-hero-meta-item:last-child{padding-bottom:0}.contest-hero-staff .contest-hero-meta-item+.contest-hero-meta-item{border-top:1px solid var(--border)}.contest-hero-schedule{border-left:1px solid var(--border);grid-template-rows:max-content max-content;align-content:center;gap:12px;padding-left:24px;display:grid}.contest-hero-schedule .contest-hero-meta-item{align-content:start;gap:4px;min-width:0;display:grid}.contest-hero-meta-label,.contest-hero-meta-value{margin:0}.contest-hero-meta-label{color:var(--muted);letter-spacing:.04em;font-size:.73rem;font-weight:700}.contest-hero-meta-value{color:var(--heading);font-size:1rem;font-weight:650;line-height:1.5}.contest-staff-links{flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;display:flex}.contest-staff-links a{overflow-wrap:anywhere;font-weight:700}.contest-fact{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-alt);color:var(--muted);white-space:nowrap;align-items:baseline;gap:7px;padding:7px 10px;font-size:.78rem;line-height:1.35;display:inline-flex}.contest-fact strong{color:var(--heading);letter-spacing:-.01em;font-size:.82rem}.contest-fact.is-rated{border-color:rgba(var(--accent-rgb), .3);background:rgba(var(--accent-rgb), .08)}.contest-fact.is-rated strong{color:var(--accent-dark)}html[data-theme=dark] .contest-fact.is-rated strong{color:var(--accent)}.contest-action-bar,.contest-attachment-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.contest-action-bar{min-height:58px}@media (min-width:761px){.contest-action-bar:has(>.contest-participation-control){grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.contest-action-bar>.contest-participation-control,.contest-action-bar>.contest-participation-control>.contest-participation-main{display:contents}.contest-action-bar>.contest-participation-control .contest-participation-copy{grid-area:1/1}.contest-action-bar>.contest-participation-control .contest-participation-actions{grid-area:1/2}.contest-action-bar:has(>.contest-participation-control)>.contest-action-links{grid-area:1/3}.contest-action-bar>.contest-participation-control>.notice{grid-area:2/1/auto/-1;margin-top:0}}.contest-action-bar.has-team-context{padding-block:9px;gap:12px;padding-left:0}.contest-action-bar.has-team-context .contest-action-links{flex:none}.contest-participation-control{flex:auto;min-width:0}.contest-participation-main{justify-content:space-between;align-items:center;gap:14px;display:flex}.contest-participation-copy{align-items:baseline;gap:10px;min-width:0;display:flex}.contest-participation-copy strong{color:var(--heading);flex:none;font-size:.9rem}.contest-participation-copy span,.contest-action-note{color:var(--muted);font-size:.84rem;line-height:1.55}.contest-participation-control>.notice{margin-top:12px}.contest-registration-modal{width:min(680px,100vw - 32px);max-width:680px}.contest-registration-lead{margin:0}.contest-registration-kind-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.contest-registration-kind{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;min-height:116px;color:var(--text);text-align:start;cursor:pointer;gap:5px;padding:16px;display:grid}.contest-registration-kind:not(:disabled):hover{border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .05)}.contest-registration-kind:focus-visible{border-color:var(--accent);outline:2px solid rgba(var(--accent-rgb), .22);outline-offset:2px}.contest-registration-kind:disabled{cursor:not-allowed;opacity:.56}.contest-registration-kind strong{color:var(--heading);font-size:1rem}.contest-registration-kind span{color:var(--muted);overflow-wrap:anywhere;font-size:.85rem;line-height:1.55}.contest-registration-form{gap:14px}.contest-registration-roster{border:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0;margin:0;padding:12px 0}.contest-registration-roster legend{color:var(--heading);padding:0;font-size:.88rem;font-weight:700}.contest-registration-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin-top:10px;display:grid}.contest-registration-roster-grid label{cursor:pointer;align-items:center;gap:8px;min-width:0;display:flex}.contest-registration-roster-grid span{overflow-wrap:anywhere;min-width:0}.contest-registration-team-note{margin:0}.contest-registration-empty{justify-items:start;gap:7px;padding-block:8px;display:grid}.contest-registration-empty span{color:var(--muted);font-size:.86rem}.contest-registration-footer{justify-content:space-between;align-items:center;gap:10px;min-height:42px;display:flex}.contest-action-links{flex:none}.contest-action-disabled:disabled{cursor:not-allowed;opacity:.62}.contest-attachment-strip{justify-content:flex-start}.contest-attachment-strip>strong{color:var(--heading);flex:none;font-size:.9rem}.contest-attachment-links{justify-content:flex-start}.contest-detail-content{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.contest-detail-flow{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow);display:grid;overflow:hidden}.contest-detail-section{border-top:1px solid var(--border);min-width:0;padding:24px 26px}.contest-detail-flow>.contest-detail-section:first-child,.doj-contest-rules-panel{border-top:0;border-color:var(--border)}.contest-rules-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:44px;list-style:none;display:flex}.contest-rules-summary::-webkit-details-marker{display:none}.contest-rules-summary .section-title{margin:0}.contest-rules-summary-action{color:var(--muted);flex:none;align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:inline-flex}.contest-rules-summary-action .doj-material-symbol{transition:transform .18s cubic-bezier(.22,1,.36,1)}.doj-contest-rules-panel[open] .contest-rules-summary-action .doj-material-symbol{transform:rotate(180deg)}.contest-rules-label-expand,.doj-contest-rules-panel:not([open]) .contest-rules-label-collapse{display:none}.doj-contest-rules-panel:not([open]) .contest-rules-label-expand{display:inline}.contest-rules-content{padding-top:16px}.contest-announcement-composer{background:var(--surface-alt)}.contest-announcement-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.contest-announcement-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.contest-announcement-edit-form{border-top:1px solid var(--border);margin-top:4px;padding-top:16px}@media (max-width:640px){.contest-announcement-heading{display:grid}.contest-announcement-actions{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.contest-rules-summary-action .doj-material-symbol{transition:none}}.contest-problem-section .section-header{margin-bottom:14px}.contest-problem-table-wrap{overflow-x:auto}.contest-problem-table-wrap .table{margin:0}.contest-feed-list,.contest-question-list{border-top:1px solid var(--border);gap:0;max-height:none;display:grid;overflow:visible}.contest-feed-item,.contest-discussion-item{border-bottom:1px solid var(--border);padding:18px 0}.contest-feed-item:last-child,.contest-discussion-item:last-child{border-bottom:0;padding-bottom:0}.contest-feed-item:first-child,.contest-discussion-item:first-child{padding-top:18px}.contest-question-composer{background:var(--surface-alt)}.contest-question-composer>summary{cursor:pointer;color:var(--heading);font-size:1rem;font-weight:700;list-style-position:inside}.contest-question-composer[open]>summary{margin-bottom:18px}.contest-question-form{padding-top:2px}@media (max-width:900px){.contest-hero-meta{grid-template-columns:minmax(0,1fr);gap:16px}.contest-hero-schedule{border-top:1px solid var(--border);border-left:0;grid-template-rows:max-content;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:24px;padding-top:16px;padding-left:0}.contest-detail-content{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.contest-detail-title-row,.contest-action-bar,.contest-participation-main,.contest-attachment-strip{flex-direction:column;align-items:stretch}.contest-detail-admin-actions,.contest-action-links,.contest-participation-actions,.contest-attachment-links{justify-content:flex-start}.contest-participation-copy{flex-direction:column;align-items:flex-start;gap:3px}.contest-registration-kind-grid,.contest-registration-roster-grid{grid-template-columns:1fr}.contest-action-bar.has-team-context{padding-inline:0}.contest-action-bar.has-team-context .contest-action-links{padding-inline:16px}.team-contest-control.is-open-submit{flex-direction:column;align-items:flex-start;gap:4px;width:100%}.contest-registration-footer{flex-direction:column-reverse;align-items:stretch}.contest-registration-footer>.inline{justify-content:flex-end}.contest-fact{white-space:normal}.contest-detail-section{padding:20px 18px}}@media (max-width:520px){.contest-hero-staff .contest-hero-meta-item,.contest-hero-schedule{grid-template-columns:minmax(0,1fr)}.contest-hero-staff .contest-hero-meta-item{align-items:start;gap:4px}.contest-hero-schedule{gap:12px}}
body,html[data-theme=dark] body{background-image:none}.site-header{-webkit-backdrop-filter:blur(10px);background:color-mix(in srgb, var(--bg) 92%, transparent)}html[data-theme=dark] .site-header{background:color-mix(in srgb, var(--bg) 90%, transparent)}.site-header-inner{min-height:56px}.nav-link,.nav-menu-item,.header-auth-pill,.notification-inbox-link,.theme-toggle,.language-switcher,.profile-decoration-trigger,.profile-decoration-option{border-radius:var(--radius)}.nav-link{padding:5px 9px}.nav-link:hover,.nav-link.active{background:rgba(var(--accent-rgb), .08)}.nav-link-call-for-tasks,.nav-link-call-for-tasks:hover,.nav-link-call-for-tasks.active{box-shadow:none;background:#e85d04}.nav-menu-popover,.doj-score-tooltip,.doj-status-problem-tooltip{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.doj-table-card,.doj-home-panel,.doj-home-stats-panel,.doj-profile-hero,.doj-summary-card,.doj-banner-card,.doj-profile-banner-card,.doj-contest-hero-card,.doj-contest-rules-panel,.doj-statement-attachment-panel,.doj-testcase-summary-card,.doj-sample-run-panel,.doj-testcase-detail-panel,.doj-category-browser-card,.warning-panel,.hp-notice-empty,.hp-join{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--surface)}.doj-contest-hero-card:before,.doj-home-panel:before,.hp-join:before{opacity:.25}.doj-profile-hero,.doj-summary-card,.doj-banner-card,.doj-table-card{padding:20px 22px}.locale-chip,.doj-subtask-resource-chip,.problem-tag-picker-chip,.doj-profile-title-chip{border-radius:var(--radius);box-shadow:none;padding:3px 8px}.doj-profile-avatar,.doj-profile-avatar img,.admin-sortable-preview,.profile-decoration-thumb{border-radius:var(--radius-lg)}.doj-progress-shell,.doj-progress-bar{border-radius:var(--radius)}
body,html[data-theme=dark] body{background-image:none}.page-shell,.site-header-inner,.site-footer-inner,.homepage-announcement-inner{width:min(1320px,100% - 40px)}.site-header{-webkit-backdrop-filter:none;background:color-mix(in srgb, var(--bg-elevated) 96%, transparent);border-bottom-color:var(--border-strong)}html[data-theme=dark] .site-header{background:color-mix(in srgb, var(--bg) 96%, transparent);border-bottom-color:var(--border-strong)}.brand-logo,.brand-logo img,.brand-logo svg,.nav-link,.nav-menu-item,.header-auth-pill,.notification-inbox-link,.theme-toggle,.language-switcher,.locale-chip,.profile-decoration-trigger{border-radius:var(--radius)}.nav-link{color:var(--text);font-weight:650}.nav-link:hover,.nav-link.active{background:var(--surface-alt);color:var(--heading)}.nav-link-call-for-tasks,.nav-link-call-for-tasks:hover,.nav-link-call-for-tasks.active{color:#fff;box-shadow:none;background:#e85d04}.nav-menu-popover{border-radius:var(--radius);box-shadow:var(--shadow-lg)}.doj-hero-shell,.doj-section-block,.doj-tier-guide,.doj-profile-hero,.doj-summary-card,.doj-chart-card,.doj-banner-card,.doj-toolbar-card,.doj-table-card,.doj-table-shell,.doj-empty-card,.doj-line-card,.doj-week-card,.doj-contest-hero-card,.doj-contest-rules-panel,.doj-profile-banner-card,.doj-statement-attachment-panel,.doj-statement-lang-card,.doj-statement-inspector-card,.doj-statement-embedded-card,.doj-attachment-preview-card,.doj-submit-modal-card,.doj-sample-run-panel,.doj-testcase-summary-card,.doj-testcase-detail-panel,.doj-category-browser-card,.warning-panel,.card-interactive{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;background:var(--surface)}.doj-hero-shell:before,.doj-week-card:before,.doj-contest-hero-card:before,.doj-home-panel:before,.hp-join:before{display:none}.doj-hero-shell,.doj-section-block,.doj-profile-hero,.doj-banner-card,.doj-toolbar-card,.doj-table-card,.doj-table-shell,.doj-empty-card{padding:20px 22px}.doj-display-title span,html[data-theme=dark] .doj-display-title span{-webkit-text-fill-color:currentColor;color:var(--accent);background:0 0}.problem-tag-picker-chip,.doj-subtask-resource-chip,.doj-profile-title-chip,.hp-tag{border-radius:var(--radius);background:var(--surface-alt);box-shadow:none}.doj-score-bar,.doj-score-bar-fill,.doj-progress-shell,.doj-progress-bar,.problem-score-summary .doj-score-bar.is-large{border-radius:var(--radius)}.problem-article,.problem-sidebar .panel,[data-problem-hero-card]{border-radius:var(--radius-lg)}.doj-category-browser-card,html[data-theme=dark] .doj-category-browser-card{background:var(--surface);border-color:var(--category-card-border,var(--border))}.doj-category-browser-card:hover{background:color-mix(in srgb, rgb(var(--category-card-accent-rgb)) 5%, var(--surface));border-color:rgba(var(--category-card-accent-rgb), .48)}html[data-theme=dark] .doj-category-browser-card{border-color:rgba(var(--category-card-accent-rgb), .3)}html[data-theme=dark] .doj-category-browser-card:hover{background:color-mix(in srgb, rgb(var(--category-card-accent-rgb)) 12%, var(--surface))}.problem-feedback-button.is-positive.is-active,.problem-feedback-button.is-negative.is-active{filter:none}@media (max-width:640px){.page-shell,.site-header-inner,.site-footer-inner,.homepage-announcement-inner{width:min(100%,100% - 24px)}.doj-hero-shell,.doj-profile-hero,.doj-summary-card,.doj-banner-card,.doj-table-card{padding:16px}}
.group-workspace{word-break:keep-all;gap:24px;min-width:0}.group-heading{padding:8px 0 0}.group-heading p{margin-top:12px}.group-tabs{border-bottom:1px solid var(--border);gap:24px;display:flex;overflow-x:auto}.group-tabs a{color:var(--muted);border-bottom:2px solid #0000;flex:none;padding:12px 2px;text-decoration:none}.group-tabs a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}.group-tabs a:hover{color:var(--heading)}.group-tabs a:focus-visible,.group-list-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.group-section-heading{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.group-section-heading h2{margin:0;font-size:1.25rem}.group-section-heading p{margin-top:8px}.group-list{border-top:1px solid var(--border)}.group-list-row{border-bottom:1px solid var(--border);color:var(--text);justify-content:space-between;align-items:center;gap:24px;padding:20px 12px;text-decoration:none;display:flex}.group-list-row:hover{background:var(--surface-alt)}.group-list-row>div{min-width:0}.group-list-row strong{color:var(--heading)}.group-list-row p{margin:6px 0 0}.group-list-row>span{font-variant-numeric:tabular-nums;flex-shrink:0}.group-empty{border-bottom:1px solid var(--border);padding:36px 12px}.group-empty h3{margin:0 0 8px}.group-disclosure{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.group-disclosure>summary{cursor:pointer;padding:16px 20px;font-weight:600}.group-disclosure[open]>summary{border-bottom:1px solid var(--border)}.group-form{padding:24px}.group-workspace .doj-table-card{box-shadow:none;overflow-x:auto}.group-workspace .table{font-variant-numeric:tabular-nums}.group-workspace .table th{white-space:nowrap}.group-workspace .input,.group-workspace .textarea{caret-color:var(--accent)}.group-workspace ::selection{background:var(--accent);color:var(--surface)}.group-form-width{width:100%;max-width:52rem}.group-form.stack,.group-settings-form.stack{gap:16px}.group-form .textarea,.group-settings-form .textarea{min-height:5rem}.group-workspace .checkbox-row{align-items:center;gap:8px;display:flex}.group-form>button,.group-settings-form>button{place-self:start}.group-field-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.group-field-pair>*,.group-workspace .label{min-width:0}.group-entry-forms{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;max-width:64rem;display:grid}.group-list-meta{color:var(--muted);white-space:nowrap;font-size:.85rem}.group-back-row{align-items:center;gap:12px;min-width:0;display:flex}.group-back-row>span{overflow-wrap:break-word;min-width:0}.group-back-link{flex:none;gap:8px;text-decoration:none}.group-practice-overview{gap:16px;display:grid}.group-practice-overview p{margin:0}.group-schedule{border-block:1px solid var(--border);flex-wrap:wrap;gap:16px 32px;margin:0;padding:16px 0;display:flex}.group-schedule>div{gap:4px;display:grid}.group-schedule dt{color:var(--muted);font-size:.82rem}.group-schedule dd{color:var(--heading);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.group-schedule .group-state-running{color:var(--accent)}.group-score-cell{width:10rem;min-width:10rem}.group-score-cell .doj-score-bar{width:100%}.group-add-problems{grid-template-columns:minmax(0,1fr) 6rem auto;align-items:end;gap:16px;max-width:52rem;display:grid}.group-add-heading{grid-column:1/-1}.group-add-heading p{margin:8px 0 0}.group-add-problems .textarea{min-height:42px}.group-problem-editor{border-top:1px solid var(--border);grid-template-columns:minmax(12rem,1fr) 4.5rem 6rem 6rem auto auto auto;align-items:end;gap:12px;padding:16px 0;display:grid}.group-problem-fields{display:contents}.group-problem-name{overflow-wrap:break-word;align-self:center;gap:4px;min-width:0;display:grid}.group-problem-editor .checkbox-row{white-space:nowrap;align-self:end;min-height:40px}.group-problem-editor button{white-space:nowrap;min-height:40px}.group-problem-editor .input{font-variant-numeric:tabular-nums;padding-inline:8px}.group-remove-button{color:var(--danger)}.group-disclosure .panel{border:0;border-radius:0}.group-workspace>.group-heading,.group-workspace>.group-heading p{max-width:none}.group-disclosure>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (max-width:1000px){.group-problem-editor{grid-template-columns:repeat(3,minmax(0,1fr))}.group-problem-name{grid-column:1/-1}.group-problem-editor .checkbox-row{white-space:normal}.group-problem-editor button{justify-self:start}}@media (max-width:640px){.group-workspace,.group-tabs{gap:20px}.group-form{padding:16px}.group-field-pair,.group-entry-forms{grid-template-columns:minmax(0,1fr)}.group-list-row{align-items:flex-start;gap:16px;padding:16px 4px}.group-workspace .table{min-width:520px}.group-workspace .group-workbook-table{table-layout:fixed;min-width:0}.group-workbook-table th,.group-workbook-table td{padding-inline:8px}.group-workbook-table th:first-child{width:2.5rem}.group-workbook-table th:last-child,.group-workbook-table .group-score-cell{width:8rem;min-width:0}.group-workbook-table td:nth-child(2){overflow-wrap:break-word}.group-add-problems{grid-template-columns:minmax(0,1fr) auto;gap:12px}.group-add-problems>.label:first-of-type{grid-column:1/-1}.group-problem-editor{gap:12px 8px}.group-schedule{column-gap:24px}}
.brand,.nav-link,.nav-menu-item{position:relative}.navigation-pending{background:var(--accent);opacity:0;pointer-events:none;border-radius:2px;height:2px;position:absolute;inset:auto 0 0}.navigation-pending[data-pending]{opacity:1}.page-skeleton-block{background:var(--border);border-radius:4px;height:.9rem;display:block}.page-skeleton-eyebrow{width:5rem;height:.7rem}.page-skeleton-title{width:min(65%,28rem);height:2rem}.page-skeleton-subtitle{width:min(45%,18rem)}.page-skeleton-lines{gap:1.2rem;display:grid}.page-skeleton-lines .page-skeleton-block:nth-child(3n){width:72%}.page-skeleton-lines .page-skeleton-block:last-child{width:48%}.problem-article>.page-skeleton-lines{align-content:start;min-height:24rem}.problem-feedback-skeleton{width:6rem;height:2rem}

