body {
    background: radial-gradient(circle at 50% -10%, rgba(47, 115, 255, 0.10), transparent 36%), var(--background);
}

.settings-note {
    margin: 0;
    color: var(--text-secondary);
    font-size: 13px;
}

.settings-card {
    margin-bottom: 18px;
    padding: 24px;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.settings-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.settings-card h2 { margin: 0; font-size: 18px; }
.settings-card p { margin: 6px 0 0; color: var(--text-secondary); font-size: 13px; }

.settings-live-badge {
    flex: 0 0 auto;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(47, 115, 255, 0.09);
    border: 1px solid rgba(47, 115, 255, 0.16);
    color: var(--primary);
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.option-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    border: 0;
}
.option-grid.two-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.option-grid legend, .style-grid legend {
    position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}

.setting-option {
    display: flex; gap: 12px; align-items: flex-start; padding: 16px;
    border: 1px solid var(--border); border-radius: 16px; background: var(--surface-soft);
    cursor: pointer; transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.setting-option:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(15, 31, 58, 0.08); }
.setting-option:has(input:checked) { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(47, 115, 255, 0.10); }
.setting-option input { margin-top: 3px; accent-color: var(--primary); }
.setting-option span { display: grid; gap: 4px; }
.setting-option strong { font-size: 14px; }
.setting-option small { color: var(--text-secondary); line-height: 1.4; }

.style-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
    padding: 0;
    border: 0;
}

.style-option {
    position: relative; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) 48%;
    gap: 16px; align-items: center; padding: 14px;
    border: 1px solid var(--border); border-radius: 18px; background: var(--surface-soft);
    cursor: pointer; overflow: hidden;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.style-option::after {
    content: ''; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(120deg, rgba(255,255,255,.08), transparent 45%, rgba(47,115,255,.04)); opacity: 0; transition: opacity .18s ease;
}
.style-option:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(15,31,58,.08); }
.style-option:hover::after, .style-option.is-selected::after { opacity: 1; }
.style-option:has(input:checked) { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(47,115,255,.10), 0 14px 28px rgba(30,79,196,.10); }
.style-option input { position: absolute; opacity: 0; pointer-events: none; }
.style-copy { display: grid; gap: 5px; align-content: center; z-index: 1; }
.style-copy strong { font-size: 13px; letter-spacing: -.01em; }
.style-copy small { color: var(--text-secondary); line-height: 1.35; font-size: 11px; }

.style-sample {
    min-width: 0; min-height: 76px; display: grid; place-items: center; position: relative; z-index: 1;
    border-radius: 15px; padding: 12px; overflow: hidden;
    border: 1px solid var(--border); background: var(--surface);
    color: var(--text-primary); text-align: center;
}

.sample-standard { font-size: 17px; font-weight: 800; letter-spacing: -.04em; }
.sample-big-bold { font-size: 26px; font-weight: 950; letter-spacing: -.07em; background: linear-gradient(160deg, #eff4ff, #fff); }
.sample-compact { justify-items: start; align-content: center; padding-left: 14px; font: 800 12px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; }
.sample-minimal { background: transparent; border-color: transparent; font-size: 23px; font-weight: 700; letter-spacing: -.06em; }
.sample-elegant { font-family: Georgia, 'Times New Roman', serif; font-size: 19px; letter-spacing: .02em; font-weight: 600; }
.sample-glass { color: #fff; border-color: rgba(255,255,255,.25); background: linear-gradient(135deg, rgba(47,115,255,.75), rgba(113,77,255,.45)); box-shadow: inset 0 1px 0 rgba(255,255,255,.25); backdrop-filter: blur(10px); font-size: 15px; font-weight: 900; }
.sample-neon { background: #091220; color: #a8d8ff; border-color: rgba(92,183,255,.28); font: 800 16px/1 ui-monospace, SFMono-Regular, Menlo, monospace; text-shadow: 0 0 8px rgba(110,200,255,.9); box-shadow: inset 0 0 18px rgba(0,185,255,.12); }
.sample-terminal { background: #111; color: #86ff9a; border-color: #2c5535; font: 800 15px/1 ui-monospace, SFMono-Regular, Menlo, monospace; text-shadow: 0 0 5px rgba(134,255,154,.55); }
.sample-pill { min-height: 48px; width: min(100%, 170px); border-radius: 999px; background: #eef4ff; color: #184cae; font-size: 16px; font-weight: 900; letter-spacing: -.04em; }
.sample-split { grid-template-columns: 1fr auto 1fr auto; gap: 3px; align-content: center; font: 950 25px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: -.08em; }
.sample-split b { color: var(--primary); font-weight: 900; }
.sample-split em { align-self: end; color: var(--primary); font: 900 9px/1 system-ui, sans-serif; letter-spacing: .04em; font-style: normal; }
.sample-gradient { font-size: 18px; font-weight: 950; letter-spacing: -.06em; background: linear-gradient(120deg, rgba(47,115,255,.10), rgba(167,111,255,.08)); }
.sample-gradient span { background: linear-gradient(90deg, #2f73ff, #7b55ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sample-retro { background: #111; color: #fff; border-radius: 8px; font: 900 19px/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .04em; }
.sample-retro em { margin-left: 5px; color: #9ea7b9; font: 800 8px/1 system-ui, sans-serif; font-style: normal; }
.sample-soft-glow { background: radial-gradient(circle at 50% 40%, rgba(47,115,255,.16), transparent 65%), #f8fbff; color: #20458f; font-size: 18px; font-weight: 900; text-shadow: 0 0 10px rgba(47,115,255,.22); }
.sample-outline { background: transparent; font-size: 21px; font-weight: 950; letter-spacing: .02em; -webkit-text-stroke: 1px var(--text-primary); color: transparent; }

.analog-sample { width: 76px; min-height: 76px; justify-self: end; aspect-ratio: 1; border-radius: 50%; padding: 0; }
.analog-classic-preview { background: radial-gradient(circle, #fff 0 68%, #edf1f7 69% 100%); }
.analog-modern-preview { background: radial-gradient(circle, #111a2c 0 68%, #0b1020 69% 100%); border-color: #31415e; color: #e9f0ff; box-shadow: inset 0 0 0 4px rgba(110,145,210,.12); }
.analog-sample i { position: absolute; font-size: 7px; font-weight: 900; font-style: normal; }
.analog-sample i:nth-of-type(1) { top: 8px; left: 50%; transform: translateX(-50%); }
.analog-sample i:nth-of-type(2) { right: 8px; top: 50%; transform: translateY(-50%); }
.analog-sample i:nth-of-type(3) { bottom: 8px; left: 50%; transform: translateX(-50%); }
.analog-sample i:nth-of-type(4) { left: 8px; top: 50%; transform: translateY(-50%); }
.analog-hand { position: absolute; left: 50%; bottom: 50%; width: 2px; border-radius: 999px; transform-origin: 50% 100%; transform: translateX(-50%) rotate(0deg); }
.analog-hand.hour { height: 21px; background: currentColor; }
.analog-hand.minute { height: 27px; background: currentColor; opacity: .9; }
.analog-hand.second { height: 29px; width: 1px; background: #d63d57; }
.analog-dot { position: absolute; width: 6px; height: 6px; left: 50%; top: 50%; transform: translate(-50%, -50%); border-radius: 50%; background: currentColor; box-shadow: 0 0 0 2px rgba(255,255,255,.6); }
.analog-modern-preview .analog-dot { box-shadow: 0 0 0 2px rgba(255,255,255,.08), 0 0 12px rgba(94,182,255,.9); }

.settings-reset { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.secondary-button { min-height: 44px; padding: 0 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-soft); color: var(--text-primary); font: inherit; font-weight: 700; cursor: pointer; }
.settings-status { min-height: 24px; padding: 0 4px; color: var(--primary); font-size: 13px; font-weight: 700; }

html[data-theme="dark"] .sample-big-bold, html[data-theme="dark"] .sample-pill { background: #172338; color: #f0f5ff; }
html[data-theme="dark"] .sample-standard, html[data-theme="dark"] .sample-elegant, html[data-theme="dark"] .style-sample { border-color: #263753; }

@media (max-width: 980px) {
    .style-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    .settings-card { padding: 18px; border-radius: 20px; }
    .option-grid, .option-grid.two-columns { grid-template-columns: 1fr; }
    .settings-reset { align-items: stretch; flex-direction: column; }
    .settings-section-heading { flex-direction: column; }
    .style-option { grid-template-columns: minmax(0, 1fr) 43%; gap: 10px; }
    .style-sample { min-height: 68px; }
    .analog-sample { width: 68px; min-height: 68px; }
}

/* v01.28 — Clock Display Mode selector */
.clock-display-settings { position: relative; }
.clock-display-live { margin: 0 0 20px; padding: 14px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface-soft); }
.clock-display-live-label { display: block; margin: 0 0 10px; color: var(--text-secondary); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.clock-display-live-stage { min-height: 170px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; padding: 18px; border-radius: 16px; background: var(--surface); border: 1px solid var(--border); color: var(--text-primary); overflow: hidden; text-align: center; transition: all .18s ease; }
.clock-display-live-stage > strong { font-size: clamp(36px, 6vw, 74px); line-height: .92; letter-spacing: -.07em; }
.clock-display-live-stage > span[data-display-preview-city] { font-weight: 900; font-size: 16px; }
.clock-display-live-stage > span[data-display-preview-country] { color: var(--text-secondary); font-size: 12px; }
.clock-display-live-stage > small { color: var(--text-secondary); font-weight: 800; }
.live-mode-minimal { background: transparent !important; border-color: transparent !important; box-shadow: none !important; }
.live-mode-minimal > strong { font-size: clamp(38px, 6vw, 66px); font-weight: 700; }
.live-mode-colorful { background: linear-gradient(145deg, rgba(255,247,222,.98), rgba(233,243,255,.98)) !important; }
.live-mode-glass { background: linear-gradient(145deg, rgba(255,255,255,.28), rgba(230,239,255,.2)) !important; backdrop-filter: blur(12px); box-shadow: inset 0 1px 0 rgba(255,255,255,.5); }
.live-mode-compact { min-height: 120px; display: grid; grid-template-columns: minmax(0,1fr) auto; grid-template-rows: auto auto; justify-content: stretch; justify-items: start; text-align: left; gap: 3px 16px; }
.live-mode-compact > strong { grid-column: 2; grid-row: 1 / span 2; align-self: center; font-size: 34px; letter-spacing: -.05em; }
.live-mode-compact > span[data-display-preview-city] { grid-column: 1; grid-row: 1; }
.live-mode-compact > span[data-display-preview-country] { grid-column: 1; grid-row: 2; }
.live-mode-compact > small { grid-column: 1; grid-row: 3; }
.live-mode-large-digital > strong { font-size: clamp(52px, 9vw, 104px); font-weight: 900; }
.live-mode-large-digital > span[data-display-preview-city] { margin-top: 5px; text-transform: uppercase; letter-spacing: .08em; }
.live-mode-analog { flex-direction: row; justify-content: center; gap: 22px; }
.live-mode-analog::before { content: '◉'; width: 88px; height: 88px; display: grid; place-items: center; border: 4px solid currentColor; border-radius: 50%; font-size: 12px; }
.live-mode-world-map { background: linear-gradient(rgba(236,246,255,.84), rgba(236,246,255,.84)), url('../time-zone-map.svg') center/cover no-repeat !important; align-items: flex-start; justify-content: flex-start; padding: 22px; }
.live-mode-world-map > strong { font-size: 16px; letter-spacing: .08em; }
.live-mode-world-map > span[data-display-preview-city] { margin-top: 18px; font-size: 28px; }
.live-mode-world-map > span[data-display-preview-country] { font-size: 11px; }

.display-mode-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; border: 0; }
.display-mode-grid legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.display-mode-option { position: relative; display: block; min-width: 0; cursor: pointer; }
.display-mode-option > input { position: absolute; opacity: 0; pointer-events: none; }
.display-mode-card { display: grid; grid-template-rows: minmax(110px, 1fr) auto; gap: 11px; height: 100%; min-height: 190px; padding: 12px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface-soft); overflow: hidden; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease; }
.display-mode-option:hover .display-mode-card { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(15,31,58,.08); }
.display-mode-option:focus-within .display-mode-card { outline: 3px solid rgba(47,115,255,.18); outline-offset: 3px; }
.display-mode-option.is-selected .display-mode-card { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(47,115,255,.11), 0 14px 28px rgba(30,79,196,.10); }
.display-mode-option.is-selected .display-mode-copy::before { content: '✓'; position: absolute; top: 8px; right: 8px; width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; background: var(--primary); color: white; font-size: 12px; font-weight: 900; z-index: 2; }
.display-mode-sample { min-width: 0; min-height: 110px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; border-radius: 14px; border: 1px solid var(--border); background: var(--surface); color: var(--text-primary); text-align: center; overflow: hidden; }
.display-mode-sample b { font-weight: 900; }
.display-mode-sample small { color: var(--text-secondary); font-size: 9px; }
.display-mode-copy { position: relative; display: grid; gap: 4px; }
.display-mode-copy strong { font-size: 13px; }
.display-mode-copy small { color: var(--text-secondary); font-size: 11px; line-height: 1.35; }
.sample-mode-classic b { font-size: 18px; }
.sample-mode-minimal { background: transparent; border-color: transparent; }
.sample-mode-minimal b { font-size: 27px; font-weight: 700; letter-spacing: -.06em; }
.sample-mode-colorful { align-items: flex-start; padding: 13px; background: linear-gradient(145deg, #fff0bd, #e4f1ff); }
.sample-mode-colorful em { align-self: flex-start; font-size: 8px; font-style: normal; font-weight: 900; }
.sample-mode-colorful b { font-size: 23px; align-self: center; }
.sample-mode-colorful small { align-self: center; }
.sample-mode-glass { color: white; background: linear-gradient(135deg, rgba(47,115,255,.76), rgba(124,82,236,.55)); border-color: rgba(255,255,255,.28); box-shadow: inset 0 1px 0 rgba(255,255,255,.3); backdrop-filter: blur(9px); }
.sample-mode-glass b { font-size: 22px; }
.sample-mode-compact { align-items: stretch; justify-content: center; padding: 11px; text-align: left; }
.sample-mode-compact b { font-size: 12px; }
.sample-mode-compact strong { align-self: flex-end; position: absolute; right: 11px; top: 27px; font-size: 23px; }
.sample-mode-compact small { align-self: flex-start; }
.sample-mode-large { background: var(--surface-soft); }
.sample-mode-large b { font-size: 36px; line-height: .9; letter-spacing: -.08em; }
.sample-mode-large em { font-style: normal; font-weight: 900; font-size: 9px; }
.sample-mode-large small { letter-spacing: .06em; text-transform: uppercase; }
.sample-mode-analog { width: 86px; aspect-ratio: 1; min-height: 86px; justify-self: center; border-radius: 50%; border-width: 4px; }
.sample-mode-analog i { position: absolute; left: 50%; bottom: 50%; width: 2px; border-radius: 999px; transform-origin: 50% 100%; }
.sample-mode-analog .preview-hour { height: 23px; background: currentColor; transform: translateX(-50%) rotate(40deg); }
.sample-mode-analog .preview-minute { height: 30px; background: currentColor; opacity: .8; transform: translateX(-50%) rotate(120deg); }
.sample-mode-analog .preview-second { height: 33px; width: 1px; background: var(--primary); transform: translateX(-50%) rotate(215deg); }
.sample-mode-analog b { position: absolute; font-size: 7px; }
.sample-mode-analog b:nth-of-type(1) { top: 8px; }
.sample-mode-analog b:nth-of-type(2) { right: 8px; }
.sample-mode-analog b:nth-of-type(3) { bottom: 8px; }
.sample-mode-analog b:nth-of-type(4) { left: 8px; }
.sample-mode-analog > span { position: absolute; width: 6px; height: 6px; top: 50%; left: 50%; transform: translate(-50%,-50%); border-radius: 50%; background: currentColor; }
.sample-mode-map { align-items: flex-start; justify-content: flex-start; padding: 12px; background: linear-gradient(rgba(238,246,255,.78), rgba(238,246,255,.78)), url('../time-zone-map.svg') center/cover no-repeat; }
.sample-mode-map b { font-size: 10px; letter-spacing: .08em; }
.sample-mode-map span { font-size: 8px; padding-left: 6px; }
.display-mode-selected { margin-top: 16px; color: var(--text-secondary); font-size: 12px; font-weight: 700; }

html[data-theme="dark"] .sample-mode-colorful,
html[data-theme="dark"] .live-mode-colorful { background: linear-gradient(145deg, #594a2e, #24364c); color: #f7f9ff; }
html[data-theme="dark"] .sample-mode-map,
html[data-theme="dark"] .live-mode-world-map { background-image: linear-gradient(rgba(20,31,51,.78), rgba(20,31,51,.78)), url('../time-zone-map.svg'); color: #edf3ff; }

@media (max-width: 1024px) {
    .display-mode-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
    .display-mode-grid { grid-template-columns: 1fr; }
    .display-mode-card { min-height: 170px; grid-template-columns: 42% minmax(0, 1fr); grid-template-rows: 1fr; align-items: center; gap: 12px; }
    .display-mode-sample { min-height: 128px; }
    .clock-display-live-stage { min-height: 150px; }
    .live-mode-compact { grid-template-columns: 1fr; grid-template-rows: auto auto auto; }
    .live-mode-compact > strong { grid-column: 1; grid-row: 1; justify-self: center; }
    .live-mode-compact > span[data-display-preview-city] { grid-column: 1; grid-row: 2; }
    .live-mode-compact > span[data-display-preview-country] { grid-column: 1; grid-row: 3; }
    .live-mode-compact > small { grid-column: 1; grid-row: 4; }
}


/* v01.28.3 — Multi Theme selector */
.theme-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; border: 0; }
.theme-grid legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.theme-option { position: relative; min-width: 0; cursor: pointer; }
.theme-option > input { position: absolute; opacity: 0; pointer-events: none; }
.theme-card { display: grid; grid-template-rows: 86px auto; gap: 11px; min-height: 166px; padding: 12px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface-soft); overflow: hidden; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.theme-option:hover .theme-card { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(15,31,58,.08); }
.theme-option:focus-within .theme-card { outline: 3px solid rgba(47,115,255,.18); outline-offset: 3px; }
.theme-option.is-selected .theme-card { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(47,115,255,.11), 0 14px 28px rgba(30,79,196,.10); }
.theme-option.is-selected .theme-card-copy::before { content: '✓'; position: absolute; top: 8px; right: 8px; width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; background: var(--primary); color: white; font-size: 12px; font-weight: 900; z-index: 2; }
.theme-card-visual { min-width: 0; border-radius: 14px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.25); color: currentColor; overflow: hidden; }
.theme-card-visual b { font-size: 30px; letter-spacing: .04em; }
.theme-card-copy { position: relative; display: grid; gap: 4px; }
.theme-card-copy strong { font-size: 13px; }
.theme-card-copy small { color: var(--text-secondary); font-size: 11px; line-height: 1.35; }
.theme-system .theme-card-visual { background: linear-gradient(135deg, #f8fbff 0 50%, #172338 50% 100%); color: #2f73ff; }
.theme-light .theme-card-visual { background: linear-gradient(145deg, #ffffff, #e9f0ff); color: #2f73ff; }
.theme-dark .theme-card-visual { background: linear-gradient(145deg, #172338, #0b1220); color: #cdd9ff; }
.theme-ocean .theme-card-visual { background: linear-gradient(145deg, #d8f5ff, #2f74b8); color: #0f3b63; }
.theme-sunset .theme-card-visual { background: linear-gradient(145deg, #ffe7cf, #d65c63); color: #6e2435; }
.theme-aurora .theme-card-visual { background: radial-gradient(circle at 25% 30%, #6cf0c2, transparent 35%), linear-gradient(135deg, #182450, #6537a0 55%, #102c42); color: #edfbff; }
.theme-midnight .theme-card-visual { background: radial-gradient(circle at 65% 35%, rgba(75,119,255,.45), transparent 28%), linear-gradient(145deg, #0b1120, #101b39); color: #dce8ff; }
.theme-day-night-world .theme-card-visual { background: linear-gradient(135deg, #f7d87a 0 38%, #b66ea5 39% 62%, #1b2e57 63% 100%); color: white; }

@media (max-width: 1024px) { .theme-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .theme-grid { grid-template-columns: 1fr; } .theme-card { grid-template-columns: 38% 1fr; grid-template-rows: 1fr; min-height: 116px; align-items: center; } .theme-card-visual { min-height: 88px; } }

/* v01.29.1 — Location Intelligence */
.location-context-panel { display: grid; gap: 14px; padding: 16px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface-soft); }
.location-context-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.location-context-grid > div { display: grid; gap: 5px; padding: 12px; border: 1px solid var(--border); border-radius: 14px; background: var(--surface); }
.location-context-grid span { color: var(--text-secondary); font-size: 10px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.location-context-grid strong { font-size: 15px; line-height: 1.3; }
.location-context-reason { margin: 0; color: var(--text-secondary); font-size: 12px; font-weight: 700; }
.location-context-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.settings-inline-status { color: var(--text-secondary); font-size: 12px; font-weight: 800; }
.location-history-toggle { margin-top: 16px; }
.location-history-block { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--border); }
.location-history-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.text-button { border: 0; background: transparent; color: var(--primary); font: inherit; font-size: 12px; font-weight: 900; cursor: pointer; }
.location-history-list { display: grid; gap: 8px; }
.location-history-item { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 11px 12px; border: 1px solid var(--border); border-radius: 13px; background: var(--surface); }
.location-history-item > div { display: grid; gap: 3px; }
.location-history-item strong { font-size: 13px; }
.location-history-item span, .location-history-item small, .location-history-item time { color: var(--text-secondary); font-size: 11px; }
.location-history-item > div:last-child { text-align: right; }
.location-history-empty { padding: 12px; border: 1px dashed var(--border); border-radius: 13px; color: var(--text-secondary); font-size: 12px; font-weight: 700; }
@media (max-width: 760px) {
    .location-context-grid { grid-template-columns: 1fr; }
    .location-history-item { grid-template-columns: 1fr; }
    .location-history-item > div:last-child { text-align: left; }
}
