.calendar-sync-settings{margin-top:22px;padding-top:10px;border-top:1px solid var(--line);color:var(--people-ink,#17324e)}
.calendar-sync-settings h3{margin:12px 0;font-size:17px}
.calendar-sync-settings>p{font-size:13px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
.calendar-sync-toggle{display:flex;gap:10px;align-items:center;min-height:44px;font-weight:700;font-size:14px;cursor:pointer}
.calendar-sync-settings input{flex:none;width:17px;height:17px;margin:0;accent-color:var(--people-ink,#17324e)}
.calendar-sync-settings input:focus-visible{outline:2px solid #b99746;outline-offset:3px}
.calendar-sync-range,.calendar-sync-branch{min-width:0;margin:16px 0;border:1px solid var(--line);border-radius:10px;padding:12px}
.calendar-sync-settings legend{font-size:14px;font-weight:700;padding:0 5px}
.calendar-sync-range>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.calendar-sync-range label{display:flex;gap:6px;justify-content:center;align-items:center;min-height:44px;padding:6px;border:1px solid var(--line);border-radius:7px;font-size:12px;cursor:pointer}
.calendar-sync-range label:has(input:checked){background:var(--people-soft,#eef3f8);font-weight:700}
.calendar-sync-branch>label{display:flex;gap:10px;align-items:flex-start;padding:10px 0;min-height:44px;cursor:pointer;font-size:14px;line-height:1.4}
.calendar-sync-branch>label+label{border-top:1px solid var(--line)}
.calendar-sync-branch input{margin-top:2px}
.calendar-sync-branch small{display:block;font-size:11px;margin-top:4px;color:var(--muted);font-weight:400}
.calendar-sync-export{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}
.calendar-sync-export button{border:1px solid var(--line);padding:12px 14px;min-height:44px;border-radius:8px;background:var(--people-ink,#17324e);color:var(--people-surface,#fff);font-size:13px;cursor:pointer}
.calendar-sync-export button:disabled{opacity:.45;cursor:default}
.calendar-sync-export span{font-size:12px;color:var(--muted)}
.calendar-sync-events{list-style:none;padding:0;margin:14px 0}
.calendar-sync-events li{padding:13px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.calendar-sync-events strong,.calendar-sync-events time,.calendar-sync-events small{display:block}
.calendar-sync-events strong{font-size:13px;line-height:1.5}
.calendar-sync-events time{font-size:13px;margin:5px 0}
.calendar-sync-events small{font-size:11px;line-height:1.5;color:var(--muted)}
.calendar-sync-events li>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.calendar-sync-events a{font-size:12px;min-height:32px;display:inline-flex;align-items:center;color:var(--blue,#1d5c98)}
.calendar-sync-empty,.calendar-sync-status{font-size:13px;line-height:1.6;color:var(--muted)}
.calendar-sync-status{padding:10px 12px;background:var(--people-soft,#eef3f8);border-radius:8px}
@media(max-width:350px){.calendar-sync-range,.calendar-sync-branch{padding:10px}.calendar-sync-range label{font-size:11px}}
