.ulr-card{border:1px solid rgba(255,255,255,0.12);border-radius:16px;padding:16px;background:rgba(0,0,0,0.25);backdrop-filter:blur(6px);margin:16px 0}
.ulr-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ulr-title{margin:0;font-size:20px;line-height:1.2}
.ulr-sub{opacity:.75;font-size:13px}
.ulr-inner{display:grid;gap:14px;margin-top:10px}
.ulr-info{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ulr-instructions{font-size:14px;line-height:1.4}
.ulr-status{opacity:.8;font-size:13px;white-space:nowrap}
.ulr-muted{opacity:.75}
.ulr-green{color:#43d17a}
.ulr-red{color:#ff5b5b}
.ulr-stage{border:1px dashed rgba(255,255,255,0.25);border-radius:16px;min-height:180px;display:flex;align-items:center;justify-content:center;outline:none;user-select:none}
.ulr-stage:focus{box-shadow:0 0 0 3px rgba(255,255,255,0.15)}
.ulr-stage-inner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px;text-align:center}
.ulr-stage-text{font-size:20px;font-weight:700;letter-spacing:.4px;opacity:.9}
.ulr-stimulus{width:72px;height:72px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:46px;font-weight:800}
.ulr-stimulus-dot{border-radius:999px;background:rgba(255,255,255,0.85)}
.ulr-stimulus-arrow{background:rgba(255,255,255,0.12)}
.ulr-stimulus-go{background:rgba(67,209,122,0.9);border-radius:999px}
.ulr-stimulus-nogo{background:rgba(255,91,91,0.9);border-radius:999px}
.ulr-actions{display:flex;gap:10px;flex-wrap:wrap}
.ulr-btn{border:none;padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:700}
.ulr-btn:disabled{opacity:.55;cursor:not-allowed}
.ulr-btn-secondary{opacity:.9}
.ulr-msg{margin-top:10px;font-size:14px;min-height:20px}
.ulr-msg-ok{color:#43d17a}
.ulr-msg-bad{color:#ff5b5b}
.ulr-msg-info{opacity:.9}
.ulr-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.ulr-kpi{border:1px solid rgba(255,255,255,0.12);border-radius:14px;padding:10px}
.ulr-kpi-label{opacity:.75;font-size:12px}
.ulr-kpi-value{font-size:20px;font-weight:800;margin-top:2px}
.ulr-note{margin-top:10px;opacity:.75;font-size:13px}
.ulr-h4{margin:14px 0 8px 0;font-size:16px}
.ulr-table-wrap{overflow:auto;border-radius:14px;border:1px solid rgba(255,255,255,0.12);margin-top:10px}
.ulr-table{width:100%;border-collapse:collapse;font-size:14px}
.ulr-table th,.ulr-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,0.08);text-align:left;white-space:nowrap}
.ulr-table th{opacity:.8;font-size:12px;text-transform:uppercase;letter-spacing:.5px}

/* Season nav */
.ulr-seasonbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px}
.ulr-seasonbar-left{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ulr-seasonbar-right{display:flex;gap:8px;align-items:center}
.ulr-months{display:flex;gap:8px;flex-wrap:wrap}
.ulr-months button{background:transparent;color:inherit;display:inline-block;padding:8px 10px;border-radius:12px;border:1px solid rgba(255,255,255,0.18);cursor:pointer}
.ulr-months button.ulr-active{border-color:rgba(255,255,255,0.55);font-weight:800}
.ulr-year-select{background:transparent;color:inherit;border:1px solid rgba(255,255,255,0.18);border-radius:12px;padding:8px 10px}
.ulr-loading{opacity:.7}
