.setting-icon { color: #2f8bff; font-weight: 800; display: grid; place-items: center; border: 2px solid #2f8bff; border-radius: 50%; }
.setting-copy p { margin: 7px 0 0; color: #9eb3cc; }
.setting-row { min-height: 92px; display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 12px; border-top: 1px solid rgba(90, 126, 159, .28); }
.card-title + .setting-row { border-top: 0; }
.setting-icon { width: 45px; height: 45px; font-size: 1.7rem; }
.setting-copy h3 { margin: 0; font-size: 1.25rem; letter-spacing: -.02em; }
.setting-copy p { font-size: .93rem; line-height: 1.25; }
.number-stepper { display: grid; grid-template-columns: 36px 44px 36px; align-items: center; border: 1px solid #33506d; border-radius: 15px; background: #061525; overflow: hidden; }
.number-stepper button { height: 54px; border: 0; background: transparent; color: #4a9cff; font-size: 1.45rem; }
.number-stepper output { text-align: center; font-size: 1.5rem; font-weight: 800; }
.time-trigger { min-width: 126px; display: flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid #34536e; border-radius: 15px; background: rgba(1, 13, 26, .7); color: #f7fbff; padding: 14px 12px; font-weight: 800; font-size: 1.48rem; font-variant-numeric: tabular-nums; }
.time-trigger span { color: #4d9dff; font-size: .9rem; transform: translateY(-1px); }
.time-trigger.is-selected { border-color: #2388ff; box-shadow: 0 0 18px rgba(35,136,255,.38), inset 0 0 12px rgba(35,136,255,.1); }
@media (max-width: 430px) {
.setting-row { grid-template-columns: 45px minmax(0, 1fr) auto; gap: 8px; }
.setting-copy h3 { font-size: 1.08rem; }
.setting-copy p { font-size: .8rem; }
.time-trigger { min-width: 108px; font-size: 1.25rem; }
}
.setting-icon { color: var(--fight-red-light); }
.number-stepper button { color: var(--fight-red-light); }
.time-trigger span { color: var(--fight-red-light); }
.time-trigger { border-color: var(--line); background: #121211; color: var(--chalk); }
.number-stepper { border-color: var(--line); background: #121211; color: var(--chalk); }
.setting-row { min-height: 70px; border-color: rgba(215,215,208,.16); }
.setting-row.is-disabled { opacity: .42; }
.setting-row.is-disabled .setting-icon { border-color: #706d69; color: #928d87; }
.setting-row.is-disabled .time-trigger { border-color: #4b4945; color: #9b968f; background: #181715; box-shadow: none; cursor: not-allowed; }
.setting-icon { width: 34px; height: 34px; border-width: 1px; font-size: 1.15rem; }
.setting-copy h3 { font-size: 1.03rem; }
.setting-copy p { color: var(--steel); }
.time-trigger { min-width: 112px; padding: 10px; font-size: 1.18rem; }
.time-trigger.is-selected { border-color: var(--fight-red-light); box-shadow: 0 0 14px rgba(168,14,13,.32); }
.setting-icon { color: var(--fight-red-light) !important; border-color: var(--fight-red-light) !important; }
.number-stepper button { color: var(--fight-red-light) !important; }
.time-trigger span { color: var(--fight-red-light) !important; }

.app-bar.settings-app-bar { display: flex; width: 100%; }
.app-bar.settings-app-bar .icon-button { margin-left: auto; flex: 0 0 44px; }
.settings-categories { display: grid; gap: 18px; min-width: 0; }
.settings-detail { display: grid; gap: 18px; min-width: 0; }
.settings-categories { gap: var(--fightr-space-sm); }
.settings-intro { color: #b2c5d9; margin: 0 0 2px; line-height: 1.5; }
.settings-category { display: flex; align-items: center; gap: var(--fightr-space-md); width: 100%; padding: 14px 12px; border: 1px solid #365470; border-radius: var(--fightr-radius); background: #091a2c; color: #f4f9ff; text-align: left; min-height: 76px; }
.settings-category:hover { border-color: #69b8ff; background: #112c46; }
.settings-category-number { flex: 0 0 28px; color: #69b8ff; font-size: .85rem; font-weight: 700; }
.settings-category-copy { display: grid; gap: var(--fightr-space-xs); min-width: 0; overflow-wrap: anywhere; }
.settings-category-copy strong { font-size: 1.08rem; }
.settings-category-copy small { color: #a9bdd3; font-size: .85rem; line-height: 1.35; }
.settings-category-chevron { margin-left: auto; font-size: 1.8rem; color: #69b8ff; }
.app-bar.settings-app-bar h1 { font-size: clamp(1.45rem, 6vw, 2.2rem); }
.app-bar.settings-app-bar { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 8px; }
.app-bar.settings-app-bar h1:focus { outline: none; }
.settings-detail > h2 { padding-bottom: 12px; border-bottom: 1px solid #365470; }
.app-bar.settings-app-bar { align-items:center;margin-bottom:14px;min-height:42px; }
.app-bar.settings-app-bar h1 { margin:0;text-align:center;letter-spacing:-.03em; }
.app-bar.settings-app-bar .icon-button { width:44px;height:44px;border:0;background:transparent;color:#f7fbff;font-size:2.35rem;line-height:1; }
.app-bar.settings-app-bar .icon-button:last-child { justify-self:end;font-size:1.55rem;color:var(--steel); }
@media (orientation:landscape) and (min-width:600px) { .app-bar.settings-app-bar {margin-bottom:8px;} }
.fightr-priority { display:grid;grid-template-columns:minmax(70px,1fr) 62px;align-items:center;gap:12px;margin:0;min-height:44px;position:relative }
.fightr-priority-copy {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.fightr-priority input {appearance:none;-webkit-appearance:none;width:100%;min-width:0;height:40px;margin:0;background:transparent;cursor:pointer;touch-action:pan-y}
.fightr-priority input::-webkit-slider-runnable-track {height:7px;border-radius:8px;background:linear-gradient(to right,var(--fight-red-light) var(--priority-fill),#424242 var(--priority-fill))}
.fightr-priority input::-moz-range-track {height:7px;border-radius:8px;background:linear-gradient(to right,var(--fight-red-light) var(--priority-fill),#424242 var(--priority-fill))}
.fightr-priority input::-webkit-slider-thumb {appearance:none;-webkit-appearance:none;width:24px;height:24px;border-radius:50%;border:2px solid var(--chalk);background:var(--fight-red-light);margin-top:-8px}
.fightr-priority input::-moz-range-thumb {width:21px;height:21px;border-radius:50%;border:2px solid var(--chalk);background:var(--fight-red-light)}
.fightr-priority input:focus-visible {outline:2px solid var(--chalk);outline-offset:3px;border-radius:8px}
.fightr-priority output {font:800 21px var(--fightr-font);color:var(--chalk);text-align:right;white-space:nowrap}
.fightr-priority output small {font-size:12px;font-weight:500;color:var(--steel)}
.fightr-sortable {padding:0;list-style:none}
.fightr-sortable .drag-handle {touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;font-size:24px;min-width:40px;min-height:44px}
.fightr-drag-source {opacity:.35}.fightr-drop-before {box-shadow:0 -3px var(--fight-red-light)}.fightr-drop-after {box-shadow:0 3px var(--fight-red-light)}
.fightr-drag-ghost {position:fixed;z-index:9999;pointer-events:none;opacity:.92;list-style:none;padding:12px;border:1px solid var(--fight-red-light);border-radius:12px;background:#252525;color:var(--chalk);box-shadow:0 8px 32px #0009;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-family:var(--fightr-font)}
.fightr-drag-ghost select {max-width:145px}.fightr-drag-ghost .step-actions{display:none}
.fightr-startup {position:fixed;inset:0;z-index:1000;background:#000;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:12px;overflow:auto;color:#f4f3ea;text-align:center}
.fightr-startup-art {width:min(86vw,600px);height:auto;display:block}
.fightr-startup-brand {width:76px;height:76px;object-fit:contain}
.fightr-startup p {font:400 14px var(--fightr-font);color:#aaa;margin:4px 0}
.fightr-startup .startup-error {max-width:580px;padding:12px}.fightr-startup .startup-error p {color:#ffb9b6}

/* Card surface shared by app screens, based on the Fight Timer settings cards. */
.fightr-card {
    border: 1px solid var(--line, #363636);
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(37,37,35,.98), rgba(16,16,16,.98));
    box-shadow: inset 0 1px rgba(255,255,255,.03), 0 12px 30px rgba(0,0,0,.2);
    margin-block: 12px;
    padding: 13px 16px;
}
.fightr-card > .fightr-card-title { font-size: 1rem; font-weight: 750; margin: 0; }
.fightr-card > summary { cursor: pointer; padding-block: 8px; }
.fightr-card:not(details) > .fightr-card-content, .fightr-card[open] > .fightr-card-content { margin-top: 10px; }
