.trainer-root{max-width:1400px;color:var(--foreground);margin:0 auto;padding:24px}.trainer-topbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.trainer-topbar .trainer-back{color:var(--muted-foreground);align-items:center;gap:6px;font-size:.9rem;text-decoration:none;display:inline-flex}.trainer-topbar .trainer-back:hover{color:#fff}.trainer-topbar .trainer-spacer{flex:1}.trainer-puzzle-select,.trainer-set-select{background:color-mix(in srgb, var(--foreground) 4%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 15%, transparent);color:var(--foreground);cursor:pointer;border-radius:8px;min-width:130px;padding:8px 12px;font-size:.95rem}.trainer-start-btn{color:#e8b49a;cursor:pointer;background:#d9775733;border:1px solid #d9775780;border-radius:8px;align-items:center;gap:8px;padding:8px 18px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.trainer-start-btn:hover{color:#fff;background:#d977574d}.trainer-start-btn:disabled,.trainer-start-btn.is-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.trainer-set-block{background:color-mix(in srgb, var(--foreground) 3%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 8%, transparent);border-radius:10px;margin-bottom:18px;padding:14px 16px}.trainer-set-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;margin-bottom:12px;font-size:1.1rem;font-weight:600;display:flex}.trainer-set-header input[type=checkbox]{accent-color:#4a90e2;cursor:pointer;width:16px;height:16px}.trainer-set-header .trainer-set-title-thumb{align-items:center;display:inline-flex}.trainer-subgroup{background:color-mix(in srgb, var(--foreground) 2%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 6%, transparent);border-radius:8px;margin:12px 0;padding:10px 12px}.trainer-subgroup-header{-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin-bottom:10px;font-size:.95rem;font-weight:600;display:flex}.trainer-subgroup-header input[type=checkbox]{accent-color:#4a90e2;cursor:pointer;width:14px;height:14px}.trainer-chevron-btn{width:22px;height:22px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.trainer-chevron-btn:hover{color:#fff}.trainer-sub-subgroup-row{flex-wrap:wrap;gap:6px 10px;margin:8px 0 8px 24px;display:flex}.trainer-sub-subgroup{border:1px solid color-mix(in srgb, var(--foreground) 6%, transparent);background:#ffffff04;border-radius:6px;flex:0 auto;min-width:150px;padding:6px 10px}.trainer-sub-subgroup.is-expanded{background:#ffffff06;border-color:#ffffff1f;flex:1 0 100%}.trainer-sub-subgroup-header{cursor:pointer;-webkit-user-select:none;user-select:none;color:#ccc;align-items:center;gap:6px;font-size:.85rem;font-weight:500;display:flex}.trainer-sub-subgroup.is-expanded .trainer-sub-subgroup-header{margin-bottom:8px}.trainer-sub-subgroup-header input[type=checkbox]{accent-color:#4a90e2;cursor:pointer;width:13px;height:13px}.trainer-case-grid{flex-wrap:wrap;gap:10px;display:flex}.trainer-case-cell{background:color-mix(in srgb, var(--foreground) 2%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 10%, transparent);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:4px;min-width:92px;padding:6px 8px 8px;transition:all .12s;display:flex}.trainer-case-cell:hover{background:#ffffff0d;border-color:#ffffff4d}.trainer-case-cell.is-selected{background:#4a90e214;border-color:#4a90e299}.trainer-case-cell-name{color:#fff;font-size:.85rem;font-weight:600}.trainer-case-cell-thumb{pointer-events:none}.trainer-case-cell input{display:none}.trainer-run{grid-template-columns:1fr 320px;align-items:start;gap:28px;display:grid}@media (max-width:900px){.trainer-run{grid-template-columns:1fr}}.trainer-stage{text-align:center;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;padding:40px 20px}.trainer-scramble-label{color:var(--muted-foreground);margin-bottom:8px;font-size:1rem}.trainer-scramble-text{letter-spacing:.05em;color:var(--foreground);margin-bottom:24px;font-size:1.6rem;font-weight:600}.trainer-stage-actions{justify-content:center;gap:12px;margin:16px 0 24px;display:flex}.trainer-stage-btn{border:1px solid color-mix(in srgb, var(--foreground) 15%, transparent);color:var(--foreground);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:.85rem;display:inline-flex}.trainer-stage-btn:hover{background:color-mix(in srgb, var(--foreground) 6%, transparent)}.trainer-timer{margin:28px 0 12px;font-family:Inter,monospace;font-size:6rem;font-style:italic;font-weight:700;line-height:1.1}.trainer-timer.is-awaiting{color:#ffc107}.trainer-timer.is-ready{color:#4caf50}.trainer-timer.is-running,.trainer-timer.is-stopping,.trainer-timer.is-idle{color:var(--foreground)}.trainer-help{color:var(--faint-foreground);margin-top:12px;font-size:.85rem}.trainer-sidebar{flex-direction:column;gap:16px;display:flex}.trainer-solve-card,.trainer-stats-card{background:color-mix(in srgb, var(--foreground) 3%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 8%, transparent);border-radius:10px;padding:14px 16px}.trainer-card-header{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.95rem;font-weight:600;display:flex}.trainer-card-header .trainer-icon-btn{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;padding:4px}.trainer-card-header .trainer-icon-btn:hover{color:#f44}.trainer-card-divider{border:none;border-top:1px solid color-mix(in srgb, var(--foreground) 8%, transparent);margin:0 0 10px}.trainer-solve-thumb{justify-content:center;margin:8px 0 12px;display:flex}.trainer-solve-row{margin:4px 0;font-size:.85rem}.trainer-solve-row>span:first-child{color:var(--faint-foreground);margin-right:4px}.trainer-solve-scramble{color:#ccc;word-break:break-word;font-family:Inter,monospace;font-size:.78rem}.trainer-stats-list{flex-wrap:wrap;gap:6px;display:flex}.trainer-stats-list .trainer-stat-time{background:color-mix(in srgb, var(--foreground) 4%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 10%, transparent);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:.82rem}.trainer-stats-list .trainer-stat-time.is-active{color:#fff;background:#4a90e226;border-color:#4a90e280}.trainer-stats-empty{color:#777;font-size:.85rem}.trainer-landing-empty{color:var(--faint-foreground);text-align:center;padding:60px 0}.trainer-set-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.trainer-set-card{background:color-mix(in srgb, var(--foreground) 3%, transparent);border:1px solid color-mix(in srgb, var(--foreground) 10%, transparent);color:var(--foreground);border-radius:10px;flex-direction:column;align-items:center;gap:10px;padding:18px 14px 14px;text-decoration:none;transition:transform .12s,border-color .12s,background .12s;display:flex;position:relative}.trainer-set-card:hover{background:#d977570f;border-color:#d9775766;transform:translateY(-1px)}.trainer-set-card-thumb{justify-content:center;align-items:center;min-height:88px;display:flex}.trainer-set-card-title{text-align:center;font-size:.95rem;font-weight:600}.trainer-section-title{color:var(--foreground);border-bottom:1px solid color-mix(in srgb, var(--foreground) 8%, transparent);align-items:center;gap:8px;margin:24px 0 12px;padding-bottom:8px;font-size:1rem;font-weight:600;display:flex}.trainer-set-card.is-recognize:hover{background:#4a90e214;border-color:#4a90e280}
