.turn-rox-mining-timer {
      --bg: #0f172a;
      --card: #1e293b;
      --text: #e2e8f0;
      --muted: #94a3b8;
      --accent: #22c55e;
      --warn: #f59e0b;
      --danger: #ef4444;
    }

    .turn-rox-mining-timer * { box-sizing: border-box; }

    .turn-rox-mining-timer {
      margin: 0;
      font-family: Arial, sans-serif;
      background: linear-gradient(160deg, #0b1225, #1b2a4d);
      color: var(--text);
      min-height: 100vh;
      padding: 24px;
    }

    .turn-rox-mining-timer h1 {
      margin: 0 0 8px;
      font-size: 26px;
    }

    .turn-rox-mining-timer .subtitle {
      color: var(--muted);
      margin: 0 0 20px;
    }

    .turn-rox-mining-timer .grid {
      display: grid !important;
      grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
      gap: 16px;
      width: 100%;
      align-items: start;
    }

    .turn-rox-mining-timer .timer-card {
      float: none !important;
      width: auto !important;
      max-width: none !important;
      margin: 0 !important;
      background: rgba(30, 41, 59, 0.92);
      border: 1px solid rgba(148, 163, 184, 0.25);
      border-radius: 14px;
      padding: 16px;
    }

    @media (min-width: 768px) {
      .turn-rox-mining-timer .grid {
        grid-template-columns: repeat(2, minmax(320px, 1fr));
      }
    }

    .turn-rox-mining-timer .timer-title {
      margin: 0 0 12px;
      font-size: 18px;
    }

    .turn-rox-mining-timer .row {
      display: flex;
      gap: 10px;
      margin-bottom: 10px;
    }

    .turn-rox-mining-timer .field {
      flex: 1;
    }

    .turn-rox-mining-timer label {
      display: block;
      font-size: 13px;
      color: var(--muted);
      margin-bottom: 4px;
    }

    .turn-rox-mining-timer input[type="number"] {
      width: 100%;
      padding: 8px 10px;
      border: 1px solid #475569;
      border-radius: 8px;
      background: #0f172a;
      color: var(--text);
    }
    .early-seconds-input {
      width: 20% !important;
    }

    .turn-rox-mining-timer .state {
      margin: 10px 0 6px;
      font-size: 13px;
      color: var(--muted);
    }

    .turn-rox-mining-timer .state .badge {
      font-weight: 700;
      padding: 3px 8px;
      border-radius: 999px;
      display: inline-block;
      margin-left: 6px;
    }

    .turn-rox-mining-timer .badge.waiting { background: rgba(245, 158, 11, 0.2); color: #fcd34d; }
    .turn-rox-mining-timer .badge.mining { background: rgba(34, 197, 94, 0.2); color: #86efac; }
    .turn-rox-mining-timer .badge.stopped { background: rgba(239, 68, 68, 0.2); color: #fca5a5; }

    .turn-rox-mining-timer .time {
      font-size: 40px;
      font-weight: 700;
      letter-spacing: 1px;
      margin: 0 0 12px;
    }

    .turn-rox-mining-timer .controls {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .turn-rox-mining-timer .alerts {
      margin: 8px 0 12px;
      display: grid;
      gap: 8px;
    }

    .turn-rox-mining-timer .alert-item {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 13px;
      color: var(--muted);
    }

    .turn-rox-mining-timer .alert-item input[type="checkbox"] {
      width: 15px;
      height: 15px;
      accent-color: #22c55e;
    }

    .turn-rox-mining-timer .alert-item input[type="number"] {
      width: 80px;
      padding: 6px 8px;
    }

    .turn-rox-mining-timer .alert-config {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin-top: 6px;
    }

    .turn-rox-mining-timer .alert-config .field {
      min-width: 0;
    }

    .turn-rox-mining-timer select {
      width: 100%;
      padding: 8px 10px;
      border: 1px solid #475569;
      border-radius: 8px;
      background: #0f172a;
      color: var(--text);
    }

    .turn-rox-mining-timer .inline-test {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-top: 4px;
    }

    .turn-rox-mining-timer .test {
      background: #0ea5e9;
      color: #082f49;
    }

    .turn-rox-mining-timer button {
      padding: 8px 12px;
      border: none;
      border-radius: 8px;
      cursor: pointer;
      font-weight: 700;
    }

    .turn-rox-mining-timer .start { background: var(--accent); color: #052e16; }
    .turn-rox-mining-timer .stop { background: var(--danger); color: white; }
    .turn-rox-mining-timer .reset { background: #334155; color: var(--text); }

    .turn-rox-mining-timer .note {
      margin-top: 18px;
      font-size: 13px;
      color: var(--muted);
      line-height: 1.5;
    }

    .turn-rox-mining-timer .accordion {
      margin-top: 18px;
      background: rgba(30, 41, 59, 0.92);
      border: 1px solid rgba(148, 163, 184, 0.25);
      border-radius: 14px;
      overflow: hidden;
    }

    .turn-rox-mining-timer .accordion summary {
      list-style: none;
      cursor: pointer;
      padding: 14px 16px;
      font-weight: 700;
      user-select: none;
    }

    .turn-rox-mining-timer .accordion summary::-webkit-details-marker { display: none; }

    .turn-rox-mining-timer .accordion summary::after {
      content: "▸";
      float: right;
      color: var(--muted);
      transition: transform 0.2s ease;
    }

    .turn-rox-mining-timer .accordion[open] summary::after { transform: rotate(90deg); }

    .turn-rox-mining-timer .accordion-content {
      border-top: 1px solid rgba(148, 163, 184, 0.2);
      padding: 14px 16px 16px;
    }

    .turn-rox-mining-timer .event-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 10px;
      margin-bottom: 10px;
    }

    .turn-rox-mining-timer .event-row {
      margin: 10px 0;
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
      color: var(--muted);
      font-size: 14px;
    }

    .turn-rox-mining-timer .event-row input[type="checkbox"] {
      width: 15px;
      height: 15px;
      accent-color: #22c55e;
    }

    .turn-rox-mining-timer .hint-wrap {
      position: relative;
      display: inline-flex;
      align-items: center;
    }

    .turn-rox-mining-timer .hint {
      width: 18px;
      height: 18px;
      border-radius: 50%;
      border: 1px solid #64748b;
      color: #cbd5e1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 12px;
      cursor: help;
      font-weight: 700;
    }

    .turn-rox-mining-timer .hint-text {
      position: absolute;
      left: 24px;
      top: -6px;
      width: min(360px, 80vw);
      background: #0b1225;
      border: 1px solid #334155;
      border-radius: 8px;
      padding: 8px 10px;
      color: #cbd5e1;
      font-size: 12px;
      line-height: 1.4;
      opacity: 0;
      transform: translateY(4px);
      pointer-events: none;
      transition: opacity 0.18s ease, transform 0.18s ease;
      z-index: 5;
    }

    .turn-rox-mining-timer .hint-wrap:hover .hint-text {
      opacity: 1;
      transform: translateY(0);
    }

    .turn-rox-mining-timer .calculate {
      margin-top: 6px;
      background: #a78bfa;
      color: #2e1065;
    }

    .turn-rox-mining-timer .result {
      margin-top: 12px;
      padding: 12px;
      border-radius: 10px;
      background: #0f172a;
      border: 1px solid rgba(148, 163, 184, 0.2);
      color: #cbd5e1;
      font-size: 14px;
      line-height: 1.5;
      white-space: pre-line;
    }

    .turn-rox-mining-timer .result-ok {
      border-color: rgba(34, 197, 94, 0.45);
      box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.15);
    }

    .turn-rox-mining-timer .result-warn {
      border-color: rgba(245, 158, 11, 0.45);
      box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.15);
    }

    .turn-rox-mining-timer .result-danger {
      border-color: rgba(239, 68, 68, 0.45);
      box-shadow: inset 0 0 0 1px rgba(239, 68, 68, 0.15);
    }
