.calendar-settings{max-width:950px;color:var(--text)}
.calendar-settings h1{margin:7px 0 10px;font-size:28px;letter-spacing:-.04em}
.calendar-settings header>p,.calendar-settings-content>p{color:var(--muted);font-size:12px;line-height:1.6}
.calendar-settings-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);margin:20px 0}
.calendar-settings-card h2{margin:0;padding:13px 16px;font-size:13px;background:color-mix(in srgb,var(--panel) 52%,var(--surface));border-bottom:1px solid var(--line)}
.calendar-settings-content{padding:16px}.calendar-settings-content>p:first-child{margin-top:0}
.calendar-week-start{display:grid;gap:7px;max-width:260px;color:var(--muted);font-size:12px;font-weight:650}
.calendar-legend-fields{display:grid;gap:12px;margin-top:18px}.calendar-legend-row{display:grid;grid-template-columns:145px minmax(100px,1fr) 46px;gap:12px;align-items:center;font-size:12px}.calendar-legend-row label{color:var(--muted);font-weight:650}
.calendar-legend-row input:not([type=color]){width:100%;box-sizing:border-box;min-height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px;font:inherit}
.calendar-legend-row input[type=color]{width:44px;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:4px;cursor:pointer}
.calendar-settings footer{display:flex;justify-content:flex-start;gap:12px;flex-wrap:wrap}.calendar-settings-status{min-height:20px;color:var(--muted);font-size:12px}
@media(max-width:560px){.calendar-legend-row{grid-template-columns:minmax(100px,1fr) 44px;gap:7px}.calendar-legend-row label{grid-column:1/-1}.calendar-settings-content{padding:13px}.calendar-settings footer{flex-direction:column}.calendar-settings footer button{min-height:42px}}

.calendar-settings{margin-bottom:24px}
.calendar-settings .calendar-legend-card{margin-bottom:12px}
.calendar-settings-status{margin:0 0 12px;min-height:0}
.calendar-settings-status:empty{display:none}
.calendar-category-item{border-bottom:1px solid var(--line);padding-bottom:12px}
.calendar-category-item:last-child{border-bottom:0;padding-bottom:0}
.calendar-legend-row label small{display:block;margin-top:4px;font-weight:400}
.calendar-category-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}
.calendar-category-actions button,.calendar-category-new button{border:1px solid var(--line);border-radius:8px;padding:7px 10px;color:var(--text);background:var(--panel);font:inherit;font-size:11px;cursor:pointer}
.calendar-category-actions label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.calendar-category-actions select{max-width:180px}
.calendar-category-new{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.calendar-category-new label{display:grid;gap:6px;color:var(--muted);font-size:12px}
.calendar-category-new input:not([type=color]){min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:6px 10px;box-sizing:border-box;font:inherit}
.calendar-category-new input[type=color]{width:44px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:4px}
.calendar-category-new button{min-height:36px}
.calendar-settings :disabled{opacity:.6;cursor:wait}
@media(max-width:560px){.calendar-settings footer{flex-direction:row;gap:8px}.calendar-settings footer button{min-height:38px}.calendar-category-actions label{flex-basis:100%}.calendar-category-new label:first-child{flex:1;min-width:160px}}

.calendar-category-manage{margin-top:7px}.calendar-category-manage summary{display:inline-block;color:var(--accent);font-size:11px;font-weight:650;cursor:pointer;list-style:none}.calendar-category-manage summary::after{content:' ▾'}.calendar-category-confirm{width:min(420px,calc(100vw - 28px));padding:25px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.calendar-category-confirm::backdrop{background:rgba(37,29,23,.38);backdrop-filter:blur(3px)}.calendar-category-confirm h2{margin:0 0 15px;font-size:20px}.calendar-category-confirm p{font-size:13px;line-height:1.6;color:var(--muted)}
