/* DYOJ learning workspaces. Shared geometry follows the confirmed problem bank. */
html.hydro-refined.dyoj-workspace {
  --ref-canvas:#f2f5fb;--ref-panel:#fff;--ref-ink:#172b4d;--ref-muted:#526581;--ref-line:#d1dbea;--ref-hover:#f5f7fc;
}
html.hydro-refined.dyoj-workspace.theme--dark {--ref-canvas:#121a27;--ref-panel:#1b2534;--ref-ink:#e3eaf5;--ref-muted:#afbed3;--ref-line:#38475e;--ref-hover:#232f42;}
html.hydro-refined.dyoj-workspace #panel {background:var(--ref-canvas)}
html.hydro-refined.dyoj-workspace .main {padding-top:74px}
html.hydro-refined.dyoj-workspace .main>.row {max-width:1440px;padding-inline:24px}
html.hydro-refined.dyoj-workspace .main :is(.school-page,.school-library,.dyoj-class-page,.dyoj-class-detail){--ref-line:#d1dbea;max-width:none}
html.hydro-refined.dyoj-workspace.theme--dark .main :is(.school-page,.school-library,.dyoj-class-page,.dyoj-class-detail){--ref-line:#38475e}
html.hydro-refined.dyoj-workspace .main {font-family:"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ref-ink);font-size:14px;line-height:1.6}
html.hydro-refined.dyoj-workspace .main :is(h1,h2,h3){font-family:inherit;color:var(--ref-ink);line-height:1.5}
html.hydro-refined.dyoj-workspace .main :is(h1){font-size:24px;font-weight:650}
html.hydro-refined.dyoj-workspace .main :is(h2){font-size:16px;font-weight:650}
html.hydro-refined.dyoj-workspace .main a {text-decoration:none}
html.hydro-refined.dyoj-workspace .main :is(a,button,input,select,summary):focus-visible {outline:2px solid var(--ref-accent);outline-offset:3px;scroll-margin:90px 0 70px}
html.hydro-refined.dyoj-workspace .main .section {outline:0;border:1px solid var(--ref-line);border-radius:12px;box-shadow:0 2px 8px #203e7108;background:var(--ref-panel)}
html.hydro-refined.dyoj-workspace .main :is(.dyoj-class-page,.dyoj-class-detail).section {background:none;border:0;box-shadow:none;margin:0;padding:0}
html.hydro-refined.dyoj-workspace .main .button {display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;margin:0;padding:8px 14px;border:1px solid var(--ref-line);border-radius:8px;background:var(--ref-panel);color:var(--ref-ink);font:500 13px/1.4 "Segoe UI","Microsoft YaHei",sans-serif;white-space:nowrap;box-shadow:none;transition:background .15s,border-color .15s}
html.hydro-refined.dyoj-workspace .main .button:hover {background:var(--ref-hover);border-color:#a6b7d5;filter:none}
html.hydro-refined.dyoj-workspace .main .primary.button {background:var(--ref-primary);border-color:var(--ref-primary);color:white;font-weight:600}
html.hydro-refined.dyoj-workspace .main .primary.button:hover {background:var(--ref-primary-hover);border-color:var(--ref-primary-hover)}
html.hydro-refined.dyoj-workspace .main :is(input.textbox,select.textbox,textarea.textbox) {border:1px solid var(--ref-line);border-radius:8px;background:var(--ref-panel);color:var(--ref-ink);box-shadow:none;min-height:42px;font:14px/1.6 "Segoe UI","Microsoft YaHei",sans-serif;box-sizing:border-box}
html.hydro-refined.dyoj-workspace .main input::placeholder {color:var(--ref-muted);opacity:1}
html.hydro-refined.dyoj-workspace .main select {appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23586a85' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:35px}
.workspace-sr {position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
.workspace-actions,.workspace-toolbar {display:flex;align-items:center;gap:12px}
.workspace-toolbar {justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--ref-line)}
.workspace-tab {display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border-radius:8px;font-weight:600}
.workspace-tab:not(.is-active):hover {background:var(--ref-hover)}
.workspace-tab.is-active {background:var(--ref-primary);color:white}
.workspace-hint {font-size:12px;color:var(--ref-muted);line-height:1.7}
.workspace-card {border:1px solid var(--ref-line);border-radius:12px;background:var(--ref-panel);box-shadow:0 2px 8px #203e7108;overflow:hidden}
.workspace-empty {padding:52px 24px;text-align:center;color:var(--ref-muted)}
.workspace-empty h2 {margin:0 0 10px}.workspace-empty p{margin:0 0 20px}
.workspace-table-scroll {max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
/* Class discovery and identity. */
html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-toolbar {padding:16px 20px;border-radius:12px;gap:14px;margin:0 0 22px;box-shadow:0 2px 8px #203e7108}
html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-tabs {flex:1;gap:4px;margin:0;min-width:0}
html.hydro-refined.dyoj-workspace .dyoj-class-tab {padding:10px 14px;font-size:14px;line-height:1.5;border-radius:8px;white-space:nowrap;color:var(--ref-muted);border:0;font-weight:500}
html.hydro-refined.dyoj-workspace .dyoj-class-tab:hover {background:var(--ref-hover);color:var(--ref-ink)}
html.hydro-refined.dyoj-workspace .dyoj-class-tab.is-active {background:var(--ref-primary);color:white;box-shadow:none;font-weight:600}
html.hydro-refined.dyoj-workspace .dyoj-class-count {font-size:12px;line-height:20px;border-radius:4px;padding:0 6px;min-width:20px;background:var(--ref-hover);color:var(--ref-muted)}
html.hydro-refined.dyoj-workspace .dyoj-class-tab.is-active .dyoj-class-count {background:#ffffff26;color:white}
html.hydro-refined.dyoj-workspace .dyoj-class-search {flex:0 1 280px;width:280px}
html.hydro-refined.dyoj-workspace .dyoj-class-search .textbox {width:100%;height:42px;background:var(--ref-hover)}
html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-grid {gap:20px;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:0}
html.hydro-refined.dyoj-workspace .dyoj-class-card {border:1px solid var(--ref-line);border-radius:12px;box-shadow:0 2px 8px #203e7108;transition:border-color .15s}
html.hydro-refined.dyoj-workspace .dyoj-class-card:hover {border-color:#a0b4d7;box-shadow:0 2px 8px #203e7112!important;transform:none}
html.hydro-refined.dyoj-workspace .dyoj-class-card-link {padding:22px;min-height:210px}
html.hydro-refined.dyoj-workspace .dyoj-class-card-title strong {font-size:17px;font-weight:650;color:var(--ref-ink)}
html.hydro-refined.dyoj-workspace .dyoj-class-card-desc {font-size:14px;line-height:1.8;min-height:48px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 12px}
html.hydro-refined.dyoj-workspace .dyoj-class-card-meta {margin:0 0 16px;font-size:12px;color:var(--ref-muted)}
html.hydro-refined.dyoj-workspace .dyoj-class-card-foot {padding-top:14px;border-top:1px solid var(--ref-line);font-size:13px}
html.hydro-refined.dyoj-workspace .dyoj-class-card .dyoj-class-enter {color:var(--ref-accent);font-weight:600}
html.hydro-refined.dyoj-workspace .dyoj-class-create {padding:24px;margin:0 0 22px;border-radius:12px;border:1px solid var(--ref-line);background:var(--ref-panel)}
html.hydro-refined.dyoj-workspace .school-breadcrumb {font-size:13px;margin:0 0 16px;line-height:1.7;color:var(--ref-muted);overflow-wrap:anywhere}
html.hydro-refined.dyoj-workspace .dyoj-class-hero {padding:24px 28px;border-radius:12px 12px 0 0;margin:0;border:1px solid var(--ref-line);border-bottom:0;background:var(--ref-panel)}
html.hydro-refined.dyoj-workspace .dyoj-class-hero .learning-eyebrow {display:none}
html.hydro-refined.dyoj-workspace .dyoj-class-head h1 {font-size:24px;margin:0 0 10px;line-height:1.5}
html.hydro-refined.dyoj-workspace .dyoj-class-head-meta {font-size:13px;color:var(--ref-muted)}
html.hydro-refined.dyoj-workspace .dyoj-class-desc {margin:14px 0 0;max-width:850px;font-size:14px}
html.hydro-refined.dyoj-workspace .dyoj-class-tabs--inner {border-radius:0 0 12px 12px;margin:0 0 22px;border:1px solid var(--ref-line);padding:10px 20px;gap:4px;background:var(--ref-panel);display:flex}
html.hydro-refined.dyoj-workspace #school-panel>.dyoj-class-overview {padding:24px 28px;border:1px solid var(--ref-line);border-radius:12px;background:var(--ref-panel)}
html.hydro-refined.dyoj-workspace .dyoj-class-stats {margin:0 0 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0 0 22px;border-bottom:1px solid var(--ref-line)}
html.hydro-refined.dyoj-workspace .dyoj-class-stats li {padding:0 24px;border:0;border-right:1px solid var(--ref-line);border-radius:0;background:none;gap:6px}
html.hydro-refined.dyoj-workspace .dyoj-class-stats li:first-child {padding-left:0}.dyoj-workspace .dyoj-class-stats li:last-child{border-right:0!important}
html.hydro-refined.dyoj-workspace .dyoj-class-stats strong {font-size:22px;line-height:1.6;font-weight:600}
html.hydro-refined.dyoj-workspace .dyoj-class-section-head {margin:24px 0 14px;font-size:13px}
html.hydro-refined.dyoj-workspace .dyoj-class-section-head h2 {margin:0;font-size:16px}
html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact {grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact .dyoj-course-card {border:1px solid var(--ref-line);border-radius:8px;box-shadow:none;background:var(--ref-hover)}
html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact .dyoj-course-card-link {padding:18px 18px 22px;display:block;min-height:92px}
html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact strong {white-space:normal;font-size:15px;color:var(--ref-ink)}
html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact .dyoj-course-progress {height:3px;background:var(--ref-line)}
html.hydro-refined.dyoj-workspace .dyoj-class-member-chips {gap:8px}.dyoj-workspace .dyoj-class-member-chips li{border-radius:6px!important;padding:8px 12px!important;background:var(--ref-hover)}
/* Directories and reusable problem sets. */
html.hydro-refined.dyoj-workspace .school-resource-layout {grid-template-columns:238px minmax(0,1fr);gap:22px}
html.hydro-refined.dyoj-workspace :is(.school-resource-sidebar,.school-resource-filter,.school-resource-table,.school-create-panel) {border:1px solid var(--ref-line);border-radius:12px;box-shadow:0 2px 8px #203e7108;overflow:hidden}
html.hydro-refined.dyoj-workspace .school-resource-sidebar {padding:20px 14px}
html.hydro-refined.dyoj-workspace .school-resource-sidebar h2 {font-size:13px;color:var(--ref-muted);letter-spacing:0;margin:0 12px 12px}
html.hydro-refined.dyoj-workspace .school-resource-sidebar .school-stage-link {padding:13px 12px;border-radius:8px;margin:4px 0;font-size:14px}
html.hydro-refined.dyoj-workspace .school-resource-sidebar .school-stage-link.is-active {background:var(--ref-accent-soft);border-color:transparent;font-weight:600;color:var(--ref-accent)}
html.hydro-refined.dyoj-workspace .school-resource-filter {padding:0}
html.hydro-refined.dyoj-workspace .school-filter-heading {padding:16px 20px;margin:0;border-bottom:1px solid var(--ref-line);min-height:72px}
html.hydro-refined.dyoj-workspace .school-filter-heading h2 {font-size:16px;margin:0}
html.hydro-refined.dyoj-workspace .school-filter-form {padding:16px 20px;gap:12px;align-items:center}
html.hydro-refined.dyoj-workspace .school-filter-form label {margin:0}
html.hydro-refined.dyoj-workspace .school-filter-form .textbox {min-height:44px;margin:0}
html.hydro-refined.dyoj-workspace .school-filter-form .button {min-height:44px}
html.hydro-refined.dyoj-workspace .school-resource-search .textbox {padding-left:36px;background:var(--ref-hover)}
html.hydro-refined.dyoj-workspace .school-stage-edit {margin:0;padding:0 20px 16px;font-size:12px;color:var(--ref-muted)}
html.hydro-refined.dyoj-workspace .school-resource-table table {min-width:650px}
html.hydro-refined.dyoj-workspace .school-resource-table :is(th,td) {padding:12px 20px;border-left:0;border-right:0;line-height:1.6;font-size:13px}
html.hydro-refined.dyoj-workspace .school-resource-table th {background:var(--ref-hover);font-weight:500;color:var(--ref-muted);font-size:12px;padding-block:12px}
html.hydro-refined.dyoj-workspace .school-resource-table td p {font-size:12px;color:var(--ref-muted);margin:3px 0 0}
html.hydro-refined.dyoj-workspace .school-resource-title {color:var(--ref-ink);font-size:15px;font-weight:600}
html.hydro-refined.dyoj-workspace .school-row-actions {gap:10px;font-size:13px}
html.hydro-refined.dyoj-workspace .school-row-actions a {color:var(--ref-accent);padding:6px 8px;border-radius:6px;white-space:nowrap}
html.hydro-refined.dyoj-workspace .school-row-actions a:hover {background:var(--ref-accent-soft)}
html.hydro-refined.dyoj-workspace #school-panel>:is(.school-class-content,.dyoj-course-layout,.dyoj-class-block) {border:1px solid var(--ref-line);border-radius:12px;margin:0 0 20px;padding:24px;background:var(--ref-panel)}
html.hydro-refined.dyoj-workspace .dyoj-course-layout {grid-template-columns:220px minmax(0,1fr);gap:26px}
html.hydro-refined.dyoj-workspace .school-course-heading {margin-bottom:18px}
html.hydro-refined.dyoj-workspace .school-course-heading h2 {font-size:18px}
html.hydro-refined.dyoj-workspace .school-author-tools {margin-bottom:18px}
html.hydro-refined.dyoj-workspace .school-course-row {padding:20px 6px;gap:20px}
html.hydro-refined.dyoj-workspace .school-course-title {font-size:16px!important;font-weight:600}
html.hydro-refined.dyoj-workspace .school-course-text p {margin:6px 0 9px;line-height:1.7;max-width:750px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
html.hydro-refined.dyoj-workspace .school-course-end {font-size:13px;width:100px}
html.hydro-refined.dyoj-workspace .school-state {padding:3px 8px;line-height:1.5;border-radius:5px}
html.hydro-refined.dyoj-workspace .school-list-tools {margin:0 0 18px}
html.hydro-refined.dyoj-workspace .school-list-tools h2 {font-size:18px;margin:0 0 6px}
html.hydro-refined.dyoj-workspace .school-set-list article {padding:18px 0}
/* Reader/editor retain chapter structure and native controls. */
html.hydro-refined.dyoj-workspace .school-reader-head {padding:22px 26px;margin:0;background:var(--ref-panel);border:1px solid var(--ref-line);border-radius:12px 12px 0 0;gap:24px}
html.hydro-refined.dyoj-workspace .school-reader-head h1 {margin:0 0 8px;font-size:24px}
html.hydro-refined.dyoj-workspace .school-local-tabs {width:100%;border-radius:0 0 12px 12px;border-top:0;padding:10px 20px;margin:0 0 22px;box-sizing:border-box}
html.hydro-refined.dyoj-workspace .school-local-tabs button {padding:10px 16px;border-radius:8px;min-height:40px}
html.hydro-refined.dyoj-workspace .school-local-tabs button[aria-selected=true] {background:var(--ref-accent-soft);color:var(--ref-accent)}
html.hydro-refined.dyoj-workspace .school-problem-tools {background:var(--ref-panel);border:1px solid var(--ref-line);border-radius:12px;padding:14px 20px;margin:0 0 18px}
html.hydro-refined.dyoj-workspace .school-problem-tools .textbox {height:40px;min-height:40px}
html.hydro-refined.dyoj-workspace .school-reader .school-chapter {border-radius:12px;margin-bottom:18px;border:1px solid var(--ref-line)}
html.hydro-refined.dyoj-workspace .school-reader .school-chapter>summary {padding:18px 22px;background:var(--ref-panel);min-height:68px}
html.hydro-refined.dyoj-workspace .school-reader .school-chapter-index {font:500 14px/1.5 "Segoe UI",sans-serif;color:var(--ref-muted);padding-right:8px;border-right:1px solid var(--ref-line)}
html.hydro-refined.dyoj-workspace .school-reader .school-problems td {padding:16px 20px;background:var(--ref-panel)}
html.hydro-refined.dyoj-workspace .school-reader .school-problems td a {font-size:14px;font-weight:600}
html.hydro-refined.dyoj-workspace .school-reader-panel {padding:26px;border-radius:12px}
html.hydro-refined.dyoj-workspace .school-arrange-side {border-radius:12px;padding:18px 14px}
html.hydro-refined.dyoj-workspace .school-save-bar {border-radius:10px;box-shadow:0 3px 14px #203e7112;padding:16px 22px}
html.hydro-refined.dyoj-workspace .school-save-bar>.button {margin-left:auto}
html.hydro-refined.dyoj-workspace .school-section-heading {gap:12px;flex-wrap:wrap}
html.hydro-refined.dyoj-workspace .school-section-heading>div {display:flex;flex-wrap:wrap;gap:8px}
html.hydro-refined.dyoj-workspace .school-section-heading .button {font-size:12px;min-height:36px;padding:7px 10px}
html.hydro-refined.dyoj-workspace .school-chapter-index {border-radius:0}
html.hydro-refined.dyoj-workspace .school-chapter-nav {border-radius:7px}
/* Competition catalog: date, name, rule and state, without oversized banners. */
.workspace-contest-layout {display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;align-items:start}
.workspace-contest-main {min-width:0;display:grid;gap:20px}
.workspace-contest-filters {display:grid;grid-template-columns:minmax(170px,1fr) 145px 155px auto 42px;gap:10px;align-items:center;padding:18px 20px;margin:0}
.workspace-contest-filters label {margin:0;min-width:0}
.workspace-contest-filters .textbox {width:100%;margin:0;height:44px;padding:0 12px}
.workspace-search {position:relative;display:block}
.workspace-search>.icon {position:absolute;top:50%;left:14px;transform:translateY(-50%);color:var(--ref-muted)}
html.hydro-refined.dyoj-workspace .workspace-search .textbox {padding-left:38px;background:var(--ref-hover)}
.workspace-reset svg {width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
html.hydro-refined.dyoj-workspace .workspace-contest-filters .button {height:44px;padding:9px 12px}
.workspace-list-caption {display:flex;justify-content:space-between;gap:16px;padding:15px 22px;border-bottom:1px solid var(--ref-line);background:var(--ref-hover);font-size:12px;color:var(--ref-muted)}
.workspace-list-caption strong {font-size:14px;color:var(--ref-ink)}
.workspace-contest-list {list-style:none;padding:0;margin:0}
.workspace-contest-row {display:flex;align-items:center;gap:20px;padding:24px 22px;border-bottom:1px solid var(--ref-line)}
.workspace-contest-row:last-child{border-bottom:0}
.workspace-date {display:flex;flex-direction:column;justify-content:center;align-items:center;flex:0 0 66px;height:74px;background:var(--ref-hover);border:1px solid var(--ref-line);border-radius:10px;color:var(--ref-muted)}
.workspace-date strong {font-size:26px;line-height:1.3;color:var(--ref-accent);font-weight:600;font-variant-numeric:tabular-nums}
.workspace-date>span {font-size:11px;margin-top:4px}
.workspace-date time {font:inherit;color:inherit}
.workspace-contest-copy {min-width:0;flex:1}
.workspace-contest-title {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
html.hydro-refined.dyoj-workspace .workspace-contest-title h2 {margin:0;font-size:17px;line-height:1.6}
html.hydro-refined.dyoj-workspace .workspace-contest-title a {color:var(--ref-ink);overflow-wrap:anywhere}
.workspace-contest-title a:hover {color:var(--ref-accent)!important}
.workspace-meta {display:flex;gap:6px 16px;align-items:center;flex-wrap:wrap;color:var(--ref-muted);font-size:12px;margin-top:10px}
.workspace-meta>a {color:var(--ref-muted);font-weight:600}
.workspace-state {display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:3px 8px;border-radius:5px;background:var(--ref-hover);color:var(--ref-muted);white-space:nowrap}
.workspace-state::before {content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.workspace-state.is-live {color:#217449;background:#e9f5ee}
.workspace-state.is-upcoming {color:#8a5a0d;background:#fff4de}
.workspace-joined {color:#217449}
html.theme--dark .workspace-state.is-live {color:#83d6aa;background:#233e34}
html.theme--dark .workspace-state.is-upcoming {color:#f1c879;background:#403725}
.workspace-contest-open {flex-shrink:0}
.workspace-pagination {padding:16px 18px;border-top:1px solid var(--ref-line)}
html.hydro-refined.dyoj-workspace .pager {border:0;margin:0;display:flex;justify-content:center;gap:6px}
html.hydro-refined.dyoj-workspace .pager .pager__item {display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;border:1px solid var(--ref-line);border-radius:7px;margin:0;padding:0 10px;background:var(--ref-panel);color:var(--ref-muted);line-height:1.4}
html.hydro-refined.dyoj-workspace .pager .pager__item.current {background:var(--ref-primary);color:white!important;border-color:var(--ref-primary)!important}
html.hydro-refined.dyoj-workspace .pager .pager__item:hover:not(.current) {background:var(--ref-hover)}
.workspace-contest-side {display:grid;gap:20px}
.workspace-contest-side .workspace-card {padding:20px}
html.hydro-refined.dyoj-workspace .workspace-contest-side h2 {font-size:16px;margin:0 0 8px}
.workspace-contest-side p {margin:0}
.workspace-agenda article {display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px 0;border-bottom:1px solid var(--ref-line)}
.workspace-agenda article:last-child {border-bottom:0;padding-bottom:0}
.workspace-agenda a {font-weight:600;font-size:14px;color:var(--ref-ink);line-height:1.7;overflow-wrap:anywhere}
.workspace-agenda article>span:last-child {font-size:12px;color:var(--ref-muted)}
.workspace-agenda>p {padding-top:16px}
.workspace-contest-guide p {font-size:13px;color:var(--ref-muted);line-height:1.9;margin:8px 0 0}
.workspace-request-error {margin:0 0 16px;padding:12px 16px;background:#fff4ed;border:1px solid #e3c0a7;border-radius:8px;color:#874024;font-size:14px;display:flex;align-items:center;gap:12px}
html.hydro-refined.dyoj-workspace .contest-identity .section__header {padding:22px 26px 12px;border:0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
html.hydro-refined.dyoj-workspace [data-contest-clock] .contest-timer {position:static;visibility:visible!important;margin:0;padding:7px 10px;border-radius:6px;background:var(--ref-accent-soft);color:var(--ref-accent);font:600 14px/1.5 Consolas,monospace;white-space:nowrap}
html.hydro-refined.dyoj-workspace [data-contest-clock] .contest-timer::before {content:'剩余时间 ';font:12px/1.5 "Segoe UI","Microsoft YaHei",sans-serif}
html.hydro-refined.dyoj-workspace .contest-identity .section__title {font-size:24px;line-height:1.5}
html.hydro-refined.dyoj-workspace .contest-identity .section__body {padding:0 26px 22px;display:flex;flex-wrap:wrap;gap:8px 12px}
html.hydro-refined.dyoj-workspace .contest-identity .problem__tag-item {font-size:12px;line-height:1.6;margin:0;padding:5px 9px;background:var(--ref-hover);border-radius:5px;color:var(--ref-muted);border:0;display:inline-flex;gap:4px;align-items:center}
html.hydro-refined.dyoj-workspace .contest-description {padding:26px;font-size:15px;line-height:1.9}
html.hydro-refined.dyoj-workspace .section.side .section__title {font-size:16px}
html.hydro-refined.dyoj-workspace .section.side .menu__link {font-size:14px;min-height:44px;line-height:1.7;padding:12px 20px}
/* Records and ranking use the same list shell. */
html.hydro-refined.dyoj-workspace .dyoj-records {padding-top:0}
html.hydro-refined.dyoj-workspace .dyoj-records .records-list {overflow:hidden}
html.hydro-refined.dyoj-workspace .records-filter-form {padding:18px 20px}
html.hydro-refined.dyoj-workspace .records-list-heading {padding:14px 20px;background:var(--ref-hover)}
html.hydro-refined.dyoj-workspace .records-list-heading h2 {font-size:14px;margin:0}
html.hydro-refined.dyoj-workspace .records-statistics h2 {font-size:16px}
html.hydro-refined.dyoj-workspace .workspace-ranking {overflow:hidden}
html.hydro-refined.dyoj-workspace .workspace-ranking .data-table {min-width:860px}
html.hydro-refined.dyoj-workspace .workspace-ranking :is(th,td) {padding:16px 20px;vertical-align:middle;border-left:0;border-right:0;font-size:14px}
html.hydro-refined.dyoj-workspace .workspace-ranking th {font-size:12px;font-weight:500}
html.hydro-refined.dyoj-workspace .workspace-ranking .pager {padding:16px;margin:0}
/* Homepage competitions remain native data, with quiet dates and titles. */
html.hydro-refined.dyoj-workspace.page--homepage .section__header {padding:18px 24px 0}
html.hydro-refined.dyoj-workspace.page--homepage .section__title {font-size:17px;margin:0}
html.hydro-refined.dyoj-workspace .main .page--contest_main .contest__item {padding:20px 24px;border-color:var(--ref-line);border-left:0}
html.hydro-refined.dyoj-workspace .main .page--contest_main .contest__title {font-size:16px;line-height:1.6;margin-bottom:10px}
html.hydro-refined.dyoj-workspace .main .page--contest_main .contest__title a {color:var(--ref-ink);font-weight:600}
html.hydro-refined.dyoj-workspace .main .page--contest_main .contest__date {padding:8px 10px;border:1px solid var(--ref-line);border-radius:8px;background:var(--ref-hover);min-width:60px}
html.hydro-refined.dyoj-workspace .main .page--contest_main .numbox__num {font-size:24px;color:var(--ref-accent)}
html.hydro-refined.dyoj-workspace .main .page--contest_main .contest-type-tag {color:var(--ref-muted);background:var(--ref-hover);border-radius:4px;padding:3px 7px}
html.hydro-refined.dyoj-workspace .main .page--contest_main .supplementary {font-size:12px}
@media(max-width:1150px){
 html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-tabs{flex:1 0 100%}
 html.hydro-refined.dyoj-workspace .dyoj-class-search{flex:1}
 .workspace-contest-layout{grid-template-columns:minmax(0,1fr) 260px;gap:18px}
 .workspace-contest-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto 42px}
 .workspace-contest-filters .workspace-search{grid-column:1/3;grid-row:1}.workspace-contest-filters>button{grid-column:3;grid-row:1}.workspace-contest-filters>.workspace-reset{grid-column:4;grid-row:1}
 .workspace-contest-filters>label:nth-child(2){grid-column:1;grid-row:2}.workspace-contest-filters>label:nth-child(3){grid-column:2/5;grid-row:2}
 .workspace-contest-row{gap:14px;flex-wrap:wrap}.workspace-contest-open{margin-left:80px!important}
 html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 html.hydro-refined.dyoj-workspace .school-resource-layout{grid-template-columns:190px minmax(0,1fr);gap:18px}
 html.hydro-refined.dyoj-workspace .school-resource-filter .school-filter-heading{flex-wrap:wrap;gap:12px}.workspace-actions{flex-wrap:wrap}
 html.hydro-refined.dyoj-workspace .school-filter-form{flex-wrap:wrap}.school-filter-form .school-resource-search{flex-basis:100%!important}
 html.hydro-refined.dyoj-workspace .dyoj-course-layout{grid-template-columns:minmax(0,1fr)}
 html.hydro-refined.dyoj-workspace .dyoj-course-side{border:0;border-bottom:1px solid var(--ref-line);padding:0 0 18px}
 .workspace-contest-layout{grid-template-columns:minmax(0,1fr)}.workspace-contest-side{grid-template-columns:1fr 1fr}
 .workspace-contest-open{margin-left:0!important}.workspace-contest-row{flex-wrap:nowrap}
 html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 html.hydro-refined.dyoj-workspace .main{padding-top:24px}
 html.hydro-refined.dyoj-workspace .main>.row{padding-inline:10px}
 html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-toolbar{flex-direction:row;padding:14px;gap:12px}
 html.hydro-refined.dyoj-workspace .dyoj-class-page .dyoj-class-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 html.hydro-refined.dyoj-workspace .dyoj-class-card-link{min-height:200px;padding:20px}
 html.hydro-refined.dyoj-workspace .dyoj-class-search{width:auto;min-width:120px}
 html.hydro-refined.dyoj-workspace .dyoj-class-tabs--inner{padding:8px;gap:4px}
 html.hydro-refined.dyoj-workspace .dyoj-class-tab{padding:10px 12px;min-height:44px}
 html.hydro-refined.dyoj-workspace .dyoj-class-hero{padding:20px}
 html.hydro-refined.dyoj-workspace .dyoj-class-head h1{font-size:21px}
 html.hydro-refined.dyoj-workspace #school-panel>:is(.dyoj-class-overview,.school-class-content,.dyoj-course-layout,.dyoj-class-block){padding:18px}
 html.hydro-refined.dyoj-workspace .dyoj-class-stats li{padding:0 10px}.dyoj-workspace .dyoj-class-stats strong{font-size:18px!important;overflow-wrap:anywhere}
 html.hydro-refined.dyoj-workspace .dyoj-course-grid--compact{grid-template-columns:minmax(0,1fr)}
 html.hydro-refined.dyoj-workspace .school-resource-layout{grid-template-columns:minmax(0,1fr)}
 html.hydro-refined.dyoj-workspace .school-resource-sidebar{padding:16px 12px}.school-resource-sidebar nav{display:flex;overflow:auto;gap:6px}.school-resource-sidebar .school-stage-link{white-space:nowrap;flex:none}
 html.hydro-refined.dyoj-workspace .school-resource-sidebar h2{display:none}.school-resource-sidebar .school-stage-link>span:last-child{display:none}
 html.hydro-refined.dyoj-workspace .school-add-stage{margin-top:10px}
 html.hydro-refined.dyoj-workspace .school-filter-heading{padding:14px 16px;min-height:0}.workspace-actions .learning-muted{display:none}
 html.hydro-refined.dyoj-workspace .school-filter-form{padding:14px 16px;gap:10px}
 html.hydro-refined.dyoj-workspace .school-resource-table table{min-width:640px}
 html.hydro-refined.dyoj-workspace .school-reader-head{padding:20px;flex-wrap:wrap;gap:14px}
 html.hydro-refined.dyoj-workspace .school-reader-head h1{font-size:21px}
 html.hydro-refined.dyoj-workspace .school-local-tabs{padding:8px}
 html.hydro-refined.dyoj-workspace .school-local-tabs button{padding:10px 12px}
 html.hydro-refined.dyoj-workspace .school-problem-tools{padding:14px;flex-wrap:wrap;gap:10px}
 html.hydro-refined.dyoj-workspace .school-problem-tools>span{margin-left:auto}
 html.hydro-refined.dyoj-workspace .school-reader .school-chapter>summary{padding:16px;gap:8px}
 html.hydro-refined.dyoj-workspace .school-reader-panel{padding:20px}
 html.hydro-refined.dyoj-workspace .school-save-bar{padding:14px;bottom:8px}
 .workspace-contest-filters{padding:14px;gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto 42px}
 .workspace-toolbar{padding:12px 16px;gap:8px}.workspace-toolbar .workspace-hint{font-size:11px}
 .workspace-contest-row{flex-wrap:wrap;padding:20px 16px;gap:14px}
 .workspace-date{flex-basis:55px;height:64px}.workspace-date strong{font-size:24px}.workspace-date>span{font-size:10px}
 .workspace-contest-copy{flex-basis:calc(100% - 75px)}.workspace-contest-title h2{font-size:15px!important}
 .workspace-contest-open{margin-left:69px!important;min-height:36px!important}.workspace-meta{gap:6px 10px}
 .workspace-contest-side{grid-template-columns:1fr}.workspace-list-caption{padding:12px 16px}.workspace-list-caption>span:last-child{display:none}
 html.hydro-refined.dyoj-workspace .contest-identity .section__header{padding:20px 20px 12px}
 html.hydro-refined.dyoj-workspace .contest-identity .section__title{font-size:21px}
 html.hydro-refined.dyoj-workspace .contest-identity .section__body{padding:0 20px 20px}
 html.hydro-refined.dyoj-workspace .contest-description{padding:20px}
}
@media(pointer:coarse){html.hydro-refined.dyoj-workspace .main .button{min-height:44px}html.hydro-refined.dyoj-workspace .main input.textbox{font-size:16px}}
@media(prefers-reduced-motion:reduce){html.hydro-refined.dyoj-workspace .main *{transition:none!important;scroll-behavior:auto!important}}
