[hidden]{display:none!important}
.settings-preference-row{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:22px;min-height:84px;padding:21px 18px;font-weight:500}
.settings-preference-row::after{content:"";position:absolute;left:50%;bottom:0;width:82%;height:1px;transform:translateX(-50%);background:color-mix(in srgb,CanvasText 11%,transparent)}
.settings-preference-row:last-of-type::after{display:none}
.settings-preference-row>strong,.settings-preference-row>span,.language-label{width:180px;flex:0 0 180px;text-align:left}
.settings-preference-row>strong,.language-label{font-weight:620;letter-spacing:.01em}
.salutation-row input{width:190px;max-width:42vw;padding:8px 11px;border-color:color-mix(in srgb,CanvasText 22%,transparent);border-radius:10px;background:color-mix(in srgb,CanvasText 3%,Canvas);box-shadow:inset 0 1px 2px #00000008}
.watch-settings{position:relative;width:100%;margin:0;padding:21px 18px 25px}
.watch-settings::after{content:"";position:absolute;left:50%;bottom:0;width:82%;height:1px;transform:translateX(-50%);background:color-mix(in srgb,CanvasText 11%,transparent)}
.watch-settings h3{margin:0;font-size:1rem;font-weight:620;letter-spacing:.01em;text-align:left}
.watch-option-row{display:grid;grid-template-columns:180px auto auto;align-items:center;justify-content:start;gap:22px;margin:0;padding:15px 0;border:0}
.watch-option-row>span{padding-left:12px;font-weight:500;text-align:left}
.watch-option-row label{display:flex;align-items:center;gap:7px;font-weight:500}
.watch-option-row input{width:18px;height:18px;margin:0;accent-color:#087f83}
.watch-settings>small{display:block;margin-top:12px;color:GrayText;line-height:1.45;text-align:left}
.remember-login{cursor:pointer}
.remember-login span{display:grid;gap:2px}
.remember-login strong{font-weight:620}
.remember-login small{color:GrayText;font-weight:400}
.remember-login input{appearance:none;position:relative;width:44px;height:24px;padding:0;border:0;border-radius:999px;overflow:hidden;background:color-mix(in srgb,CanvasText 20%,Canvas);display:block;flex:0 0 44px;box-shadow:inset 0 0 0 1px color-mix(in srgb,CanvasText 7%,transparent)}
.remember-login input::after{content:"";position:absolute;left:3px;top:3px;display:block;width:18px;height:18px;border-radius:50%;background:Canvas;box-shadow:0 1px 3px #0003;transition:transform .18s ease}
.remember-login input:checked{background:var(--accent)}
.remember-login input:checked::after{content:"";transform:translateX(20px)}
.remember-login input:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,Canvas);outline-offset:2px}
.sync-status.is-warning{border-color:#c9852b;color:#80500f;background:color-mix(in srgb,#fff1cf 75%,Canvas)}
.companion-settings .sync-status{margin:0;padding:11px 13px;font-size:.78rem}
.automatic-backup-row{cursor:default}
.automatic-backup-row>span:first-child{display:grid;gap:3px}
.automatic-backup-row>span:first-child strong{font-weight:620}
.automatic-backup-row small{color:GrayText;font-size:.72rem;font-weight:400}
.automatic-backup-controls{display:flex!important;align-items:center;gap:10px;width:auto!important;flex:1 1 auto!important}
.automatic-backup-controls select{width:158px;min-width:0;padding:8px 28px 8px 10px;border-color:color-mix(in srgb,CanvasText 22%,transparent);border-radius:10px;background-color:Canvas;font-size:.78rem}
.automatic-backup-controls select:disabled{opacity:.5}
.automatic-backup-controls input{appearance:none;position:relative;width:44px;height:24px;padding:0;border:0;border-radius:999px;overflow:hidden;background:color-mix(in srgb,CanvasText 20%,Canvas);display:block;flex:0 0 44px;box-shadow:inset 0 0 0 1px color-mix(in srgb,CanvasText 7%,transparent)}
.automatic-backup-controls input::after{content:"";position:absolute;left:3px;top:3px;display:block;width:18px;height:18px;border-radius:50%;background:Canvas;box-shadow:0 1px 3px #0003;transition:transform .18s ease}
.automatic-backup-controls input:checked{background:var(--accent)}
.automatic-backup-controls input:checked::after{transform:translateX(20px)}
.automatic-backup-controls input:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,Canvas);outline-offset:2px}
.preference-help{display:block;margin:-17px 18px 16px 220px;color:GrayText;font-size:.76rem}.view#cloud{display:flex;flex-direction:column}.view#cloud #companion-settings{order:1}.view#cloud #companion-new-settings{order:2}.view#cloud .legal-links{order:3}.view#cloud .app-version{order:4}
.settings-heading{margin-bottom:10px}.language-row{margin-top:4px}
.language-label{font-weight:650}
.language-switch{display:flex;gap:3px;width:180px;padding:3px;border:1px solid color-mix(in srgb,CanvasText 12%,transparent);border-radius:999px;background:color-mix(in srgb,CanvasText 6%,Canvas)}
.language-switch button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:36px;flex:1;padding:6px 10px;border-radius:999px;background:transparent;color:CanvasText;font-size:.82rem;font-weight:620}
.language-switch button.active{background:var(--accent);color:white;box-shadow:0 2px 7px color-mix(in srgb,var(--accent) 25%,transparent)}
.language-switch button.active::before{content:"✓";font-size:.76rem;font-weight:850}
.notification-setting-row button{border:1px solid color-mix(in srgb,CanvasText 15%,transparent);border-radius:999px;background:Canvas;color:var(--accent)}.companion-detail-actions{display:grid;gap:8px;justify-items:end}.companion-detail-actions>button{padding:9px 12px}.companion-message-dialog textarea{width:100%;resize:vertical;padding:11px;border:1px solid GrayText;border-radius:9px;background:Canvas;color:CanvasText;font:inherit}
#login-form{margin-top:12px}
.auth-gate{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow:auto;background:radial-gradient(circle at 8% 5%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 42%),linear-gradient(165deg,color-mix(in srgb,Canvas 93%,var(--accent) 7%),Canvas 68%)}
.auth-gate[hidden]{display:none!important}.auth-gate-card{width:min(480px,100%);padding:30px;border:1px solid color-mix(in srgb,white 70%,var(--accent) 16%);border-radius:32px;background:color-mix(in srgb,Canvas 80%,transparent);box-shadow:0 28px 80px color-mix(in srgb,CanvasText 18%,transparent),inset 0 1px 0 color-mix(in srgb,white 90%,transparent);backdrop-filter:blur(30px) saturate(170%)}.auth-gate-card>img{display:block;width:72px;height:72px;margin:0 auto 20px;border-radius:22px;box-shadow:0 14px 30px color-mix(in srgb,var(--accent) 24%,transparent)}.auth-gate-card>h1{text-align:center;font-size:clamp(1.65rem,7vw,2.2rem);letter-spacing:-.045em}.auth-gate-card>.stats-eyebrow{text-align:center}.auth-gate-card>p:not(.stats-eyebrow),.auth-gate-card>small{display:block;color:GrayText;line-height:1.5;text-align:center}.auth-gate-card>p:not(.stats-eyebrow){margin-top:10px}.auth-gate-card>small{margin-top:16px;font-size:.74rem}.auth-gate-card #login-form{padding:18px 0 0}.auth-gate-card #auth-status{margin:18px 0 0;text-align:center}.auth-gate-card #auth-status:empty{display:none}.password-input{position:relative;display:block}.password-input input{padding-right:48px}.password-visibility{position:absolute;top:50%;right:5px;display:grid;place-items:center;width:38px;height:38px;min-height:0;padding:0;transform:translateY(-50%);border:0;border-radius:50%;background:transparent;color:var(--accent);box-shadow:none}.password-visibility:hover{background:color-mix(in srgb,var(--accent) 9%,transparent)}.password-visibility:focus-visible{outline:0}.password-visibility:focus-visible svg{stroke-width:2.5}.password-visibility svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-visibility .eye-open{display:none}.password-visibility[aria-pressed="true"] .eye-open{display:inline}.password-visibility[aria-pressed="true"] .eye-closed{display:none}.connection-banner{position:fixed;z-index:110;top:max(10px,env(safe-area-inset-top));left:50%;width:min(620px,calc(100% - 28px));padding:10px 14px;transform:translateX(-50%);border:1px solid color-mix(in srgb,#b77912 24%,transparent);border-radius:999px;background:color-mix(in srgb,#fff3d3 94%,transparent);color:#704600;font-size:.78rem;font-weight:700;text-align:center;box-shadow:0 10px 28px #0002}.connection-banner[hidden]{display:none!important}body.auth-required>header,body.auth-required>main,body.auth-required>#incoming-message-alert{display:none!important}
.manual-backup-row{display:grid;grid-template-columns:minmax(130px,180px) minmax(0,1fr);align-items:center;justify-content:stretch}
.manual-backup-actions{display:flex;flex-wrap:wrap;gap:8px;width:auto!important;min-width:0;flex:1 1 auto!important}
.manual-backup-row button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:96px;min-height:40px;padding:8px 14px;border:1px solid color-mix(in srgb,CanvasText 17%,transparent);border-radius:999px;background:Canvas;color:CanvasText;font-size:.78rem;font-weight:650}
.manual-backup-row button::before{content:"↓";display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:color-mix(in srgb,var(--accent) 16%,Canvas);color:var(--accent);font-size:1.15rem;font-weight:800;line-height:1}
.manual-backup-row .restore-backup::before{content:"↑"}
.manual-backup-row button:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 7%,Canvas)}
.account-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px}
.contact-profile-settings{position:relative;isolation:isolate;display:grid;gap:14px;margin:6px 0 20px;padding:24px 22px;border:1px solid color-mix(in srgb,white 72%,var(--accent) 16%);border-radius:28px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,Canvas 70%,white 30%),color-mix(in srgb,Canvas 72%,var(--accent) 8%));box-shadow:0 22px 55px color-mix(in srgb,CanvasText 13%,transparent),inset 0 1px 0 color-mix(in srgb,white 90%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--accent) 12%,transparent);-webkit-backdrop-filter:blur(28px) saturate(175%);backdrop-filter:blur(28px) saturate(175%)}
.contact-profile-settings::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 7% -6%,color-mix(in srgb,white 72%,transparent),transparent 40%),linear-gradient(118deg,color-mix(in srgb,white 24%,transparent),transparent 48%)}
.contact-profile-settings::after{content:"";position:absolute;z-index:-1;right:-75px;bottom:-100px;width:245px;height:245px;border-radius:50%;pointer-events:none;background:color-mix(in srgb,var(--accent) 16%,transparent);filter:blur(38px)}
.contact-profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.contact-profile-heading h3{margin:0;font-weight:600;letter-spacing:0}.contact-profile-heading>span{padding:6px 11px;border:1px solid color-mix(in srgb,white 62%,transparent);border-radius:999px;background:color-mix(in srgb,white 38%,Canvas);color:GrayText;font-size:.7rem;font-weight:600;box-shadow:inset 0 1px 0 color-mix(in srgb,white 80%,transparent),0 5px 14px color-mix(in srgb,CanvasText 7%,transparent)}.contact-profile-settings>p{margin:0;color:GrayText;font-size:.8rem;line-height:1.6}.contact-profile-settings form{display:grid;grid-template-columns:150px 1fr 1fr;gap:14px 12px;padding:0}.contact-profile-settings form label{font-weight:500;line-height:1.45}.contact-profile-settings input{border-color:color-mix(in srgb,white 60%,CanvasText 10%);background:color-mix(in srgb,Canvas 68%,white 32%);font-weight:400;letter-spacing:.01em;box-shadow:inset 0 1px 0 color-mix(in srgb,white 82%,transparent),0 5px 16px color-mix(in srgb,CanvasText 5%,transparent)}.profile-photo-editor{grid-row:1/6;display:grid;align-content:start;justify-items:center;gap:8px}.profile-photo-preview{position:relative;width:132px;height:176px;overflow:visible;border:1px solid color-mix(in srgb,white 72%,var(--accent) 14%);border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,white 38%,Canvas),color-mix(in srgb,var(--accent) 13%,Canvas));box-shadow:inset 0 1px 0 color-mix(in srgb,white 88%,transparent),0 14px 28px color-mix(in srgb,CanvasText 12%,transparent)}.profile-photo-preview>img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.profile-photo-preview>span{display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;color:var(--accent);font-size:.78rem;font-weight:400}.profile-photo-editor>small{color:GrayText;font-size:.72rem;font-weight:400}.profile-photo-preview .photo-menu-toggle{top:6px;right:6px;width:27px;height:27px;font-size:14px;box-shadow:0 3px 10px #0002}.profile-photo-preview .photo-actions{right:7px}.contact-full-name,.contact-birth-date,.contact-street,.contact-profile-settings form>label:last-of-type{grid-column:2/4}.contact-location{grid-column:2/4;display:grid;grid-template-columns:110px 1fr;gap:10px}.contact-location label{min-width:0}.contact-profile-settings form>button[type="submit"]{grid-column:2/4;border-color:color-mix(in srgb,white 38%,var(--accent));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--accent) 22%,transparent),0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent)}.contact-profile-settings form>button[type="submit"]:disabled{border-color:color-mix(in srgb,CanvasText 10%,transparent);background:color-mix(in srgb,CanvasText 10%,Canvas);color:GrayText;box-shadow:none;cursor:default;opacity:1}.contact-profile-settings form>button[type="submit"].has-changes{background:var(--accent);color:white}.contact-profile-settings #contact-profile-status{grid-column:1/4}.companion-contact-card{display:grid;grid-template-columns:76px 1fr;gap:12px;margin:10px 0;padding:13px;border-radius:14px;background:color-mix(in srgb,var(--accent) 7%,Canvas)}.companion-contact-card img{grid-row:1/5;width:76px;height:101px;border-radius:12px;object-fit:cover}.companion-contact-card strong,.companion-contact-card>span,.companion-contact-card address,.companion-contact-card a{grid-column:2}.companion-contact-card>span{color:GrayText;font-size:.78rem}.companion-contact-card address{font-style:normal;color:GrayText;line-height:1.45}.companion-contact-card a{color:var(--accent);font-weight:650}.companion-person-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.companion-person-actions button{padding:8px 10px}
.companion-shared-medications{display:grid;gap:7px;padding:13px;border-radius:14px;background:color-mix(in srgb,var(--accent) 7%,Canvas)}.companion-shared-medications h4,.companion-shared-medications p{margin:0}.companion-shared-medications p{color:GrayText;font-size:.8rem}.companion-medication{padding:10px 11px;border-radius:11px;background:Canvas}.companion-medication small{display:block;margin-top:3px;color:GrayText;line-height:1.4}
.companion-statistics{display:grid;gap:16px;margin-top:6px;padding-top:16px;border-top:1px solid color-mix(in srgb,CanvasText 10%,transparent)}.companion-statistics>div>h4{margin:0}.companion-statistics .medication-kpis{margin:0}.companion-statistics .stock-panel{margin-top:0}
.companion-settings{position:relative;isolation:isolate;display:grid;gap:15px;margin:20px 0;padding:22px 20px;border:1px solid color-mix(in srgb,white 58%,var(--accent) 18%);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,Canvas 76%,white 24%),color-mix(in srgb,Canvas 66%,var(--accent) 9%));box-shadow:0 18px 44px color-mix(in srgb,CanvasText 14%,transparent),inset 0 1px 0 color-mix(in srgb,white 82%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--accent) 12%,transparent);-webkit-backdrop-filter:blur(24px) saturate(165%);backdrop-filter:blur(24px) saturate(165%)}
#companion-settings.has-active-connections{gap:7px}#companion-settings.has-active-connections .companion-overview:not(:empty){margin-top:2px}#companion-settings.has-active-connections .companion-contact-card:first-child{margin-top:0}
.companion-settings::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 0%,color-mix(in srgb,white 48%,transparent),transparent 42%),linear-gradient(115deg,color-mix(in srgb,white 14%,transparent),transparent 48%)}
.companion-settings::after{content:"";position:absolute;z-index:-1;right:-70px;bottom:-90px;width:210px;height:210px;border-radius:50%;pointer-events:none;background:color-mix(in srgb,var(--accent) 12%,transparent);filter:blur(34px)}
.companion-role-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px}.companion-role-choice>p{grid-column:1/-1;margin:4px 0 0}.companion-role-card{display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto;column-gap:13px;row-gap:6px;align-items:center;min-height:130px;padding:16px;text-align:left;border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);border-radius:16px;background:Canvas;color:CanvasText}.companion-role-card:hover{border-color:var(--accent);transform:translateY(-1px)}.companion-role-icon{grid-row:1/3;width:72px;height:72px;object-fit:contain}.companion-role-card strong,.companion-role-card span{grid-column:2}.companion-role-card span{align-self:start;color:GrayText;font-size:.78rem;font-weight:400;line-height:1.45}.companion-path-panel{padding-top:4px}.companion-path-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.companion-path-heading h4{margin:0}.companion-path-heading .text-button{width:auto;padding:5px 0}.companion-path-panel[hidden],.companion-role-choice[hidden]{display:none!important}
.companion-path-reset-bottom{display:flex;justify-content:center;margin-top:18px}
.companion-path-reset-bottom .text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-height:40px;padding:8px 16px;border:1px solid color-mix(in srgb,CanvasText 17%,transparent);border-radius:999px;background:Canvas;color:CanvasText;font-size:.78rem;font-weight:650;box-shadow:0 1px 3px #0000000d}
.companion-path-reset-bottom .text-button::before{content:"←";display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,Canvas);color:var(--accent);font-size:.95rem;font-weight:780}
.companion-path-reset-bottom .text-button:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 7%,Canvas)}
.companion-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.companion-heading h3,.companion-form h4{margin:0}.companion-heading>span{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,CanvasText 8%,Canvas);color:GrayText;font-size:.7rem;font-weight:700}.companion-intro,.companion-empty,.companion-status{color:GrayText;font-size:.8rem;line-height:1.5}.companion-permissions input{width:21px;height:21px;padding:0}.companion-actions{display:flex;gap:8px;flex-wrap:wrap}.companion-form{margin-top:14px;padding:15px;border:1px solid color-mix(in srgb,CanvasText 10%,transparent);border-radius:14px;background:Canvas}.companion-form h4{margin-bottom:4px}.companion-permissions{display:grid;gap:9px}.companion-permissions label{display:flex;align-items:center;gap:9px;font-size:.82rem}.invitation-result{display:grid;gap:6px;margin-top:14px;padding:17px;border-radius:14px;background:color-mix(in srgb,var(--accent) 12%,Canvas);text-align:center}.invitation-result span,.invitation-result small{color:GrayText;font-size:.76rem}.invitation-result strong{font-size:1.55rem;letter-spacing:.12em}.companion-overview{display:grid;gap:10px;margin-top:15px}.companion-group{display:grid;gap:7px}.companion-group h4{margin:0;font-size:.82rem}.companion-person{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:12px;background:Canvas}.companion-person small{display:block;margin-top:3px;color:GrayText}.companion-status:empty{display:none}.companion-status.is-error{color:#a43131}
.companion-form-help{margin-top:-6px;color:GrayText;font-size:.72rem;line-height:1.45}.permission-heading{display:block;margin-top:3px;font-size:.82rem}.companion-dialog-open{width:100%;margin-top:14px;border:1px solid color-mix(in srgb,CanvasText 14%,transparent)}.companion-dialog form{gap:14px}.companion-dialog h3{margin:0}.companion-dialog p{color:GrayText;font-size:.84rem;line-height:1.5}
body.simple-view nav .tab[data-view="companions"],body.simple-view nav .tab[data-view="plans"],body.simple-view nav .tab[data-view="stats"]{display:none}body.simple-view nav{grid-template-columns:repeat(2,1fr)}
.usage-settings{display:grid;gap:15px;margin:0 0 18px}.usage-settings>label{display:grid;grid-template-columns:minmax(150px,.7fr) 1fr;align-items:center;gap:14px}.usage-settings>label>span small{display:block;margin-top:4px;color:GrayText;font-size:.74rem;font-weight:400}.protected-view-setting input{justify-self:end;appearance:none;width:48px;height:28px;padding:3px;border:0;border-radius:999px;background:color-mix(in srgb,CanvasText 18%,Canvas)}.protected-view-setting input::after{content:"";display:block;width:22px;height:22px;border-radius:50%;background:white;box-shadow:0 2px 7px #0003;transition:.2s}.protected-view-setting input:checked{background:var(--accent)}.protected-view-setting input:checked::after{transform:translateX(20px)}#protected-code-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}#protected-code-row[hidden]{display:none}#protected-code-row input{max-width:180px;letter-spacing:.35em}
.protected-view-info{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border-radius:15px;background:Canvas}.protected-view-info span{display:grid;gap:4px}.protected-view-info small{color:GrayText;font-size:.74rem;font-weight:400;line-height:1.4}.protected-view-info>b{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,Canvas);color:var(--accent);font-size:.72rem}
.companion-main-tab[hidden]{display:none!important}body.has-companion-dashboard nav{grid-template-columns:repeat(5,1fr)}body.companion-only nav .tab[data-view="today"],body.companion-only nav .tab[data-view="plans"],body.companion-only nav .tab[data-view="stats"]{display:none}body.companion-only nav{grid-template-columns:repeat(2,1fr)}
.companion-dashboard-heading{align-items:center}.companion-dashboard-heading>span{color:GrayText;font-size:.78rem}.companion-dashboard-tools{display:grid;grid-template-columns:1fr minmax(150px,210px);gap:10px;margin-bottom:18px}.companion-dashboard-list{display:grid;gap:22px}.companion-dashboard-group{display:grid;gap:10px}.companion-dashboard-group h3{margin:0;font-size:.88rem;color:GrayText}.companion-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.few-companions .companion-card-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.companion-dashboard-card{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;min-height:112px;padding:15px;border:1px solid color-mix(in srgb,CanvasText 10%,transparent);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 82%,white 18%),color-mix(in srgb,Canvas 93%,var(--accent) 7%));color:CanvasText;text-align:left;box-shadow:0 10px 28px color-mix(in srgb,CanvasText 9%,transparent)}.companion-dashboard-card.attention{border-color:color-mix(in srgb,#c54c4c 35%,transparent)}.companion-dashboard-card.done{border-color:color-mix(in srgb,#278760 32%,transparent)}.companion-dashboard-card img,.companion-avatar{width:56px;height:70px;border-radius:16px;object-fit:cover}.companion-avatar{display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,Canvas);color:var(--accent);font-size:.65rem}.companion-card-copy{display:grid;gap:5px;min-width:0}.companion-card-copy strong{font-size:1rem}.companion-card-copy b{color:var(--accent);font-size:.78rem}.companion-dashboard-card.attention .companion-card-copy b{color:#b23e3e}.companion-card-copy small{overflow:hidden;color:GrayText;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.companion-card-arrow{font-size:1.8rem;color:GrayText}.companion-dashboard-empty{padding:28px;border-radius:18px;background:var(--panel);color:GrayText;text-align:center}
.companion-dashboard-card.done::after{content:none}.companion-completed-slot{display:grid;place-items:center}.companion-completed-mark{display:grid;width:58px;height:58px;place-items:center;border-radius:50%;background:color-mix(in srgb,#2b9a70 15%,Canvas);color:#21835f;font-size:2.1rem;font-weight:850;line-height:1}
#companions,.companion-dashboard-list,.companion-dashboard-group,.companion-card-grid{min-width:0;width:100%}.companion-card-grid,.few-companions .companion-card-grid{grid-template-columns:minmax(0,1fr)}.companion-dashboard-card{width:100%;max-width:100%;min-width:0;grid-template-columns:68px minmax(0,1fr) auto 22px;min-height:138px;padding:18px 20px;overflow:hidden}.companion-dashboard-card img,.companion-avatar{width:68px;height:88px}.companion-card-copy{gap:7px}.companion-card-copy strong{font-size:1.08rem}.companion-card-copy b{font-size:.84rem}.companion-card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin-top:3px}.companion-card-facts small{display:flex;align-items:flex-start;gap:7px;min-width:0;overflow:visible;white-space:normal;text-overflow:clip;line-height:1.4}.companion-card-facts i{flex:0 0 auto;color:var(--accent);font-style:normal}.companion-card-arrow{justify-self:end}
.companion-person-detail{display:grid;gap:16px}.companion-detail-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.companion-detail-heading h2{margin:0}.companion-detail-heading label{font-size:.72rem}.companion-detail-heading select{min-width:140px}.companion-detail-tabs{display:flex;gap:6px;overflow:auto;padding:4px;border-radius:14px;background:var(--panel)}.companion-detail-tabs button{flex:1;min-width:max-content;background:transparent;color:CanvasText}.companion-detail-tabs button.active{background:Canvas;box-shadow:0 2px 8px #0002}.companion-detail-content{display:grid;gap:12px}.companion-detail-today{padding:24px;border-radius:22px;background:color-mix(in srgb,var(--accent) 8%,Canvas)}.companion-detail-today.attention{background:color-mix(in srgb,#c54c4c 10%,Canvas)}.companion-detail-today h3,.companion-detail-today p{margin:0}.companion-detail-today p{margin-top:7px;color:GrayText}.companion-today-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.companion-today-numbers span{display:grid;gap:3px;padding:12px;border-radius:14px;background:Canvas;color:GrayText;font-size:.72rem}.companion-today-numbers b{color:CanvasText;font-size:1.4rem}.protected-view-exit,.protected-help{position:fixed;z-index:20;right:max(16px,env(safe-area-inset-right));border:1px solid color-mix(in srgb,white 34%,var(--accent));border-radius:999px;box-shadow:0 12px 30px #0003}.protected-view-exit{bottom:max(16px,env(safe-area-inset-bottom))}.protected-help{bottom:max(72px,calc(env(safe-area-inset-bottom) + 72px));background:Canvas;color:var(--accent)}body.protected-view nav .tab:not([data-view="today"]){display:none!important}body.protected-view nav{grid-template-columns:1fr}body.protected-view #today #reset-today,body.protected-view #today [data-action="undo"]{display:none!important}body.protected-view .hero{font-size:1.08rem}body.protected-view .hero>button{min-height:58px;font-size:1.05rem}
.companion-detail-person{display:flex;align-items:center;gap:12px;min-width:0}.companion-detail-person>img,.companion-detail-person>.companion-avatar{width:62px;height:62px;border-radius:18px;object-fit:cover}.companion-detail-person>div{min-width:0}.companion-name-edit{display:flex;align-items:center;gap:7px;margin-top:5px;color:GrayText}.companion-name-edit input{max-width:180px;padding:6px 9px;font-size:.78rem}.companion-today-list{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}.companion-today-list li{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:Canvas}.companion-today-list time{color:GrayText;font-size:.8rem}.companion-today-list span{display:grid;gap:2px}.companion-today-list small{color:GrayText}.companion-today-list li>b{font-size:.78rem;color:var(--accent)}.companion-today-list li.skipped>b{color:#b23e3e}.companion-rules{display:grid;gap:14px;padding:22px;border-radius:22px;background:var(--panel)}.companion-rules h3{margin:0}.companion-rules ul{display:grid;gap:7px;margin:0;padding-left:22px}.companion-protected-switch{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;padding-top:16px;border-top:1px solid color-mix(in srgb,CanvasText 12%,transparent)}.companion-protected-switch span{display:grid;gap:4px}.companion-protected-switch small{color:GrayText;font-weight:400}.companion-protected-switch input{appearance:none;width:48px;height:28px;padding:3px;border:0;border-radius:999px;background:color-mix(in srgb,CanvasText 18%,Canvas)}.companion-protected-switch input::after{content:"";display:block;width:22px;height:22px;border-radius:50%;background:white;box-shadow:0 2px 7px #0003;transition:.2s}.companion-protected-switch input:checked{background:var(--accent)}.companion-protected-switch input:checked::after{transform:translateX(20px)}
.companion-info{display:grid;gap:10px;padding:22px;border-radius:22px;background:var(--panel)}.companion-info label{font-weight:700}.companion-info textarea{width:100%;min-height:170px;resize:vertical;background:Canvas}.companion-info small{color:GrayText;line-height:1.45}
.contact-profile-settings form>button[type="submit"]{box-shadow:inset 0 1px 0 color-mix(in srgb,white 36%,transparent),0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent)}
.account-actions button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:40px;padding:7px 6px;border:1px solid color-mix(in srgb,CanvasText 17%,transparent);border-radius:999px;background:Canvas;color:CanvasText;font-size:.78rem;font-weight:650;line-height:1;white-space:nowrap;box-shadow:0 1px 3px #0000000d;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.account-actions button:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 7%,Canvas)}
.account-actions button:active{transform:scale(.98)}
.account-actions button::before{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,Canvas);color:var(--accent);font-size:.88rem;font-weight:780}
#verify-email::before{content:"✓"}
#export-data::before{content:"↓"}
#logout{border-color:color-mix(in srgb,#b33b3b 28%,transparent);color:#a43131}
#logout::before{content:"↪";background:color-mix(in srgb,#b33b3b 10%,Canvas);color:#a43131}
#logout:hover{border-color:color-mix(in srgb,#b33b3b 55%,transparent);background:color-mix(in srgb,#b33b3b 6%,Canvas)}
#delete-account{border-color:color-mix(in srgb,#b33b3b 28%,transparent);color:#a43131}
#delete-account::before{content:"×";background:color-mix(in srgb,#b33b3b 10%,Canvas);color:#a43131}
#delete-account:hover{border-color:color-mix(in srgb,#b33b3b 55%,transparent);background:color-mix(in srgb,#b33b3b 6%,Canvas)}
.text-button{padding:4px 0;background:transparent;color:var(--accent);text-align:left;font-weight:600}
.legal-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid color-mix(in srgb,CanvasText 16%,transparent)}
.legal-links a.text-button{font:inherit;font-weight:600;text-decoration:none}
.app-version{width:100%;margin-top:16px;color:GrayText;font-size:.84rem;text-align:center}
.legal-dialog{max-width:600px}
.legal-content{padding:22px;display:grid;gap:12px;max-height:min(78vh,760px);overflow:auto}
.legal-content h2,.legal-content h3{margin:0}
.legal-content h3{font-size:1rem;margin-top:5px}
.legal-content p{line-height:1.45}
.beta-note{padding:12px;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,Canvas)}
.legal-warning{padding:12px;border-radius:10px;background:color-mix(in srgb,#b8860b 16%,Canvas)}
.flexible-time{display:flex;grid-column:1/-1;align-items:center;gap:8px;margin-top:-6px;font-size:.9rem;font-weight:550;cursor:pointer}
.flexible-time input{appearance:none;width:20px;height:20px;flex:0 0 20px;padding:0;border:2px solid var(--accent);border-radius:6px}
.flexible-time input:checked{display:grid;place-items:center;background:var(--accent)}
.flexible-time input:checked::after{content:"✓";color:white;font-size:14px;font-weight:800}
.time-disabled{opacity:.48}
.time-fields{align-items:end}
input,select{accent-color:var(--accent)}
input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}
button:focus-visible,a:focus-visible,[role="button"]:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
#cloud select{appearance:none;min-height:42px;padding:9px 38px 9px 13px;border:1px solid color-mix(in srgb,CanvasText 14%,transparent);border-radius:13px;background-color:color-mix(in srgb,Canvas 97%,CanvasText 3%);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='m1 1 6 6 6-6' fill='none' stroke='%2379797d' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:14px 8px;color:CanvasText;font:inherit;font-size:.86rem;font-weight:500;box-shadow:inset 0 1px 0 color-mix(in srgb,white 60%,transparent),0 1px 2px color-mix(in srgb,CanvasText 5%,transparent);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
#cloud select:hover:not(:disabled){border-color:color-mix(in srgb,CanvasText 25%,transparent);background-color:color-mix(in srgb,Canvas 94%,CanvasText 6%)}
#cloud select:focus-visible{outline:0;border-color:color-mix(in srgb,var(--accent) 70%,Canvas);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px 0 color-mix(in srgb,white 60%,transparent)}
#cloud select:disabled{opacity:.48;cursor:not-allowed}
fieldset{margin:0;padding:12px;border:1px solid color-mix(in srgb,CanvasText 20%,transparent);border-radius:12px}
.editor-check-row{display:flex;align-items:center;gap:9px;line-height:1.35}.editor-check-row input{width:20px;height:20px;flex:0 0 20px;margin:0;padding:0}.editor-check-row span{min-width:0}
.refill-reminder-fields{display:grid;gap:12px;padding:16px;border-color:color-mix(in srgb,white 64%,var(--accent) 18%);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 82%,white 18%),color-mix(in srgb,Canvas 88%,var(--accent) 6%));box-shadow:inset 0 1px 0 color-mix(in srgb,white 78%,transparent),0 12px 28px color-mix(in srgb,CanvasText 7%,transparent)}.reminder-inline-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,132px);align-items:center;gap:10px;padding:3px 0}.reminder-inline-row>label{min-width:0;font-weight:500}.reminder-inline-row>label:not(.editor-check-row){gap:4px;color:GrayText;font-size:.76rem;font-weight:450}.reminder-inline-row>label:not(.editor-check-row) input{min-width:0;padding:8px 9px;color:CanvasText;font-size:.9rem}.reminder-inline-row .editor-check-row{align-self:center}.reminder-inline-row .editor-check-row input{accent-color:var(--accent)}.refill-reminder-fields small{margin:2px 4px 0;color:GrayText;font-weight:400;line-height:1.45}
#editor{border:1px solid color-mix(in srgb,white 70%,var(--accent) 13%);border-radius:27px;background:linear-gradient(155deg,color-mix(in srgb,Canvas 90%,white 10%),color-mix(in srgb,Canvas 92%,var(--accent) 5%));box-shadow:0 28px 80px color-mix(in srgb,CanvasText 22%,transparent),inset 0 1px 0 color-mix(in srgb,white 88%,transparent);backdrop-filter:blur(28px) saturate(145%)}#editor label{font-weight:520}#editor legend{font-weight:600}#editor h2{font-weight:650;letter-spacing:-.025em}
legend{padding:0 6px;font-weight:650}
.weekday-all{margin:2px 0 10px;padding:7px 12px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:999px;color:var(--accent);font-size:.82rem}
.weekday-all:hover{background:color-mix(in srgb,var(--accent) 9%,Canvas)}
#editor button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.weekday-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:5px}
.weekday-grid label{display:grid;place-items:center;gap:5px;font-size:.8rem;font-weight:650}
.weekday-grid input,.check input{width:20px;height:20px;padding:0}
.check{display:flex;align-items:center;gap:9px}
.stock-fields input:disabled{opacity:.45}
.stock-warning{margin:8px 0;padding:11px 13px;border-radius:12px;background:color-mix(in srgb,#b8860b 15%,Canvas);color:CanvasText}
#reset-today{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 15px;border:1px solid color-mix(in srgb,#b33b3b 28%,transparent);border-radius:999px;background:color-mix(in srgb,#b33b3b 5%,Canvas);color:#a43131;font-size:.82rem;font-weight:650}
#reset-today::before{content:"↺";font-size:1rem;line-height:1}
.companion-more-help{width:100%;margin-top:13px}#companion-feedback-dialog .setup-symbol{margin-inline:auto}.connection-action[hidden]{display:none}
.pending-invitation-card .companion-person{border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--accent) 7%,Canvas)}.pending-invitation-card .companion-person small+small{margin-top:7px}
.managed-companion{margin-left:18px;border-left:3px solid color-mix(in srgb,var(--accent) 35%,transparent)}
@media(max-width:600px){.settings-preference-row{gap:12px;min-height:78px;padding:19px 10px}.settings-preference-row::after{width:76%}.settings-preference-row>strong,.settings-preference-row>span,.language-label{width:138px;flex-basis:138px}.preference-help{margin:-15px 10px 14px 160px}.salutation-row input{width:165px;max-width:48vw}.watch-settings{padding:19px 10px 23px}.watch-settings::after{width:76%}.watch-option-row{grid-template-columns:138px auto auto;gap:12px}.watch-option-row>span{padding-left:8px}.language-switch{flex:0 1 auto}.language-switch button{min-width:68px;padding-inline:8px;font-size:.8rem}.automatic-backup-controls{justify-content:flex-end}.automatic-backup-controls select{min-width:0;width:112px;padding-left:7px;font-size:.72rem}.account-actions{gap:4px;padding:6px}.account-actions button{gap:3px;padding:7px 2px;font-size:.68rem}.account-actions button::before{width:18px;height:18px;flex-basis:18px;font-size:.75rem}.weekday-grid{grid-template-columns:repeat(4,1fr)}.contact-profile-settings{padding:17px 12px}.contact-profile-settings form{grid-template-columns:1fr 1fr}.profile-photo-editor{grid-column:1/3;grid-row:auto}.contact-full-name,.contact-birth-date,.contact-street,.contact-profile-settings form>label:last-of-type,.contact-location,.contact-profile-settings form>button[type="submit"]{grid-column:1/3}.contact-profile-settings #contact-profile-status{grid-column:1/3}.companion-contact-card{grid-template-columns:64px 1fr}.companion-contact-card img{width:64px;height:85px}.companion-settings{padding:17px 12px}.companion-heading,.companion-person,.companion-path-heading{align-items:flex-start;flex-direction:column}.companion-person-actions{justify-content:flex-start}.companion-role-choice{grid-template-columns:1fr}.companion-role-choice>p{grid-column:auto}.companion-role-card{min-height:0}.companion-actions button{width:100%}}
@media(max-width:430px){.refill-reminder-fields{gap:10px;padding:13px 12px}.reminder-inline-row{grid-template-columns:minmax(0,1fr) 94px;gap:7px}.reminder-inline-row>label:not(.editor-check-row){font-size:.7rem}.reminder-inline-row>label:not(.editor-check-row) input{padding:7px 8px;font-size:16px}.reminder-inline-row .editor-check-row{gap:7px;font-size:.88rem}.reminder-inline-row .editor-check-row input{width:18px;height:18px;flex-basis:18px}}
@media(max-width:350px){.refill-reminder-fields{padding-inline:8px}.reminder-inline-row{grid-template-columns:minmax(0,1fr) 82px;gap:6px}.reminder-inline-row .editor-check-row{gap:6px;font-size:.78rem}.reminder-inline-row .editor-check-row input{width:17px;height:17px;flex-basis:17px}.reminder-inline-row>label:not(.editor-check-row) input{padding-inline:6px}}
@media(max-width:600px){.automatic-backup-controls select{width:138px;font-size:.7rem}}

.retention-row::after{display:none}
#retention-help{position:relative;margin-bottom:0;padding-bottom:18px}
#retention-help::after{content:"";position:absolute;left:50%;bottom:0;width:82%;height:1px;transform:translateX(-50%);background:color-mix(in srgb,CanvasText 11%,transparent)}

dialog{isolation:isolate;overflow:hidden;border:1px solid color-mix(in srgb,white 72%,var(--accent) 15%);border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 68%,white 32%),color-mix(in srgb,Canvas 73%,var(--accent) 8%));box-shadow:0 30px 90px color-mix(in srgb,#071b1b 34%,transparent),inset 0 1px 0 color-mix(in srgb,white 92%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--accent) 13%,transparent);-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%)}
dialog::backdrop{background:color-mix(in srgb,#071b1b 48%,transparent);-webkit-backdrop-filter:blur(12px) saturate(125%);backdrop-filter:blur(12px) saturate(125%)}
dialog form,dialog .dialog-content,dialog .photo-crop-content{position:relative;z-index:1;background:transparent}
dialog form::before,dialog .dialog-content::before,dialog .photo-crop-content::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 8% -8%,color-mix(in srgb,white 65%,transparent),transparent 38%),linear-gradient(118deg,color-mix(in srgb,white 18%,transparent),transparent 48%)}
dialog input,dialog select,dialog textarea{border-color:color-mix(in srgb,white 58%,CanvasText 12%);background:color-mix(in srgb,Canvas 72%,white 28%);box-shadow:inset 0 1px 0 color-mix(in srgb,white 82%,transparent),0 6px 18px color-mix(in srgb,CanvasText 6%,transparent)}
dialog .dialog-actions button{border-radius:999px;box-shadow:inset 0 1px 0 color-mix(in srgb,white 28%,transparent),0 8px 22px color-mix(in srgb,CanvasText 10%,transparent)}
@media(max-width:600px){#retention-help::after{width:76%}}
@media(max-width:600px){body.has-companion-dashboard:not(.companion-only) nav{grid-template-columns:repeat(5,minmax(0,1fr))}body.has-companion-dashboard:not(.companion-only) nav .tab{padding-inline:1px;font-size:clamp(.59rem,2.45vw,.7rem);letter-spacing:-.025em}.usage-settings>label{grid-template-columns:1fr}.protected-view-setting{grid-template-columns:1fr auto!important}.companion-dashboard-tools,.companion-card-grid,.few-companions .companion-card-grid{grid-template-columns:1fr}.companion-detail-heading{grid-template-columns:1fr}.companion-detail-heading>button{justify-self:start}.companion-detail-heading select{width:100%}.companion-dashboard-card{grid-template-columns:54px minmax(0,1fr) auto 18px;min-height:124px;padding:15px 14px}.companion-dashboard-card img,.companion-avatar{width:54px;height:70px}.companion-card-facts{grid-template-columns:1fr}.companion-card-copy strong{font-size:1rem}.companion-completed-mark{width:52px;height:52px;font-size:1.9rem}}

/* Einheitliche Einstellungszeile für die Nutzungsart. */
.usage-settings{gap:0;margin-bottom:18px}.usage-settings>.usage-mode-row{display:flex;grid-template-columns:none;gap:22px;margin:0}.usage-mode-row select{width:min(260px,52vw)}.language-row::after{display:none}

/* Personenkarte im ruhigen Apple-Liquid-Stil. */
.companion-person-detail{position:relative;isolation:isolate;padding:24px;border:1px solid color-mix(in srgb,white 64%,var(--accent) 12%);border-radius:30px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,Canvas 76%,white 24%),color-mix(in srgb,Canvas 76%,var(--accent) 7%));box-shadow:0 24px 60px color-mix(in srgb,CanvasText 15%,transparent),inset 0 1px 0 color-mix(in srgb,white 88%,transparent);-webkit-backdrop-filter:blur(30px) saturate(170%);backdrop-filter:blur(30px) saturate(170%)}
.companion-person-detail::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 8% -8%,color-mix(in srgb,white 68%,transparent),transparent 38%),radial-gradient(circle at 95% 110%,color-mix(in srgb,var(--accent) 17%,transparent),transparent 42%)}
.companion-detail-today.done{display:block;width:auto;height:auto;border-radius:22px;color:CanvasText;font-size:initial}.companion-detail-today.done::after{content:none}
.companion-detail-tabs{gap:5px;padding:5px;border:1px solid color-mix(in srgb,white 56%,CanvasText 8%);border-radius:18px;background:color-mix(in srgb,Canvas 66%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,white 72%,transparent);-webkit-backdrop-filter:blur(18px) saturate(155%);backdrop-filter:blur(18px) saturate(155%)}
.companion-detail-tabs button{border-radius:14px}.companion-detail-tabs button.active{background:color-mix(in srgb,Canvas 88%,white 12%);color:var(--accent);box-shadow:0 4px 14px color-mix(in srgb,CanvasText 10%,transparent),inset 0 1px 0 color-mix(in srgb,white 80%,transparent)}
.companion-detail-today,.companion-rules,.companion-info,.companion-contact-card{border:1px solid color-mix(in srgb,white 52%,CanvasText 7%);background:color-mix(in srgb,Canvas 78%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,white 62%,transparent);-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%)}
.companion-contact-detail{display:grid;gap:14px}.companion-contact-detail>.companion-contact-card{margin:0}.companion-contact-detail>button{justify-self:end;min-width:150px;border-radius:999px;box-shadow:inset 0 1px 0 color-mix(in srgb,white 30%,transparent),0 10px 24px color-mix(in srgb,var(--accent) 20%,transparent)}
@media(max-width:600px){.usage-settings>.usage-mode-row{display:flex;gap:12px}.usage-mode-row select{width:min(220px,52vw)}.companion-person-detail{padding:17px 13px;border-radius:26px}.companion-contact-detail>button{width:100%;justify-self:stretch}}

/* Bei kombinierter Nutzung bleibt Begleitungen der letzte Navigationspunkt. */
body.usage-both nav .companion-main-tab{order:10}

/* Gruppenwahl im Kontakt-Tab und Gruppenanzeige in der Kartenüberschrift. */
.companion-contact-actions{display:flex;align-items:end;justify-content:space-between;gap:14px}
.companion-group-select{display:flex;align-items:center;gap:10px;min-width:0;padding:5px 6px 5px 12px;border:1px solid color-mix(in srgb,white 64%,CanvasText 10%);border-radius:999px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 72%,white 28%),color-mix(in srgb,Canvas 78%,var(--accent) 5%));box-shadow:inset 0 1px 0 color-mix(in srgb,white 88%,transparent),0 8px 22px color-mix(in srgb,CanvasText 7%,transparent);color:GrayText;font-size:.76rem;font-weight:650;backdrop-filter:blur(20px) saturate(160%)}.companion-group-select span{white-space:nowrap}.companion-group-select select{width:auto;min-width:132px;padding:7px 30px 7px 12px;border:0;border-radius:999px;appearance:none;-webkit-appearance:none;background-color:color-mix(in srgb,Canvas 76%,white 24%);background-image:linear-gradient(45deg,transparent 50%,color-mix(in srgb,var(--accent) 72%,CanvasText) 50%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 72%,CanvasText) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;box-shadow:inset 0 1px 0 color-mix(in srgb,white 90%,transparent);color:CanvasText;font:inherit;font-weight:650;cursor:pointer}.companion-group-select select:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 65%,transparent);outline-offset:2px}
.companion-contact-actions>button{min-width:150px;border-radius:999px;box-shadow:inset 0 1px 0 color-mix(in srgb,white 30%,transparent),0 10px 24px color-mix(in srgb,var(--accent) 20%,transparent)}
.companion-group-badge{justify-self:end;padding:7px 12px;border:1px solid color-mix(in srgb,white 58%,var(--accent) 14%);border-radius:999px;background:color-mix(in srgb,Canvas 72%,white 28%);color:var(--accent);font-size:.78rem;font-weight:750;box-shadow:inset 0 1px 0 color-mix(in srgb,white 84%,transparent),0 6px 18px color-mix(in srgb,CanvasText 7%,transparent)}

/* Medikamenten-Symbol in den freigegebenen Medikamentenlisten. */
.companion-medication{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px}
.companion-medication .medication-thumbnail{width:42px;height:42px;flex-basis:42px;border-radius:11px;font-size:20px}
.companion-medication>span{min-width:0}
@media(max-width:600px){.companion-contact-actions{align-items:stretch;flex-direction:column}.companion-group-select,.companion-group-select select,.companion-contact-actions>button{width:100%}.companion-group-badge{justify-self:start}}

/* Mitteilungen als Apple-ähnlicher Ein/Aus-Schalter. */
.notification-switch{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:GrayText;font-size:.8rem;font-weight:650}
.notification-switch input{appearance:none;position:relative;width:50px;height:30px;margin:0;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,CanvasText 18%,Canvas);box-shadow:inset 0 1px 3px color-mix(in srgb,CanvasText 14%,transparent);cursor:pointer;transition:background .2s ease}
.notification-switch input::after{content:"";position:absolute;left:3px;top:3px;display:block;width:24px;height:24px;border-radius:50%;background:white;box-shadow:0 2px 7px #0003;transition:transform .2s ease}
.notification-switch input:checked{background:var(--accent)}.notification-switch input:checked::after{transform:translateX(20px)}
.notification-switch input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:3px}

/* Bestätigung einer neuen Verbindung im Apple-Liquid-Stil. */
.liquid-success-dialog{width:min(390px,calc(100vw - 28px));padding:0;border-color:color-mix(in srgb,white 78%,var(--accent) 16%);background:linear-gradient(145deg,color-mix(in srgb,Canvas 62%,white 38%),color-mix(in srgb,Canvas 70%,var(--accent) 12%));box-shadow:0 32px 90px color-mix(in srgb,#061f20 38%,transparent),inset 0 1px 0 color-mix(in srgb,white 95%,transparent)}
.liquid-success-dialog form{display:grid;justify-items:center;gap:14px;padding:32px 28px 24px;text-align:center}
.liquid-success-dialog form::after{content:"";position:absolute;z-index:-1;right:-65px;bottom:-90px;width:220px;height:220px;border-radius:50%;background:color-mix(in srgb,var(--accent) 22%,transparent);filter:blur(38px)}
.liquid-success-dialog .setup-symbol{display:grid;place-items:center;width:68px;height:68px;margin:0;border:1px solid color-mix(in srgb,white 75%,var(--accent) 18%);border-radius:23px;background:linear-gradient(145deg,color-mix(in srgb,white 70%,var(--accent) 30%),color-mix(in srgb,var(--accent) 82%,white 18%));color:white;font-size:2rem;box-shadow:inset 0 1px 0 #ffffffcc,0 16px 32px color-mix(in srgb,var(--accent) 28%,transparent)}
.liquid-success-dialog h3{margin:2px 0 0;font-size:1.28rem}.liquid-success-dialog p{margin:0;color:GrayText;line-height:1.55}
.liquid-success-dialog .dialog-actions{width:100%;margin-top:4px}.liquid-success-dialog .dialog-actions button{width:100%;border-radius:999px}

/* Zusammengehörige Einstellungen der Programm-Oberfläche. */
.interface-settings{position:relative;isolation:isolate;display:grid;gap:0;margin:8px 0 18px;padding:18px 18px 8px;border:1px solid color-mix(in srgb,white 68%,var(--accent) 15%);border-radius:28px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,Canvas 72%,white 28%),color-mix(in srgb,Canvas 72%,var(--accent) 8%));box-shadow:0 20px 50px color-mix(in srgb,CanvasText 12%,transparent),inset 0 1px 0 color-mix(in srgb,white 90%,transparent);-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%)}
.interface-settings::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 8% -10%,color-mix(in srgb,white 70%,transparent),transparent 40%),radial-gradient(circle at 105% 110%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 42%)}
.interface-settings>h3{margin:2px 0 7px;padding:0 10px 13px;border-bottom:1px solid color-mix(in srgb,CanvasText 10%,transparent);font-size:1rem;font-weight:650}
.interface-settings .usage-settings{margin:0}.interface-settings .usage-mode-row{margin:0}
.interface-settings .protected-view-info{margin:0 0 2px;background:color-mix(in srgb,Canvas 70%,transparent)}
.simple-view-row,.minimal-view-setting-row{cursor:pointer}.simple-view-row>span,.minimal-view-setting-row>span:first-child{display:grid;gap:4px}.simple-view-row small,.minimal-view-setting-row small{color:GrayText;font-size:.74rem;font-weight:400;line-height:1.4}
.simple-view-row input{appearance:none;-webkit-appearance:none;position:relative;width:44px;min-width:44px;height:24px;min-height:24px;padding:0;border:0;border-radius:999px;overflow:hidden;background:color-mix(in srgb,CanvasText 20%,Canvas);display:block;flex:0 0 44px;box-shadow:inset 0 0 0 1px color-mix(in srgb,CanvasText 7%,transparent)}
.simple-view-row input::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:Canvas;box-shadow:0 1px 3px #0003;transition:transform .18s ease}.simple-view-row input:checked{background:var(--accent)}.simple-view-row input:checked::after{transform:translateX(20px)}
.minimal-view-setting-row{align-items:center}.minimal-setting-title{display:flex;align-items:center;gap:7px}.minimal-setting-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.minimal-setting-actions input{appearance:none;-webkit-appearance:none;position:relative;width:44px;min-width:44px;height:24px;min-height:24px;padding:0;border:0;border-radius:999px;overflow:hidden;background:color-mix(in srgb,CanvasText 20%,Canvas);display:block;flex:0 0 44px;box-shadow:inset 0 0 0 1px color-mix(in srgb,CanvasText 7%,transparent)}.minimal-setting-actions input::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:Canvas;box-shadow:0 1px 3px #0003;transition:transform .18s ease}.minimal-setting-actions input:checked{background:var(--accent)}.minimal-setting-actions input:checked::after{transform:translateX(20px)}.minimal-setting-actions select{width:auto;min-width:125px}
.notification-setting-row.notifications-required{color:GrayText}.notification-setting-row.notifications-required .notification-switch input{cursor:not-allowed;filter:grayscale(.65);opacity:.55}.notification-setting-row.notifications-required .notification-switch span{color:GrayText}
.notification-setting-row[hidden]{display:none!important}.companion-new-toggle-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:10px 2px}.companion-new-toggle-row[hidden]{display:none!important}.companion-new-toggle-row>img{width:54px;height:54px;object-fit:contain}.companion-new-toggle-row>strong{font-size:.95rem}.companion-new-toggle-row .notification-switch{justify-self:end}
@media(max-width:600px){.interface-settings{padding:16px 10px 6px;border-radius:25px}.interface-settings>h3{padding-inline:8px}.interface-settings .protected-view-info{align-items:flex-start;flex-direction:column}.interface-settings .protected-view-info>b{align-self:flex-start}}
@media(max-width:600px){.companion-new-toggle-row{grid-template-columns:46px minmax(0,1fr) auto;gap:9px}.companion-new-toggle-row>img{width:46px;height:46px}.companion-new-toggle-row>strong{font-size:.86rem}.companion-new-toggle-row .notification-switch{gap:6px}}

/* Bis Konto- und Begleitdaten feststehen, kein falsches Layout zeigen. */
body.app-initializing main{visibility:hidden}
body.app-initializing::after{content:"MedTiming wird geladen …";position:fixed;z-index:100;left:50%;top:50%;transform:translate(-50%,-50%);padding:14px 20px;border:1px solid color-mix(in srgb,white 68%,var(--accent) 16%);border-radius:999px;background:color-mix(in srgb,Canvas 76%,transparent);color:GrayText;font-size:.86rem;font-weight:650;box-shadow:0 18px 48px color-mix(in srgb,CanvasText 14%,transparent),inset 0 1px 0 color-mix(in srgb,white 88%,transparent);-webkit-backdrop-filter:blur(24px) saturate(165%);backdrop-filter:blur(24px) saturate(165%)}

/* Verbindung direkt im Regeln-Tab löschen. */
.companion-delete-connection{display:grid;gap:7px;padding-top:16px;border-top:1px solid color-mix(in srgb,CanvasText 12%,transparent)}
.companion-delete-connection button{justify-self:start;border-color:color-mix(in srgb,#b23e3e 34%,transparent);border-radius:999px;background:color-mix(in srgb,#b23e3e 7%,Canvas);color:#a43131}
.companion-delete-connection small{color:GrayText;line-height:1.4}

/* Minimal-Ansicht und ihre frei wählbare Darstellung. */
.companion-minimal-controls{display:grid;gap:12px;padding-top:16px;border-top:1px solid color-mix(in srgb,CanvasText 12%,transparent)}
.companion-minimal-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}
.companion-minimal-copy{display:grid;gap:4px}
.companion-minimal-controls small{color:GrayText;font-weight:400}
.companion-minimal-controls input{appearance:none;width:48px;height:28px;padding:3px;border:0;border-radius:999px;background:color-mix(in srgb,CanvasText 18%,Canvas)}
.companion-minimal-controls input::after{content:"";display:block;width:22px;height:22px;border-radius:50%;background:white;box-shadow:0 2px 7px #0003;transition:.2s}
.companion-minimal-controls input:checked{background:var(--accent)}
.companion-minimal-controls input:checked::after{transform:translateX(20px)}
.companion-minimal-controls select{width:auto;min-width:130px}
.companion-minimal-controls .companion-minimal-actions{display:flex;align-items:center;gap:10px}
.companion-minimal-controls .companion-minimal-actions select[hidden]{display:none}
.companion-minimal-title{display:flex;align-items:center;gap:7px}
.minimal-view-info{position:relative;display:inline-grid;place-items:center;width:19px;height:19px;border:1.5px solid color-mix(in srgb,var(--accent) 70%,CanvasText);border-radius:50%;color:var(--accent);font:700 13px/1 system-ui;cursor:help;outline:none}
.minimal-view-info:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 24%,transparent)}
.minimal-view-popup{position:fixed;z-index:1000;top:50%;left:50%;display:grid;gap:5px;width:min(900px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:18px;overflow:auto;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,CanvasText 12%,transparent);border-radius:22px;background:color-mix(in srgb,Canvas 96%,transparent);color:CanvasText;box-shadow:0 18px 48px #0004;backdrop-filter:blur(24px);font:400 14px/1.35 system-ui}
.minimal-view-popup[hidden]{display:none}
.minimal-view-popup-close{position:sticky;z-index:2;top:0;justify-self:end;width:34px;height:34px;margin:0 0 -34px;padding:0;border-radius:50%;background:color-mix(in srgb,CanvasText 8%,Canvas);color:CanvasText;font-size:1.35rem;line-height:1}
.minimal-view-popup>strong{font-size:1rem}.minimal-view-popup>small{color:GrayText}
.minimal-view-previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}
.minimal-view-preview{display:grid;gap:6px}.minimal-view-preview>b{text-align:center;font-size:.8rem}
.minimal-view-preview img{display:block;width:100%;height:auto;border:1px solid color-mix(in srgb,CanvasText 10%,transparent);border-radius:16px;background:white;box-shadow:0 8px 24px #0002}
.preview-screen{position:relative;display:flex;min-height:190px;padding:13px 9px;flex-direction:column;align-items:center;justify-content:center;gap:8px;overflow:hidden;border-radius:18px;text-align:center;box-shadow:inset 0 0 0 1px #0000000f}
.minimal-view-preview.neutral .preview-screen{background:linear-gradient(155deg,#e8f7f2,#fff);color:#155c50}
.minimal-view-preview.friendly .preview-screen{background:linear-gradient(155deg,#fff3d4,#fff);color:#8d4b1d}
.preview-screen i{font-size:.65rem;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.preview-pill{font-size:2rem}.preview-screen strong{font-size:.9rem;line-height:1.15}
.preview-screen em{padding:7px 10px;border-radius:999px;background:#16856f;color:white;font-size:.68rem;font-style:normal;font-weight:800}
.friendly .preview-screen em{background:#d56b28}.preview-star{position:absolute;top:8px;right:9px;font-size:1.1rem}
@media (max-width:700px){.minimal-view-previews{grid-template-columns:1fr;gap:12px}}

/* Dauerhafte Nachrichten und nachvollziehbare Empfangsbestätigung. */
.message-inbox{display:grid;gap:14px;margin:8px 0 20px;padding:20px;border:1px solid color-mix(in srgb,white 68%,var(--accent) 16%);border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 72%,white 28%),color-mix(in srgb,Canvas 72%,var(--accent) 8%));box-shadow:0 18px 44px color-mix(in srgb,CanvasText 11%,transparent),inset 0 1px 0 color-mix(in srgb,white 88%,transparent);backdrop-filter:blur(26px) saturate(165%)}
.message-inbox[hidden]{display:none}.message-inbox-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.message-inbox-heading h3,.message-inbox-heading p{margin:0}.message-inbox-heading>span{padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,Canvas);color:var(--accent);font-size:.72rem;font-weight:750}
.message-inbox-list{display:grid;gap:9px}.message-inbox-item{display:grid;grid-template-columns:1fr auto;gap:7px 12px;padding:14px;border:1px solid color-mix(in srgb,CanvasText 9%,transparent);border-radius:17px;background:Canvas}.message-inbox-item.unread{border-color:color-mix(in srgb,var(--accent) 34%,transparent);box-shadow:inset 4px 0 0 var(--accent)}.message-inbox-item>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;grid-column:1/-1}.message-inbox-item time{color:GrayText;font-size:.74rem}.message-inbox-item p{margin:0;line-height:1.45}.message-inbox-item>b{align-self:end;color:var(--accent);font-size:.72rem}
.incoming-message-alert{position:fixed;z-index:950;top:50%;left:50%;display:grid;width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:28px;overflow:auto;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,white 74%,var(--accent) 20%);border-radius:30px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 84%,white 16%),color-mix(in srgb,Canvas 82%,var(--accent) 9%));box-shadow:0 36px 120px #001f1f70,inset 0 1px 0 color-mix(in srgb,white 92%,transparent);text-align:center;backdrop-filter:blur(32px) saturate(180%)}
.incoming-message-alert[hidden]{display:none}.incoming-message-alert h2{margin:4px 0 8px;font-size:clamp(1.5rem,5vw,2.2rem)}.incoming-message-alert>p:not(.stats-eyebrow):not(.companion-status){margin:0 0 16px;font-size:clamp(1.25rem,4vw,1.7rem);font-weight:700;line-height:1.4}.incoming-message-alert time{color:GrayText;font-size:.82rem}.incoming-message-alert>button{min-height:64px;margin-top:20px;border-radius:20px;font-size:1.12rem}.incoming-message-alert>small{margin-top:10px;color:GrayText}.incoming-message-alert .companion-status{margin:8px 0 0}
.sent-message-history{display:grid;gap:9px;margin-top:16px;padding-top:16px;border-top:1px solid color-mix(in srgb,CanvasText 12%,transparent)}.sent-message-history h4{margin:0}.sent-message-history article{display:grid;gap:6px;padding:12px 14px;border-radius:15px;background:color-mix(in srgb,var(--accent) 6%,Canvas)}.sent-message-history article>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px}.sent-message-history time{color:GrayText;font-size:.72rem}.sent-message-history b{color:var(--accent);font-size:.72rem}.sent-message-history p{margin:0;line-height:1.4}
.sent-message-history .sent-message-delete{justify-self:end;padding:6px 11px;border-color:color-mix(in srgb,#b33b3b 24%,transparent);color:#a43131;font-size:.72rem}
@media(max-width:560px){.incoming-message-alert{padding:22px 18px}.message-inbox-item{grid-template-columns:1fr}.message-inbox-item>b{justify-self:start}.sent-message-history article>div{display:grid}}

/* Zusätzliche verständliche Angaben in den Statistik-Karten. */
.medication-kpi-values{grid-template-columns:repeat(3,minmax(0,1fr))}.medication-kpi-values .medication-kpi-detail b{font-size:.78rem;line-height:1.25}.medication-kpi-values .medication-kpi-detail span{white-space:normal}
@media(max-width:600px){.medication-kpi-values{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}}

/* Verbindliche Übernahme einer eskalierten Einnahmewarnung. */
.companion-today-list .missed-dose-response{grid-column:2/-1;justify-self:start;margin-top:5px;padding:8px 13px;border-radius:999px}.companion-today-list .missed-dose-response.claimed{display:block;padding:7px 11px;background:color-mix(in srgb,var(--accent) 10%,Canvas);color:var(--accent);font-size:.76rem}

/* Optionales Paket für die telefonische Eskalation. */
.safety-call-settings{margin:8px 0 20px;padding:21px;border:1px solid color-mix(in srgb,white 68%,var(--accent) 17%);border-radius:27px;background:linear-gradient(145deg,color-mix(in srgb,Canvas 73%,white 27%),color-mix(in srgb,Canvas 74%,var(--accent) 7%));box-shadow:0 18px 44px color-mix(in srgb,CanvasText 10%,transparent),inset 0 1px 0 color-mix(in srgb,white 90%,transparent);backdrop-filter:blur(26px) saturate(165%)}.safety-call-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.safety-call-heading::-webkit-details-marker{display:none}.safety-call-heading h3,.safety-call-heading p,.safety-call-content>p{margin:0}.safety-call-heading-actions{display:flex;align-items:center;gap:9px}.safety-call-heading-actions>#safety-call-plan-state{padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,Canvas);color:var(--accent);font-size:.72rem;font-weight:750}.safety-call-chevron{width:10px;height:10px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg);transition:transform .2s ease}.safety-call-settings[open] .safety-call-chevron{transform:rotate(225deg)}.safety-call-content{display:grid;gap:14px;padding-top:14px}.safety-call-content>p{color:GrayText;font-size:.82rem;line-height:1.5}.safety-call-offer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 14px;padding:15px;border-radius:18px;background:color-mix(in srgb,Canvas 78%,white 22%)}.safety-call-offer strong{font-size:1.05rem}.safety-call-offer span{grid-column:1;color:GrayText;font-size:.76rem}.safety-call-offer button{grid-column:2;grid-row:1/3;border-radius:999px}.safety-call-settings form{display:grid;gap:12px}.safety-call-settings form[hidden]{display:none}#safety-call-contact-list{display:grid;gap:9px}.safety-call-contact{display:grid;grid-template-columns:28px 1fr 1fr auto;align-items:end;gap:9px;padding:11px;border-radius:17px;background:color-mix(in srgb,Canvas 82%,white 18%)}.safety-call-order{display:grid;place-items:center;width:28px;height:28px;margin-bottom:7px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,Canvas);color:var(--accent);font-size:.75rem;font-weight:800}.safety-call-contact label{font-size:.72rem}.safety-call-contact input{margin-top:4px}.safety-call-contact button{margin-bottom:1px;padding:8px 10px}.safety-call-consent{display:flex;align-items:flex-start;gap:9px;color:GrayText;font-size:.76rem;line-height:1.4}.safety-call-consent input{flex:0 0 auto;margin-top:2px}
@media(max-width:650px){.safety-call-offer{grid-template-columns:1fr}.safety-call-offer button{grid-column:1;grid-row:auto}.safety-call-contact{grid-template-columns:28px 1fr}.safety-call-contact label,.safety-call-contact button{grid-column:2}.safety-call-order{grid-row:1}}

/* Frei gewählte Minimal-Ansicht mit jederzeit sichtbarem Rückweg. */
.normal-view-open{position:fixed;z-index:20;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:auto;padding:9px 14px;border:1px solid color-mix(in srgb,white 34%,var(--accent));border-radius:999px;background:color-mix(in srgb,Canvas 94%,transparent);color:CanvasText;font-size:.78rem;font-weight:600;box-shadow:0 12px 30px #0003}
body.minimal-view-active nav .tab:not([data-view="today"]){display:none!important}
body.minimal-view-active nav{grid-template-columns:1fr}
body.minimal-view-active #today #reset-today,body.minimal-view-active #today [data-action="undo"]{display:none!important}
@media(max-width:600px){.minimal-view-setting-row{align-items:flex-start;grid-template-columns:1fr}.minimal-setting-actions{justify-content:space-between}.normal-view-open{right:12px;bottom:12px}}

/* Das Kontrollkästchen darf nicht die volle Formularbreite übernehmen. */
.safety-call-consent input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;padding:0}

/* Klare Zustände, Monatsverbrauch und verständliche Rückmeldungen. */
.safety-call-heading-actions>#safety-call-plan-state[data-state="active"]{background:color-mix(in srgb,#16945a 14%,Canvas);color:#087744}.safety-call-heading-actions>#safety-call-plan-state[data-state="ending"]{background:color-mix(in srgb,#c77a00 15%,Canvas);color:#8a5200}.safety-call-heading-actions>#safety-call-plan-state[data-state="inactive"]{background:color-mix(in srgb,GrayText 10%,Canvas);color:GrayText}.safety-call-state-detail{padding:11px 13px;border-left:4px solid var(--accent);border-radius:10px;background:color-mix(in srgb,var(--accent) 7%,Canvas);font-size:.8rem;line-height:1.45}.safety-call-usage{display:grid;gap:9px;padding:13px;border-radius:16px;background:color-mix(in srgb,Canvas 82%,white 18%)}.safety-call-usage[hidden]{display:none}.safety-call-usage>div{display:grid;gap:3px}.safety-call-usage strong{font-size:.84rem}.safety-call-usage span{color:GrayText;font-size:.72rem;line-height:1.4}.safety-call-usage progress{width:100%;height:10px;accent-color:var(--accent)}.safety-call-message{margin:0;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--accent) 6%,Canvas);font-size:.78rem;line-height:1.45}.safety-call-message:empty{display:none}.safety-call-message[data-tone="success"]{background:color-mix(in srgb,#16945a 11%,Canvas);color:#087744}.safety-call-message[data-tone="warning"]{background:color-mix(in srgb,#f0a000 13%,Canvas);color:color-mix(in srgb,#7a4900 88%,CanvasText)}.safety-call-message[data-tone="error"]{background:color-mix(in srgb,#c93838 11%,Canvas);color:color-mix(in srgb,#991f1f 88%,CanvasText)}

/* Schmale Telefone und große Systemschrift: Bedienelemente bleiben im sichtbaren Bereich. */
@media(max-width:430px){#cloud{min-width:0;overflow-x:hidden}.settings-preference-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-inline:8px}.settings-preference-row>strong,.settings-preference-row>span,.language-label{width:auto;min-width:0;flex-basis:auto}.preference-help{margin-left:8px}.language-switch{display:flex;flex-wrap:wrap;justify-content:flex-end}.language-switch button{min-height:36px}.salutation-row input{width:min(155px,43vw);max-width:100%}.usage-settings>.usage-mode-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}#cloud .usage-mode-row select{width:100%;min-width:0;min-height:46px}.minimal-setting-actions{min-width:0;flex-wrap:wrap}.minimal-setting-actions select{width:108px;min-width:0}.automatic-backup-controls{min-width:0;flex-wrap:wrap}.automatic-backup-controls select{width:120px;max-width:42vw}.contact-profile-settings form{grid-template-columns:minmax(0,1fr)}.profile-photo-editor,.contact-full-name,.contact-birth-date,.contact-street,.contact-profile-settings form>label:last-of-type,.contact-location,.contact-profile-settings form>button[type="submit"],.contact-profile-settings #contact-profile-status{grid-column:1}.contact-location{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contact-profile-settings button,.safety-call-settings button,.account-actions button{min-height:44px}.contact-profile-settings .photo-menu-toggle{min-height:28px}.account-actions{grid-template-columns:1fr}.account-actions button{justify-content:flex-start;padding-inline:12px;font-size:.76rem}.safety-call-settings{min-width:0;padding:17px 13px}.safety-call-heading{align-items:flex-start;flex-direction:column}.safety-call-contact{grid-template-columns:28px minmax(0,1fr)}.safety-call-contact input{min-width:0}.legal-content{padding:18px 15px}.dialog-actions{align-items:stretch;flex-direction:column}.dialog-actions button{width:100%;min-height:44px}}
@media(max-width:430px){.manual-backup-row{grid-template-columns:minmax(0,1fr);gap:12px}.manual-backup-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);width:100%!important}.manual-backup-row button{min-width:0;width:100%;padding-inline:9px}.manual-backup-row button::before{width:22px;height:22px;flex-basis:22px}}
@media(max-width:430px){.auth-gate{place-items:start center;padding-top:max(12px,env(safe-area-inset-top))}.auth-gate-card{padding:18px 16px;border-radius:25px}.auth-gate-card>img{width:52px;height:52px;margin-bottom:10px;border-radius:16px}.auth-gate-card>p:not(.stats-eyebrow){margin-top:7px;font-size:.9rem;line-height:1.42}.auth-gate-card>small{margin-top:11px;font-size:.68rem}.auth-gate-card #login-form{gap:10px;padding:12px 12px 14px}.auth-gate-card #login-form label{gap:4px;font-size:.9rem}.auth-gate-card #login-form input{padding:9px 10px}.auth-gate-card #login-form .password-input input{padding-right:43px}.auth-gate-card .dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.auth-gate-card .dialog-actions button{width:auto;min-height:40px;padding:9px 7px;font-size:.86rem}.auth-gate-card #reset-password{min-height:34px;padding:5px 0;font-size:.82rem}.auth-gate-card .password-visibility{right:3px;width:36px;height:36px;padding:0}}
