:root{--dl-canvas: #f2f0e9;--dl-surface: #ffffff;--dl-surface-raised: #ffffff;--dl-surface-sunken: #e9e6dc;--dl-surface-hover: #f7f5ef;--dl-text: #17353d;--dl-text-muted: #5d7176;--dl-text-subtle: #93a5a7;--dl-text-inverse: #ffffff;--dl-border: #d1d9d8;--dl-border-strong: #b3c0c0;--dl-border-subtle: #e6e9e6;--dl-brand: #1d6673;--dl-brand-strong: #14505a;--dl-brand-soft: #e3eef0;--dl-brand-ink: #0f3f47;--dl-on-brand: #ffffff;--dl-success: #2f7d4b;--dl-success-soft: #e4f1e7;--dl-warning: #b07b18;--dl-warning-soft: #faf0d9;--dl-danger: #b34449;--dl-danger-soft: #f9e8e9;--dl-info: #447398;--dl-info-soft: #e6eef5;--dl-accent: var(--dl-brand);--dl-accent-soft: var(--dl-brand-soft);--dl-accent-ink: var(--dl-brand-ink);--dl-space-1: 4px;--dl-space-2: 8px;--dl-space-3: 12px;--dl-space-4: 16px;--dl-space-5: 24px;--dl-space-6: 32px;--dl-space-7: 48px;--dl-space-8: 64px;--dl-radius-sm: 6px;--dl-radius: 8px;--dl-radius-lg: 12px;--dl-radius-xl: 18px;--dl-radius-pill: 999px;--dl-font: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--dl-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--dl-text-xs: 11.5px;--dl-text-sm: 13px;--dl-text-base: 14px;--dl-text-md: 16px;--dl-text-lg: 20px;--dl-text-xl: 26px;--dl-text-2xl: 32px;--dl-text-3xl: 44px;--dl-weight-normal: 400;--dl-weight-medium: 550;--dl-weight-bold: 700;--dl-weight-black: 800;--dl-leading: 1.6;--dl-leading-tight: 1.3;--dl-shadow-sm: 0 1px 2px rgba(29, 55, 62, .06);--dl-shadow: 0 2px 8px rgba(29, 55, 62, .08);--dl-shadow-lg: 0 12px 32px rgba(29, 55, 62, .14);--dl-focus: #7cb4a7;--dl-focus-ring: 0 0 0 3px rgba(124, 180, 167, .45);--dl-duration: .15s;--dl-ease: cubic-bezier(.2, 0, .2, 1)}@media(prefers-color-scheme:dark){:root:not([data-dl-theme=light]){--dl-canvas: #121a1c;--dl-surface: #1a2426;--dl-surface-raised: #1f2b2e;--dl-surface-sunken: #0e1618;--dl-surface-hover: #223034;--dl-text: #e8edec;--dl-text-muted: #9fb0b2;--dl-text-subtle: #6b7d80;--dl-text-inverse: #121a1c;--dl-border: #2c3a3d;--dl-border-strong: #3d4f53;--dl-border-subtle: #232f32;--dl-brand: #4fa8b5;--dl-brand-strong: #63bcc8;--dl-brand-soft: #17343a;--dl-brand-ink: #bfe6ec;--dl-success: #5cb87a;--dl-success-soft: #17321f;--dl-warning: #d9a72b;--dl-warning-soft: #33280f;--dl-danger: #e0737a;--dl-danger-soft: #35191c;--dl-info: #6ea3cc;--dl-info-soft: #16242f;--dl-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--dl-shadow: 0 2px 8px rgba(0, 0, 0, .35);--dl-shadow-lg: 0 12px 32px rgba(0, 0, 0, .45);--dl-focus: #4fa8b5}}@media(prefers-reduced-motion:reduce){:root{--dl-duration: 0ms}}:root{--dl-accent: #0b625d;--dl-accent-soft: #eaf8e4;--dl-accent-ink: #004c49;--tm-color-green-dark: #044d4d;--tm-color-brand-700: #004c49;--tm-color-brand-600: #0b625d;--tm-color-brand-500: #168077;--tm-color-accent: #bbf49c;--tm-color-accent-strong: #d1f811;--tm-color-accent-soft: #eaf8e4;--tm-color-green-bg: #ecf4e9;--tm-color-green-bright: #89e7b5;--tm-color-surface: var(--dl-surface);--tm-color-background: var(--dl-canvas);--tm-color-line: var(--dl-border);--tm-color-line-soft: var(--dl-border-subtle);--tm-color-text: var(--dl-text);--tm-color-text-secondary: var(--dl-text-muted);--tm-color-text-muted: var(--dl-text-subtle);--tm-color-success: var(--dl-success);--tm-color-warning: var(--dl-warning);--tm-color-danger: var(--dl-danger);--tm-color-danger-soft: var(--dl-danger-soft);--tm-color-warning-soft: var(--dl-warning-soft);--tm-color-info: var(--dl-info);--tm-color-info-soft: var(--dl-info-soft);--tm-font-family: Urbanist, Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--tm-font-mono: var(--dl-font-mono);--tm-radius-sm: var(--dl-radius);--tm-radius-md: var(--dl-radius-lg);--tm-radius-lg: var(--dl-radius-xl);--tm-radius-xl: 24px;--tm-radius-pill: var(--dl-radius-pill);--tm-space-0: 0;--tm-space-1: 4px;--tm-space-2: 8px;--tm-space-3: 12px;--tm-space-4: 16px;--tm-space-5: 20px;--tm-space-6: 24px;--tm-space-8: 32px;--tm-space-10: 40px;--tm-size-control-sm: 32px;--tm-size-control: 40px;--tm-size-control-lg: 48px;--tm-size-icon: 20px;--tm-size-icon-lg: 24px;--tm-z-dropdown: 20;--tm-z-toast: 40;--tm-z-modal: 50;--tm-shadow-card: 0 1px 2px rgba(23, 60, 58, .03), 0 8px 24px rgba(23, 60, 58, .04);--tm-shadow-popover: 0 8px 28px rgba(23, 60, 58, .12), 0 2px 8px rgba(23, 60, 58, .06);--tm-shadow-focus: 0 0 0 4px rgba(187, 244, 156, .26);--tm-motion-fast: .14s ease;--tm-motion-normal: .22s ease}body.dark{--tm-color-green-dark: #b5e8d0;--tm-color-brand-700: #8ed6bd;--tm-color-brand-600: #a9e8d0;--tm-color-brand-500: #72c8ad;--tm-color-accent: #d3f7b8;--tm-color-accent-strong: #d1f811;--tm-color-accent-soft: #243d32;--tm-color-green-bg: #20372d;--tm-color-green-bright: #89e7b5;--tm-color-surface: #1d2928;--tm-color-background: #111a19;--tm-color-line: #38504e;--tm-color-line-soft: #263937;--tm-color-text: #e8f2ef;--tm-color-text-secondary: #b0c4be;--tm-color-text-muted: #829994;--tm-color-danger-soft: #492c2c;--tm-color-warning-soft: #493b20;--tm-color-info-soft: #203b4a;--tm-shadow-card: 0 1px 2px rgba(0, 0, 0, .2), 0 10px 28px rgba(0, 0, 0, .22)}.tm-button{min-height:var(--tm-size-control);display:inline-flex;align-items:center;justify-content:center;gap:var(--tm-space-2);padding:9px var(--tm-space-4);border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text);font:700 13px/1 var(--tm-font-family);cursor:pointer;transition:transform var(--tm-motion-fast),background var(--tm-motion-fast),border-color var(--tm-motion-fast),box-shadow var(--tm-motion-fast),color var(--tm-motion-fast)}.tm-button:hover{border-color:var(--tm-color-brand-500);transform:translateY(-1px)}.tm-button:focus-visible,.tm-field:focus-visible,.tm-icon-button:focus-visible{outline:none;box-shadow:var(--tm-shadow-focus)}.tm-button:active{transform:translateY(0)}.tm-button:disabled,.tm-button[data-state=disabled]{cursor:not-allowed;opacity:.55;transform:none}.tm-button--primary{border-color:var(--tm-color-brand-700);background:var(--tm-color-brand-700);color:#fff}.tm-button--primary:hover{border-color:var(--tm-color-brand-600);background:var(--tm-color-brand-600)}.tm-button--accent{border-color:var(--tm-color-accent);background:var(--tm-color-accent);color:var(--tm-color-brand-700)}.tm-button--danger{border-color:var(--tm-color-danger);background:var(--tm-color-danger);color:#fff}.tm-button--ghost{border-color:transparent;background:transparent}.tm-button--small{min-height:var(--tm-size-control-sm);padding:7px var(--tm-space-3);font-size:12px}.tm-button--large{min-height:var(--tm-size-control-lg);padding:12px var(--tm-space-5);font-size:14px}.tm-button--block{width:100%}.tm-icon-button{width:var(--tm-size-control);height:var(--tm-size-control);display:inline-grid;place-items:center;flex:0 0 var(--tm-size-control);padding:0;border:1px solid transparent;border-radius:var(--tm-radius-sm);background:transparent;color:var(--tm-color-text-secondary);cursor:pointer;transition:transform var(--tm-motion-fast),color var(--tm-motion-fast),background var(--tm-motion-fast),border-color var(--tm-motion-fast),box-shadow var(--tm-motion-fast)}.tm-icon-button>svg,.tm-icon-button>img{width:var(--tm-size-icon);height:var(--tm-size-icon)}.tm-icon-button:hover{border-color:var(--tm-color-line);background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.tm-icon-button:active{transform:scale(.96)}.tm-icon-button:disabled{cursor:not-allowed;opacity:.55}.tm-icon-button--small{width:var(--tm-size-control-sm);height:var(--tm-size-control-sm);flex-basis:var(--tm-size-control-sm)}.tm-icon-button--large{width:var(--tm-size-control-lg);height:var(--tm-size-control-lg);flex-basis:var(--tm-size-control-lg)}.tm-card{overflow:hidden;background:var(--tm-color-surface);border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-lg);box-shadow:var(--tm-shadow-card)}.tm-card__header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:var(--tm-space-4);padding:0 var(--tm-space-5);border-bottom:1px solid var(--tm-color-line-soft)}.tm-card__title{margin:0;color:var(--tm-color-text);font:700 14px/1 var(--tm-font-family)}.tm-card__body{padding:var(--tm-space-5)}.tm-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--tm-space-2);padding:var(--tm-space-4) var(--tm-space-5);border-top:1px solid var(--tm-color-line-soft)}.tm-nav{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:var(--tm-space-6);padding:var(--tm-space-6) var(--tm-space-8);border-radius:var(--tm-radius-xl);background:var(--tm-color-green-dark);color:#fff}.tm-nav__brand,.tm-nav__items,.tm-nav__tools{display:flex;align-items:center}.tm-nav__brand{gap:var(--tm-space-3);font:700 16px/1 var(--tm-font-family)}.tm-nav__items{flex:1 1 auto;gap:var(--tm-space-3);min-width:0}.tm-nav__item{min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:var(--tm-space-3) var(--tm-space-4);border:0;border-radius:var(--tm-radius-sm);background:transparent;color:inherit;font:700 14px/1 var(--tm-font-family);cursor:pointer}.tm-nav__item:hover,.tm-nav__item[aria-current=page]{background:#ffffff1f}.tm-sidebar-menu{display:grid;gap:0;overflow:hidden;background:var(--tm-color-green-dark)}.tm-sidebar-menu__item{min-height:56px;display:flex;align-items:center;gap:var(--tm-space-2);padding:0 var(--tm-space-8) 0 var(--tm-space-2);border:0;border-left:24px solid transparent;background:transparent;color:var(--tm-color-green-bright);font:700 16px/1 var(--tm-font-family);text-align:left;cursor:pointer}.tm-sidebar-menu__item>svg,.tm-sidebar-menu__item>img{width:var(--tm-size-icon-lg);height:var(--tm-size-icon-lg);flex:0 0 var(--tm-size-icon-lg)}.tm-sidebar-menu__item:hover{background:#ffffff14}.tm-sidebar-menu__item[aria-current=page],.tm-sidebar-menu__item.is-active{border-left-color:var(--tm-color-accent-strong);color:var(--tm-color-accent-strong)}.tm-task-card{min-height:68px;display:flex;align-items:flex-start;gap:var(--tm-space-4);padding:var(--tm-space-4) var(--tm-space-6);border-radius:var(--tm-radius-md);background:var(--tm-color-green-bg);color:var(--tm-color-text)}.tm-task-card__icon{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;padding:4.5px;border-radius:9px;background:var(--tm-color-green-dark);color:#fff}.tm-task-card__icon>svg,.tm-task-card__icon>img{width:27px;height:27px}.tm-task-card__content{min-width:0;display:grid;align-content:center;gap:var(--tm-space-1)}.tm-task-card__title,.tm-task-card__meta{margin:0}.tm-task-card__title{color:var(--tm-color-green-dark);font:700 16px/1 var(--tm-font-family)}.tm-task-card__meta{color:var(--tm-color-text-secondary);font:400 16px/1 var(--tm-font-family)}.tm-tabs{display:flex;align-items:end;border-bottom:1px solid var(--tm-color-line)}.tm-tab{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:var(--tm-space-3) var(--tm-space-4);border:0;border-bottom:2px solid transparent;border-radius:var(--tm-radius-md) var(--tm-radius-md) 0 0;background:transparent;color:var(--tm-color-text-secondary);font:600 14px/1 var(--tm-font-family);cursor:pointer}.tm-tab:hover{background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.tm-tab[aria-selected=true],.tm-tab.is-active{border-color:var(--tm-color-accent-strong);background:var(--tm-color-green-dark);color:var(--tm-color-accent-strong)}.tm-segmented{display:inline-flex;gap:var(--tm-space-1);padding:var(--tm-space-1);border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-md);background:var(--tm-color-background)}.tm-segmented__item{min-height:32px;padding:0 var(--tm-space-3);border:0;border-radius:calc(var(--tm-radius-md) - 3px);background:transparent;color:var(--tm-color-text-secondary);font:700 12px/1 var(--tm-font-family);cursor:pointer}.tm-segmented__item[aria-pressed=true],.tm-segmented__item.is-active{background:var(--tm-color-surface);color:var(--tm-color-brand-700);box-shadow:0 1px 2px #173c3a1f}.tm-field-group{display:grid;gap:var(--tm-space-2)}.tm-label{color:var(--tm-color-text-secondary);font:700 12px/1.25 var(--tm-font-family)}.tm-field{width:100%;min-height:var(--tm-size-control);padding:0 var(--tm-space-3);border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);outline:0;background:var(--tm-color-surface);color:var(--tm-color-text);font:600 14px/1.2 var(--tm-font-family);transition:border-color var(--tm-motion-fast),box-shadow var(--tm-motion-fast),background var(--tm-motion-fast)}.tm-field::placeholder{color:var(--tm-color-text-muted);font-weight:500}.tm-field:hover{border-color:var(--tm-color-brand-500)}.tm-field:disabled{cursor:not-allowed;background:var(--tm-color-line-soft);color:var(--tm-color-text-muted)}.tm-field[aria-invalid=true]{border-color:var(--tm-color-danger)}.tm-field-help{margin:0;color:var(--tm-color-text-muted);font:500 12px/1.4 var(--tm-font-family)}.tm-checkbox,.tm-radio{accent-color:var(--tm-color-brand-600)}.tm-badge{min-height:24px;display:inline-flex;align-items:center;gap:var(--tm-space-1);padding:3px 9px;border-radius:var(--tm-radius-pill);background:var(--tm-color-accent-soft);color:var(--tm-color-brand-700);font:700 11px/1 var(--tm-font-family)}.tm-badge--warning{background:var(--tm-color-warning-soft);color:var(--tm-color-warning)}.tm-badge--danger{background:var(--tm-color-danger-soft);color:var(--tm-color-danger)}.tm-badge--info{background:var(--tm-color-info-soft);color:var(--tm-color-info)}.tm-badge--muted{background:var(--tm-color-line-soft);color:var(--tm-color-text-secondary)}.tm-progress{display:block;width:100%}.tm-progress__track{display:block;width:100%;height:8px;overflow:hidden;border-radius:var(--tm-radius-pill);background:var(--tm-color-line-soft)}.tm-progress__fill{display:block;width:var(--progress, 0%);height:100%;border-radius:inherit;background:var(--tm-color-brand-700);transition:width var(--tm-motion-normal)}.tm-alert{display:flex;align-items:flex-start;gap:var(--tm-space-2);padding:var(--tm-space-3);border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-line-soft);color:var(--tm-color-text-secondary);font:600 13px/1.4 var(--tm-font-family)}.tm-alert--success{border-color:color-mix(in srgb,var(--tm-color-success) 35%,var(--tm-color-line));background:var(--tm-color-accent-soft);color:var(--tm-color-success)}.tm-alert--warning{border-color:color-mix(in srgb,var(--tm-color-warning) 35%,var(--tm-color-line));background:var(--tm-color-warning-soft);color:var(--tm-color-warning)}.tm-alert--danger{border-color:color-mix(in srgb,var(--tm-color-danger) 35%,var(--tm-color-line));background:var(--tm-color-danger-soft);color:var(--tm-color-danger)}.tm-toast{position:fixed;z-index:var(--tm-z-toast);left:50%;bottom:var(--tm-space-6);max-width:min(420px,calc(100vw - 32px));padding:var(--tm-space-3) var(--tm-space-4);border-radius:var(--tm-radius-sm);background:var(--tm-color-green-dark);color:#fff;box-shadow:var(--tm-shadow-popover);font:700 13px/1.35 var(--tm-font-family);transform:translate(-50%,12px);opacity:0;pointer-events:none;transition:transform var(--tm-motion-normal),opacity var(--tm-motion-normal)}.tm-toast.is-visible{transform:translate(-50%);opacity:1}.tm-tooltip{position:relative}.tm-tooltip:after{position:absolute;z-index:var(--tm-z-dropdown);left:50%;bottom:calc(100% + 8px);width:max-content;max-width:200px;padding:6px 8px;border-radius:6px;background:var(--tm-color-green-dark);color:#fff;content:attr(data-tooltip);font:700 11px/1.2 var(--tm-font-family);opacity:0;pointer-events:none;transform:translate(-50%,4px);transition:opacity var(--tm-motion-fast),transform var(--tm-motion-fast)}.tm-tooltip:hover:after,.tm-tooltip:focus-visible:after{opacity:1;transform:translate(-50%)}.tm-modal-backdrop{position:fixed;z-index:var(--tm-z-modal);top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:var(--tm-space-4);background:#002a286b}.tm-modal{width:min(100%,440px);max-height:min(680px,calc(100vh - 32px));overflow:auto;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-lg);background:var(--tm-color-surface);box-shadow:var(--tm-shadow-popover)}.tm-modal__header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--tm-space-4);padding:0 var(--tm-space-5);border-bottom:1px solid var(--tm-color-line-soft)}.tm-modal__title{margin:0;color:var(--tm-color-text);font:700 16px/1 var(--tm-font-family)}.tm-modal__body{padding:var(--tm-space-5)}.tm-modal__footer{display:flex;justify-content:flex-end;gap:var(--tm-space-2);padding:var(--tm-space-4) var(--tm-space-5);border-top:1px solid var(--tm-color-line-soft)}.tm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:680px){.tm-nav{min-height:64px;padding:var(--tm-space-3) var(--tm-space-4);border-radius:0}.tm-nav__items{display:none}.tm-card__body{padding:var(--tm-space-4)}}@media(prefers-reduced-motion:reduce){.tm-button,.tm-icon-button,.tm-field,.tm-progress__fill,.tm-toast,.tm-tooltip:after{transition:none}}:root{font-family:var(--tm-font-family);color:var(--tm-color-text);background:var(--tm-color-background);font-synthesis:none;text-rendering:optimizeLegibility;--wordle-correct: #2f7d4b;--wordle-present: #d9a72b;--wordle-present-ink: #3a2c02;--wordle-absent: #71807e}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:var(--tm-color-background);color:var(--tm-color-text);transition:background var(--tm-motion-normal),color var(--tm-motion-normal)}button,select,input{font:inherit}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,68px);border-bottom:1px solid var(--tm-color-line);background:var(--tm-color-surface)}.brand{display:flex;align-items:center;gap:9px;color:var(--tm-color-brand-700);font-size:21px;font-weight:800;letter-spacing:.02em}.coderaft-logo{height:26px;width:auto}.brand-divider{width:1px;height:22px;background:var(--tm-color-line)}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--tm-color-brand-700);border-radius:var(--tm-radius-sm);background:var(--tm-color-accent);color:var(--tm-color-brand-700);font-size:17px;font-weight:900}.brand small{margin-left:5px;color:var(--tm-color-text-muted);font-size:10px;font-weight:800;letter-spacing:.18em}.topbar nav{display:flex;align-items:center;gap:5px}.icon-btn{display:grid;place-items:center;width:38px;height:38px;border:1px solid transparent;border-radius:var(--tm-radius-sm);background:transparent;color:var(--tm-color-text-secondary);font-size:17px;font-weight:800;cursor:pointer;transition:background var(--tm-motion-fast),color var(--tm-motion-fast),border-color var(--tm-motion-fast)}.icon-btn:hover{border-color:var(--tm-color-line);background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.icon-btn:focus-visible,.key:focus-visible,.primary:focus-visible,.secondary:focus-visible,.hint-trigger:focus-visible,.mode:focus-visible,.modal-close:focus-visible{outline:none;box-shadow:var(--tm-shadow-focus)}main{min-height:calc(100vh - 122px);display:flex;flex-direction:column;align-items:center;padding:30px 16px 28px}.heading{width:min(510px,100%);margin-bottom:20px;text-align:center}.eyebrow{margin:0 0 8px;color:var(--tm-color-brand-500);font-size:10px;font-weight:800;letter-spacing:.18em}.heading h1{margin:0;color:var(--tm-color-brand-700);font-size:clamp(29px,5vw,38px);font-weight:850;letter-spacing:-.02em}.subline{margin:8px 0 0;color:var(--tm-color-text-secondary);font-size:14px}.modebar{width:min(510px,100%);min-height:45px;display:flex;align-items:center;gap:8px;margin-bottom:18px;padding:0 0 9px;border-bottom:1px solid var(--tm-color-line)}.modebar.is-public{display:flex;justify-content:flex-end}.mode-switch{display:flex;align-items:center;gap:2px}.mode{min-height:34px;padding:7px 10px;border:0;border-radius:var(--tm-radius-sm);background:transparent;color:var(--tm-color-text-muted);font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer;transition:background var(--tm-motion-fast),color var(--tm-motion-fast)}.mode:hover{background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.mode.active{background:var(--tm-color-brand-700);color:#fff}.modebar select,.hint-trigger{min-height:34px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text-secondary);font-size:11px;font-weight:750;cursor:pointer}.modebar select{min-width:94px;margin-left:auto;padding:6px 9px}.modebar select:disabled{cursor:not-allowed;opacity:.55}.hint-trigger{min-width:72px;padding:6px 10px}.hint-trigger b{color:var(--tm-color-brand-700)}.hint-trigger:disabled{cursor:not-allowed;opacity:.48}.hint-note{width:min(330px,92vw);min-height:22px;margin:-6px auto 7px;color:var(--tm-color-warning);font-size:12px;font-weight:700;text-align:center}.hint-note:empty{visibility:hidden}.board{display:grid;gap:7px;width:min(330px,92vw);margin:0 auto 22px}.row{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.tile{aspect-ratio:1;display:grid;place-items:center;border:2px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text);font-size:27px;font-weight:850;text-transform:uppercase;transition:transform var(--tm-motion-fast),border-color var(--tm-motion-fast),background var(--tm-motion-fast)}.tile.filled{border-color:var(--tm-color-brand-500);animation:pop .12s ease-out}.tile.correct,.tile.present,.tile.absent{border-color:transparent;color:#fff}.tile.correct{background:var(--wordle-correct)}.tile.present{background:var(--wordle-present);color:var(--wordle-present-ink)}.tile.absent{background:var(--wordle-absent)}@keyframes pop{50%{transform:scale(1.05)}}.keyboard{width:min(510px,100%);display:grid;gap:8px}.key-row{display:flex;justify-content:center;gap:6px}.key-row.inset{padding:0 18px}.key{height:52px;flex:1;max-width:44px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text);font-size:14px;font-weight:850;text-transform:uppercase;cursor:pointer;transition:transform var(--tm-motion-fast),background var(--tm-motion-fast),border-color var(--tm-motion-fast),color var(--tm-motion-fast)}.key:hover{border-color:var(--tm-color-brand-500);background:var(--tm-color-line-soft)}.key:active{transform:translateY(2px)}.key.wide{max-width:65px;background:var(--tm-color-brand-700);color:#fff;border-color:var(--tm-color-brand-700);font-size:11px}.key.wide:hover{background:var(--tm-color-brand-600)}.key.correct,.key.present,.key.absent{color:#fff;border-color:transparent}.key.correct{background:var(--wordle-correct)}.key.present{background:var(--wordle-present);color:var(--wordle-present-ink)}.key.absent{background:var(--wordle-absent)}.key.checking{cursor:wait;opacity:.7}.key:disabled{cursor:default;opacity:.9}.underbar{width:min(510px,100%);min-height:32px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:18px;color:var(--tm-color-text-muted);font-size:11px}.rule-dot{width:4px;height:4px;border-radius:50%;background:var(--tm-color-line)}.series-progress,.countdown{color:var(--tm-color-brand-600);font-variant-numeric:tabular-nums;white-space:nowrap}.restart{display:grid;place-items:center;width:32px;height:32px;margin-left:2px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text-secondary);font-size:17px;cursor:pointer}.restart:hover{border-color:var(--tm-color-brand-500);color:var(--tm-color-brand-700)}.toast{position:fixed;top:88px;left:50%;z-index:4;max-width:min(90vw,360px);padding:11px 16px;border:1px solid rgba(255,255,255,.12);border-radius:var(--tm-radius-sm);background:var(--tm-color-brand-700);color:#fff;font-size:13px;font-weight:750;text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,-8px);transition:opacity var(--tm-motion-normal),transform var(--tm-motion-normal)}.toast.visible{opacity:1;transform:translate(-50%)}footer{height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,68px);border-top:1px solid var(--tm-color-line);color:var(--tm-color-text-muted);font-size:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;place-items:center;padding:20px;background:#0a1c1b7a;animation:fade-in .16s ease-out}.modal{position:relative;width:min(410px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:30px 28px 27px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-lg);background:var(--tm-color-surface);box-shadow:var(--tm-shadow-card);animation:modal-in .18s ease-out}.modal h2{margin:0 0 18px;color:var(--tm-color-brand-700);font-size:24px;font-weight:850}.modal p{color:var(--tm-color-text-secondary);font-size:14px;line-height:1.65}.modal-close{position:absolute;top:13px;right:13px;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:var(--tm-color-text-muted);font-size:23px;cursor:pointer}.modal-close:hover{background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.primary,.secondary{width:100%;min-height:42px;border-radius:var(--tm-radius-sm);font-size:13px;font-weight:800;cursor:pointer}.primary{border:1px solid var(--tm-color-brand-700);background:var(--tm-color-brand-700);color:#fff}.primary:hover{background:var(--tm-color-brand-600)}.secondary{margin-top:8px;border:1px solid var(--tm-color-line);background:var(--tm-color-surface);color:var(--tm-color-text-secondary)}.secondary:hover{border-color:var(--tm-color-brand-500);color:var(--tm-color-brand-700)}.answer-label{margin:0!important;color:var(--tm-color-text-muted)!important;font-size:10px!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.answer{margin:3px 0 11px!important;color:var(--tm-color-brand-700)!important;font-size:34px!important;font-weight:900;letter-spacing:.08em}.stats-inline,.stats-large{display:flex;justify-content:space-around;gap:12px;margin:21px 0;padding:16px 0;border-top:1px solid var(--tm-color-line-soft);border-bottom:1px solid var(--tm-color-line-soft);text-align:center}.stats-large{display:grid;grid-template-columns:repeat(2,1fr);border:0}.stats-inline b,.stats-large b{color:var(--tm-color-brand-700);font-size:24px}.stats-inline small,.stats-large small{display:block;margin-top:4px;color:var(--tm-color-text-muted);font-size:10px;font-weight:700}.legend{display:grid;gap:10px;margin-top:17px}.legend div{display:flex;align-items:center;gap:10px;color:var(--tm-color-text-secondary);font-size:13px}.legend i{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--tm-radius-sm);color:#fff;font-style:normal;font-weight:850}.legend .correct{background:var(--wordle-correct)}.legend .present{background:var(--wordle-present);color:var(--wordle-present-ink)}.legend .absent{background:var(--wordle-absent)}.hint-options{display:grid;gap:8px}.hint-options button{padding:12px 13px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text-secondary);font-size:13px;font-weight:700;text-align:left;cursor:pointer}.hint-options button:hover{border-color:var(--tm-color-brand-500);background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.custom-field{display:grid;gap:7px;color:var(--tm-color-text-secondary);font-size:13px;font-weight:700}.custom-field input{width:100%;padding:11px 12px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);outline:0;background:var(--tm-color-background);color:var(--tm-color-text);font-size:18px;font-weight:800;letter-spacing:.08em;text-transform:lowercase}.custom-field input:focus{border-color:var(--tm-color-brand-500);box-shadow:var(--tm-shadow-focus)}.custom-actions{margin-top:17px}.dist-title{margin:0 0 8px!important;color:var(--tm-color-brand-700)!important;font-weight:800!important}.distribution{display:grid;gap:5px}.dist-row{display:flex;align-items:center;gap:7px;color:var(--tm-color-text-secondary);font-size:11px}.dist-row span{width:10px}.dist-row i{display:block;min-width:18px;padding-right:5px;border-radius:4px;background:var(--tm-color-brand-700);color:#fff;font-size:11px;font-style:normal;line-height:19px;text-align:right}.share-preview{margin:14px 0;color:var(--tm-color-brand-700);font-size:16px;line-height:1.35;letter-spacing:.06em}.history-list{display:grid;gap:7px;margin-top:8px}.history-row{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:7px 0;border-bottom:1px solid var(--tm-color-line-soft);color:var(--tm-color-text-secondary);font-size:12px}.history-row b{text-align:right}.history-row small{grid-column:1/-1;color:var(--tm-color-text-muted);font-size:10px}.achievements{display:flex;flex-wrap:wrap;gap:7px}.achievement{padding:7px 9px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);color:var(--tm-color-text-muted);font-size:11px}.achievement.unlocked{border-color:var(--tm-color-brand-500);background:var(--tm-color-line-soft);color:var(--tm-color-brand-700)}.setting{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--tm-color-line-soft);color:var(--tm-color-text-secondary);font-size:14px}.setting input{accent-color:var(--tm-color-brand-600)}.danger-button{width:100%;margin-top:20px;padding:10px;border:1px solid var(--tm-color-danger);border-radius:var(--tm-radius-sm);background:transparent;color:var(--tm-color-danger);font-size:12px;font-weight:800;cursor:pointer}.series-result,.help-note{color:var(--tm-color-text-muted)!important;font-size:12px!important;text-align:center}.data-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.data-actions .secondary{margin-top:0}body.high-contrast{--tm-color-line: #a4adab;--tm-color-line-soft: #e2e8e6}body.high-contrast .tile.correct,body.high-contrast .key.correct{background:#176b3a}body.high-contrast .tile.present,body.high-contrast .key.present{background:#f0c948;color:#2f2400}body.high-contrast .tile.absent,body.high-contrast .key.absent{background:#263b3a}body.dark.high-contrast{--tm-color-line: #68827e;--tm-color-line-soft: #314844}.row.shake{animation:shake .38s ease-in-out}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.tile.reveal.correct,.tile.reveal.present,.tile.reveal.absent{animation:flip .68s ease both;animation-delay:var(--delay, 0ms)}@keyframes flip{0%{transform:rotateX(0)}45%,55%{transform:rotateX(90deg)}to{transform:rotateX(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}a.icon-btn{text-decoration:none}.puzzle-hint{max-width:34rem;margin:14px 0 0;border-left:3px solid var(--tm-color-accent-strong);border-radius:var(--tm-radius-sm);background:var(--tm-color-accent-soft);padding:10px 14px;color:var(--tm-color-brand-700);text-align:left}.puzzle-hint>summary{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13.5px;font-weight:800;list-style:none}.puzzle-hint>summary::-webkit-details-marker{display:none}.puzzle-hint>summary:before{content:"💡";font-size:13px}.puzzle-hint>summary:after{content:"展开";margin-left:auto;color:var(--tm-color-text-muted);font-size:11.5px;font-weight:700}.puzzle-hint[open]>summary:after{content:"收起"}.puzzle-hint[open]>summary{margin-bottom:8px}.puzzle-hint-text{margin:0;font-size:13.5px;font-weight:700;line-height:1.7}.broken-main{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:calc(100vh - 122px);padding:30px 18px;text-align:center}.broken-main h1{margin:0;color:var(--tm-color-brand-700);font-size:clamp(26px,6vw,38px)}.broken-main p{margin:0;color:var(--tm-color-text-secondary);font-weight:600}.broken-main .broken-hint{color:var(--tm-color-text-muted);font-size:13px}.broken-action{display:inline-flex;align-items:center;justify-content:center;width:auto;margin-top:14px;padding:0 22px;text-decoration:none}.challenge-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:12px}.challenge-option{display:flex;flex-direction:column;gap:3px;text-align:left;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-md);background:var(--tm-color-surface);padding:10px 12px;cursor:pointer;transition:border-color var(--tm-motion-fast),background var(--tm-motion-fast)}.challenge-option strong{font-size:13.5px;font-weight:800}.challenge-option small{color:var(--tm-color-text-muted);font-size:11px;font-weight:600;line-height:1.5}.challenge-option:hover{border-color:var(--tm-color-brand-500)}.challenge-option.is-active{border-color:var(--tm-color-brand-700);background:var(--tm-color-accent-soft);box-shadow:inset 0 0 0 1px var(--tm-color-brand-700)}.challenge-meta{color:var(--tm-color-text-secondary);font-size:12.5px;font-weight:600}.challenge-wall{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin-top:10px}.challenge-wall i{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--tm-color-line);border-radius:4px;background:var(--tm-color-surface);color:var(--tm-color-text-muted);font-size:9px;font-style:normal;font-weight:700}.challenge-wall i.is-won{border-color:transparent;background:var(--wordle-correct);color:#fff}.challenge-wall i.is-lost{border-color:transparent;background:var(--wordle-absent);color:#fff}.challenge-wall i.is-today{border-color:var(--tm-color-brand-700);color:var(--tm-color-brand-700);box-shadow:inset 0 0 0 1.5px var(--tm-color-brand-700)}.theme-options{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}.theme-option{border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-pill);background:var(--tm-color-surface);padding:8px 14px;color:var(--tm-color-text-secondary);font-size:13px;font-weight:700;cursor:pointer;transition:border-color var(--tm-motion-fast),background var(--tm-motion-fast),color var(--tm-motion-fast)}.theme-option:hover{border-color:var(--tm-color-brand-500)}.theme-option.is-active{border-color:var(--tm-color-brand-700);background:var(--tm-color-accent-soft);color:var(--tm-color-brand-700);box-shadow:inset 0 0 0 1px var(--tm-color-brand-700)}.answer-gloss{margin:2px 0 8px;color:var(--tm-color-text-secondary);font-size:13px;font-weight:600}.answer-example{margin:10px 0 4px;border-radius:var(--tm-radius-md);background:var(--tm-color-line-soft);padding:12px 14px;text-align:left}.answer-example .example-en{margin:0;color:var(--tm-color-text);font-size:14.5px;font-weight:700;line-height:1.6}.answer-example .example-zh{margin:4px 0 0;color:var(--tm-color-text-secondary);font-size:13.5px;font-weight:600}.answer-example .example-src{margin:8px 0 0;color:var(--tm-color-text-muted);font-size:11px;font-weight:600}.theme-scope{max-width:34rem;margin:14px 0 0;border-left:3px solid var(--tm-color-brand-500);border-radius:var(--tm-radius-sm);background:var(--tm-color-line-soft);padding:10px 14px;color:var(--tm-color-brand-700);font-size:13.5px;font-weight:700;text-align:left}.hard-badge{max-width:34rem;margin:14px 0 0;border-left:3px solid var(--tm-color-danger);border-radius:var(--tm-radius-sm);background:var(--tm-color-danger-soft);padding:10px 14px;color:var(--tm-color-danger);font-size:13px;font-weight:800;text-align:left}.mode-hard.is-active{border-color:var(--tm-color-danger);background:var(--tm-color-danger-soft);color:var(--tm-color-danger);box-shadow:inset 0 0 0 1px var(--tm-color-danger)}@media(max-width:520px){.topbar{height:64px;padding:0 14px}.brand{font-size:19px;gap:7px}.coderaft-logo{height:19px}.brand-divider{display:none}.brand-mark{width:29px;height:29px;font-size:16px}.brand small{display:none}.topbar nav{gap:1px}.icon-btn{width:33px;height:33px;font-size:16px}main{padding:20px 14px 22px}.heading{margin-bottom:15px}.heading h1{font-size:29px}.subline{font-size:13px}.modebar{display:grid;grid-template-columns:1fr auto;grid-template-areas:"m m" "t h";gap:6px;margin-bottom:14px;padding-bottom:10px}.mode-switch{grid-area:m;display:grid;grid-template-columns:repeat(5,1fr);width:100%}.mode{min-height:33px;padding:7px 3px;font-size:10px}.modebar select{grid-area:t;width:100%;margin:0}.modebar .hint-trigger{grid-area:h;min-width:72px}.board{width:min(270px,80vw);gap:5px;margin-bottom:13px}.row{gap:5px}.tile{font-size:22px}.key-row{gap:5px}.key-row.inset{padding:0 13px}.key{height:48px;font-size:13px}.underbar{gap:7px;font-size:10px}.countdown{display:none}footer{padding:0 14px;font-size:10px}.modal{padding:28px 20px 22px}}@media(max-width:340px){.icon-btn{width:30px}.topbar nav{gap:0}.mode{font-size:9px}.key{height:45px}.key-row.inset{padding:0 8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.auth-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:var(--tm-color-surface);color:var(--tm-color-text-secondary);font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer;transition:border-color var(--tm-motion-fast),color var(--tm-motion-fast),background var(--tm-motion-fast)}.auth-btn:hover{border-color:var(--tm-color-brand-500);color:var(--tm-color-brand-700)}.auth-btn:focus-visible{outline:none;box-shadow:var(--tm-shadow-focus)}.auth-btn-primary{border-color:var(--tm-color-brand-700);background:var(--tm-color-brand-700);color:#fff}.auth-btn-primary:hover{background:var(--tm-color-brand-800, var(--tm-color-brand-700));color:#fff}.auth-user{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tm-color-text-secondary);font-size:12px;font-weight:800}.auth-nav-error{color:var(--tm-color-danger, #b42318);font-size:11px;font-weight:800}.public-banner{width:min(510px,100%);display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px;padding:10px 12px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-md);background:var(--tm-color-accent-soft, var(--tm-color-line-soft));color:var(--tm-color-text-secondary);font-size:12px;font-weight:650;line-height:1.5}.public-banner .auth-btn{flex:0 0 auto}.public-banner strong{color:var(--tm-color-brand-700)}.auth-main{min-height:calc(100vh - 72px);display:flex;align-items:center;justify-content:center;padding:40px 16px 56px}.auth-card{width:min(560px,100%);display:flex;flex-direction:column;gap:14px;padding:clamp(22px,5vw,34px);border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-lg);background:var(--tm-color-surface);box-shadow:var(--tm-shadow-card)}.auth-card .eyebrow{margin:0}.auth-card h1{margin:0;color:var(--tm-color-brand-700);font-size:clamp(26px,5vw,34px);font-weight:850;letter-spacing:-.02em}.auth-card p{margin:0;color:var(--tm-color-text-secondary);font-size:14px;line-height:1.75}.auth-card code{padding:1px 5px;border-radius:4px;background:var(--tm-color-line-soft);font-size:12px}.auth-submit{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:4px;border:0;border-radius:var(--tm-radius-sm);background:var(--tm-color-brand-700);color:#fff;font-size:14px;font-weight:850;text-decoration:none;cursor:pointer}.auth-submit:hover{background:var(--tm-color-brand-800, var(--tm-color-brand-700))}.auth-submit:focus-visible{outline:none;box-shadow:var(--tm-shadow-focus)}.auth-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border:1px solid var(--tm-color-line);border-radius:var(--tm-radius-sm);background:transparent;color:var(--tm-color-text-secondary);font-size:13px;font-weight:800;text-decoration:none;cursor:pointer}.auth-secondary:hover{border-color:var(--tm-color-brand-500);color:var(--tm-color-brand-700)}.auth-error{padding:9px 11px;border:1px solid color-mix(in srgb,#b42318 30%,transparent);border-radius:var(--tm-radius-sm);background:color-mix(in srgb,#b42318 8%,transparent);color:#b42318;font-size:12px;font-weight:700;line-height:1.6}.auth-note{color:var(--tm-color-text-muted)!important;font-size:11px!important}@media(max-width:520px){.public-banner{flex-direction:column;align-items:flex-start}.public-banner .auth-btn{width:100%}.auth-main{padding-top:24px}.auth-user{max-width:96px}}
