.reminders-page{width:min(100%,1020px);margin:0 auto;padding:24px 16px 48px;color:var(--text)}
.reminders-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.reminders-heading-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:16px;background:#edf3ff;color:#356cca;font-size:1.55rem}
.reminders-heading h1{margin:0;font-size:1.35rem;font-weight:750}
.reminders-heading p{margin:3px 0 0;color:var(--text-muted);font-size:.86rem}
.reminders-due-banner{display:flex;align-items:center;gap:11px;margin:0 0 16px;padding:14px 15px;border:1px solid #f0d391;border-radius:15px;background:#fff9e9;color:#72561a}
.reminders-due-icon{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:50%;background:#f8e9bd;font-weight:800}
.reminders-due-banner>div{flex:1}
.reminders-due-banner strong{display:block;font-size:.81rem}
.reminders-due-banner p{margin:2px 0 0;font-size:.75rem}
.reminders-due-banner a{color:#765511;font-size:.73rem;font-weight:700;text-decoration:none;white-space:nowrap}
.reminders-card-grid{display:grid;grid-template-columns:1fr;gap:15px;align-items:stretch}
.reminders-card{padding:20px;border:1px solid rgba(18,42,79,.06);border-radius:18px;background:var(--card-bg);box-shadow:var(--shadow)}
.reminders-card-heading{display:flex;align-items:center;gap:11px;margin-bottom:19px}
.reminders-card-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:13px;font-size:1.2rem}
.reminders-card-icon.is-calendar{background:#edf3ff;color:#386dcc}
.reminders-card-icon.is-device{background:#eaf7f0;color:#16804d}
.reminders-card-heading h2{margin:0;font-size:.98rem;font-weight:750}
.reminders-card-heading p{margin:3px 0 0;color:var(--text-muted);font-size:.75rem;line-height:1.6}
.reminders-time-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:15px}
.reminders-field label{display:block;margin:0 0 6px;font-size:.78rem;font-weight:650}
.reminders-field select{height:45px;border-radius:11px;background-color:#fff}
.reminders-choice-list{overflow:hidden;border:1px solid #edf0f3;border-radius:13px}
.reminders-choice{display:flex;align-items:center;gap:10px;min-height:68px;padding:10px 11px;cursor:pointer}
.reminders-choice+.reminders-choice{border-top:1px solid #edf0f3}
.reminders-choice-mark{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:11px;font-size:1rem}
.reminders-choice-mark.is-charge{background:#f0efff;color:#6355b5}
.reminders-choice-mark.is-expense{background:#fff3e5;color:#bd741e;font-size:1.25rem}
.reminders-choice-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.reminders-choice-copy strong{font-size:.76rem;font-weight:650}
.reminders-choice-copy small{color:var(--text-muted);font-size:.68rem;line-height:1.45}
.reminders-choice input{position:absolute;width:1px;height:1px;opacity:0}
.reminders-switch{position:relative;flex:none;width:37px;height:21px;border-radius:14px;background:#cbd1d9;transition:background .18s}
.reminders-switch:after{position:absolute;top:3px;right:3px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;content:"";transition:transform .18s}
.reminders-choice input:checked+.reminders-switch{background:#2875dc}
.reminders-choice input:checked+.reminders-switch:after{transform:translateX(-16px)}
.reminders-choice input:focus-visible+.reminders-switch{outline:3px solid #8ab6ff;outline-offset:3px}
.reminders-schedule-preview{display:flex;align-items:center;gap:8px;margin:14px 0 12px;padding:10px 12px;border-radius:11px;background:#f4f7fb;color:#66748a;font-size:.74rem}
.reminders-schedule-preview>span:first-child{color:#5376b5;font-size:1rem}
.reminders-schedule-preview strong{color:#344b70;font-weight:750}
.reminders-save{width:100%;min-height:45px;display:flex;justify-content:center;align-items:center;gap:8px;border-radius:11px;font-size:.82rem;font-weight:700}
.reminders-save.is-loading{opacity:.65;cursor:wait}
.reminders-save-status{margin:9px 0 0;color:#18804d;text-align:center;font-size:.76rem}
.reminders-device-card{display:flex;flex-direction:column}
.reminders-device-status{display:inline-flex;align-items:center;align-self:flex-start;gap:7px;margin:2px 0 11px;padding:6px 10px;border-radius:18px;font-size:.72rem}
.reminders-device-status.is-muted{background:#f0f2f5;color:#657080}
.reminders-device-status.is-success{background:#eaf7f0;color:#187444}
.reminders-device-status.is-danger{background:#fff0ef;color:#b13d36}
.reminders-status-dot{width:8px;height:8px;border-radius:50%;background:#9aa5b1}
.reminders-device-status.is-success .reminders-status-dot{background:#22a05a;box-shadow:0 0 0 3px #22a05a20}
.reminders-device-status.is-danger .reminders-status-dot{background:#d44f48}
.reminders-device-description{min-height:48px;margin:0 0 16px;color:#5f6c7c;font-size:.8rem;line-height:1.9}
.reminders-device-actions{display:grid;gap:9px;margin-top:auto}
.reminders-device-actions .btn{min-height:43px;border-radius:11px;font-size:.8rem;font-weight:650}
.reminders-device-actions .btn:disabled{cursor:not-allowed;opacity:.55}
.reminders-device-footnote{display:flex;align-items:flex-start;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid #edf0f3;color:#788493}
.reminders-device-footnote>span{color:#6f8fbd}
.reminders-device-footnote p{margin:0;font-size:.7rem;line-height:1.8}
.reminders-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px;padding:12px 14px;border:1px solid #e9edf2;border-radius:14px;background:rgba(255,255,255,.65)}
.reminders-shortcuts>span{margin-left:3px;color:var(--text-muted);font-size:.72rem}
.reminders-shortcuts a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:9px;background:#f0f4fa;color:#39557d;font-size:.72rem;text-decoration:none}
.reminders-shortcuts a:hover{background:#e5edf9}
.reminders-error{margin-top:12px;padding:11px 13px;border-radius:11px;background:#fff0ef;color:#b42318;font-size:.8rem}
.reminders-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:180px;color:var(--text-muted);font-size:.85rem}
.reminders-load-error{display:flex;align-items:center;flex-direction:column;gap:8px;margin:24px auto;padding:26px 18px;border:1px dashed #d9dee7;border-radius:16px;background:#fff;text-align:center}
.reminders-load-error strong{font-size:.85rem}.reminders-load-error p{margin:0;color:var(--text-muted);font-size:.76rem}.reminders-load-error .btn{margin-top:5px}
@media(min-width:760px){.reminders-page{padding:32px 24px 56px}.reminders-heading{margin-bottom:24px}.reminders-heading h1{font-size:1.5rem}.reminders-card-grid{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:18px}.reminders-card{padding:23px}.reminders-device-actions{grid-template-columns:1fr}.reminders-shortcuts{margin-top:18px}}
