.settings-dialog{position:fixed;inset:0;width:min(896px,calc(100vw - 32px));height:min(720px,calc(100dvh - 32px));max-width:none;max-height:none;margin:auto;padding:0;border:0;border-radius:16px;background:#fff;color:#17181b;box-shadow:0 10px 22px #1112;overflow:hidden}
.settings-dialog::backdrop{background:#0007;backdrop-filter:blur(4px)}
.settings-layout{display:grid;grid-template-columns:222px minmax(0,1fr);height:100%;min-height:0}
.settings-sidebar{background:#fbfbfc;border-right:1px solid #e4e5ea;padding:12px 8px;overflow:auto}
.settings-search{display:flex;align-items:center;gap:7px;border:1px solid #dee0e6;border-radius:14px;background:#fff;padding:0 10px;height:48px;margin:0 0 8px;min-width:0;cursor:text}
.settings-search .icon{width:15px;height:15px;flex:none;color:#858995}
.settings-search:focus-within{border-color:#34b03e;box-shadow:0 0 0 2px #34b03e22}
.settings-search input{flex:1;min-width:0;width:0;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0;outline:0;box-shadow:none;font-size:13px;background:transparent;color:inherit}
.settings-search input:focus{border:0;outline:0;box-shadow:none}
.settings-nav{display:grid;gap:3px}
.settings-nav button{display:flex;align-items:center;gap:10px;width:100%;border:0;border-radius:12px;background:transparent;color:#767982;padding:9px 11px;text-align:left;font-size:13px;line-height:1.25;height:37px;min-height:37px;white-space:nowrap}
.settings-nav button:hover,.settings-nav button.active{background:#e9e9ec;color:#17181b}
.settings-nav button.active{font-weight:600}
.settings-nav button .icon{width:16px;height:16px;flex:none;stroke-width:1.7}
.settings-main{position:relative;overflow:auto;padding:34px 32px 30px;font-size:13px}
.settings-main h2{font-size:18px;line-height:1.35;letter-spacing:0;font-weight:650;margin-bottom:20px}
.settings-close{position:absolute;right:8px;top:8px;width:30px;height:30px;border:0;border-radius:50%;background:#fff5f7;color:#ff5570;display:grid;place-items:center}
#settings-dialog>.settings-close{z-index:2;width:44px;height:44px;padding:0}
.settings-main{padding-top:60px}
.settings-close .icon{width:16px;height:16px}
.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;border-bottom:1px solid #dfe1e7}
.settings-row>label,.settings-row>span:first-child{flex:1}
.settings-avatar{flex:none;width:40px;height:40px;background:#2e7d32;color:#fff;font-size:15px}
.settings-name-control{width:256px;max-width:56%;position:relative}
.settings-name-control input,.settings-row select{width:100%;height:37px;padding:0 12px;border:1px solid #dfe1e7;border-radius:15px;background:#fff;color:#202124;font-size:13px;outline:none}
.settings-name-control input:focus,.settings-row select:focus{border-color:#34b03e;box-shadow:0 0 0 2px #34b03e22}
.settings-name-control button{position:absolute;right:4px;top:4px;height:29px;border:0;border-radius:11px;background:#278d31;color:white;padding:0 10px;font-size:11px}
.settings-name-control button:not([hidden])~small{top:40px}
.settings-field-error{display:block;color:#bb3434;margin-top:4px}
.settings-field-error[hidden]{display:none}
.settings-subheading{margin:47px 0 0!important;padding-bottom:12px;border-bottom:1px solid #dfe1e7}
.settings-subheading~.settings-row{min-height:57px}
.settings-subheading+.settings-row{min-height:63px}
.settings-appearance{display:flex;gap:2px;padding:2px;border:1px solid #dfe1e7;border-radius:15px;background:#f8f8fa}
.settings-appearance button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:12px;background:transparent;color:#68707c;line-height:1}
.settings-appearance button .icon{width:17px;height:17px}
.settings-appearance button[aria-pressed=true]{background:#fff;color:#12151a;box-shadow:0 1px 4px #1112}
.settings-row select{width:256px;max-width:56%;appearance:auto}
.settings-row .styled-select{flex:0 1 256px;width:256px;max-width:56%}
.settings-row .styled-select-trigger{min-height:40px;padding:9px 12px;border:1px solid #dfe1e7;border-radius:15px;color:#202124;font-size:13px;line-height:1.2}
.settings-row .styled-select-trigger::after{margin-right:3px}
.settings-main section:not([data-settings-panel=general]) p{color:#747782;margin-top:12px}
.settings-main .settings-subscription h2{margin-bottom:4px}
.settings-main .settings-subscription .settings-subscription-intro{margin:0;color:#747782;font-size:13px}
.settings-plan-card{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:102px;margin-top:25px;padding:20px 24px;border:1px solid #edeef0;border-radius:16px;background:#fff;box-shadow:0 4px 15px #2021240b}
.settings-plan-copy{min-width:0}
.settings-main .settings-plan-copy h3{margin:0;font-size:17px;font-weight:650;line-height:1.35}
.settings-main .settings-plan-copy p{margin-top:5px!important;color:#747782;font-size:13px;line-height:1.4}
.settings-plan-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:40px;padding:0 15px;border:1px solid #e0e2e7;border-radius:15px;background:#f7f7f9;color:#202124;font-size:13px;font-weight:600;white-space:nowrap}
.settings-plan-action .icon{width:16px;height:16px}
.settings-plan-action:disabled{opacity:1;cursor:not-allowed}
.settings-main .settings-subscription .settings-plan-note{margin-top:23px;color:#747782;font-size:11px}
.settings-accessibility .settings-font-row{min-height:50px}
.settings-accessibility .settings-font-row label span{color:#747782;margin-left:4px}
.settings-font-controls{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:8px;flex:0 1 256px;width:256px;max-width:56%}
.settings-font-controls button{width:32px;height:32px;padding:0;display:grid;place-items:center;border:1px solid #e1e2e7;border-radius:50%;background:#f7f7f9;color:#555b63;font-size:19px;line-height:1}
.settings-font-controls button:disabled{opacity:.45;cursor:default}
.settings-font-controls input[type=range]{appearance:none;width:100%;height:20px;margin:0;border:0;background:transparent;cursor:pointer}
.settings-font-controls input[type=range]::-webkit-slider-runnable-track{height:8px;border-radius:99px;background:linear-gradient(to right,#282d35 var(--range-fill,33.33%),#f0f0f2 var(--range-fill,33.33%))}
.settings-font-controls input[type=range]::-moz-range-track{height:8px;border-radius:99px;background:#f0f0f2}
.settings-font-controls input[type=range]::-moz-range-progress{height:8px;border-radius:99px;background:#282d35}
.settings-font-controls input[type=range]::-webkit-slider-thumb{appearance:none;width:20px;height:20px;margin-top:-6px;border:2px solid #282d35;border-radius:50%;background:#fff}
.settings-font-controls input[type=range]::-moz-range-thumb{width:18px;height:18px;border:2px solid #282d35;border-radius:50%;background:#fff}
.settings-accessibility .settings-font-row+.settings-row{min-height:57px}
.settings-accessibility .settings-switch-row{min-height:45px;cursor:pointer}
.settings-switch-row>span:first-child{flex:1}
.settings-switch-row input{position:absolute;width:1px;height:1px;opacity:0}
.settings-switch{position:relative;flex:none;width:44px;height:24px;border-radius:99px;background:#e3e4e8;transition:background .15s}
.settings-switch::before{content:'';position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:#f7f8fa;box-shadow:0 1px 3px #20212430;transition:transform .15s}
.settings-switch-row input:checked+.settings-switch{background:#2e9b3b}
.settings-switch-row input:checked+.settings-switch::before{transform:translateX(20px)}
.settings-switch-row input:focus-visible+.settings-switch{outline:3px solid #34b03e66;outline-offset:3px}
.settings-reset-row{display:flex;justify-content:flex-end;padding-top:10px}
.settings-reset-row button{display:inline-flex;align-items:center;gap:9px;min-height:37px;padding:0 13px;border:1px solid #dfe1e7;border-radius:14px;background:#fff;color:#202124;font-size:13px;font-weight:600}
.settings-reset-row button .icon{width:16px;height:16px}
.settings-reset-row button:hover{background:#f7f8f9}
.settings-connections-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.settings-main .settings-connections-heading h2{margin:0}
.settings-new-credential{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:none;min-height:37px;padding:0 13px;border:0;border-radius:13px;background:#292d35;color:#fff;font-size:13px;font-weight:650;white-space:nowrap}
.settings-new-credential .icon{width:17px;height:17px}
.settings-new-credential:disabled{opacity:1;cursor:not-allowed}
.settings-main .settings-connections-description{max-width:608px;margin-top:32px;color:#747782;font-size:13px;line-height:1.5}
.settings-credentials-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:190px;margin-top:24px;padding:25px;border:1px solid #edeef0;border-radius:16px;background:#fff;text-align:center;box-shadow:0 5px 15px #2021240b}
.settings-credentials-empty>.icon{width:32px;height:32px;margin-bottom:7px;color:#787e88}
.settings-credentials-empty strong{font-size:13px;font-weight:650}
.settings-main .settings-credentials-empty p{max-width:380px;margin-top:8px;color:#747782;font-size:13px;line-height:1.55}
.settings-main .settings-sharing h2{margin-bottom:5px}
.settings-main .settings-sharing-intro{margin:0 0 22px;color:#747782;font-size:13px}
.settings-sharing>label{display:block;margin-bottom:8px;font-size:12px;font-weight:600}
.settings-sharing>input{display:block;width:min(448px,100%);height:40px;padding:0 12px;border:1px solid #dfe1e7;border-radius:14px;background:#fff;color:#202124;font-size:13px;font-family:inherit;outline:none}
.settings-sharing>input:focus{border-color:#34b03e;box-shadow:0 0 0 2px #34b03e22}
.settings-share-actions{display:flex;gap:8px;width:min(448px,100%);margin-top:16px}
.settings-share-actions>*{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:0;min-height:40px;padding:0 8px;border:1px solid #dfe1e7;border-radius:14px;background:#f7f7f9;color:#202124;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.settings-share-actions>*:hover{background:#eceef1}
.settings-share-actions>*:focus-visible{outline:2px solid #34b03e;outline-offset:2px}
.settings-share-actions .icon{width:16px;height:16px;flex:none}
.settings-share-actions [data-share-whatsapp] .icon{color:#00a87c}
.settings-share-actions [data-share-email] .icon{color:#1268ff}
.settings-main .settings-share-notice{width:min(448px,100%);margin-top:14px;color:#747782;font-size:12px;line-height:1.5}
.settings-main .settings-share-notice[hidden]{display:none}
.settings-main .settings-account h2{margin-bottom:24px}
.settings-main section.settings-account p{max-width:590px;margin:0 0 7px;color:#747782;font-size:13px;line-height:1.6}
.settings-account-delete{min-height:40px;margin-top:16px;padding:0 16px;border:0;border-radius:14px;background:#ef4444;color:#fff;font-size:13px;font-weight:650}
.settings-account-delete:disabled{opacity:.65;cursor:not-allowed}
.settings-main .settings-privacy h2{margin-bottom:25px}
.settings-main section.settings-privacy .settings-privacy-intro{max-width:600px;margin:0 0 28px;color:#747782;font-size:13px;line-height:1.6}
.settings-privacy-options{display:grid;gap:17px}
.settings-privacy-option{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-height:60px;color:#17181b}
.settings-privacy-option>div{min-width:0}
.settings-privacy-option strong{display:block;font-size:13px;font-weight:650;line-height:1.4}
.settings-main section.settings-privacy .settings-privacy-option p{max-width:520px;margin:3px 0 0;color:#747782;font-size:13px;line-height:1.5}
.settings-privacy-always{flex:none;color:#747782;font-size:11px;line-height:1.5}
.settings-privacy-switch{display:block;position:relative;flex:none;margin-top:0;cursor:pointer}
.settings-privacy-switch .settings-switch{display:block}
.settings-privacy-switch input{position:absolute;width:1px;height:1px;opacity:0}
.settings-privacy-switch input:checked+.settings-switch{background:#292d35}
.settings-privacy-switch input:checked+.settings-switch::before{transform:translateX(20px)}
.settings-privacy-switch input:focus-visible+.settings-switch{outline:3px solid #34b03e66;outline-offset:3px}
.settings-privacy-unavailable,.settings-privacy-unavailable .settings-privacy-switch{cursor:not-allowed}
.settings-privacy-save{min-height:40px;margin-top:13px;padding:0 16px;border:0;border-radius:14px;background:#292d35;color:#fff;font-size:13px;font-weight:650}
.settings-privacy-save:disabled{background:#97999e;cursor:default}
.settings-main section.settings-privacy .settings-privacy-saved{margin:10px 0 0;color:#747782;font-size:11px;line-height:1.5}
.credential-dialog{width:min(512px,calc(100vw - 24px));max-width:512px;max-height:calc(100dvh - 28px);padding:22px 24px 24px;border:0;border-radius:16px;background:#fff;color:#17181b;box-shadow:0 10px 25px #0003;overflow:auto}
.credential-dialog::backdrop{background:#0006;backdrop-filter:blur(3px)}
.credential-dialog h2{margin:0;font-size:18px;line-height:1.4;letter-spacing:0}
.credential-intro{margin:3px 0 17px;color:#747782;font-size:13px;line-height:1.5;max-width:430px}
.credential-dialog form>label,.credential-dialog legend{display:block;margin-bottom:7px;font-size:13px;font-weight:600}
.credential-dialog input[type=text]{display:block;width:100%;height:46px;padding:0 12px;border:1px solid #dfe1e7;border-radius:14px;background:#fff;color:#202124;font-size:13px;outline:none}
.credential-dialog input[type=text]:focus{outline:2px solid #292d35;outline-offset:2px}
.credential-dialog fieldset{margin:14px 0 0;padding:0;border:0}
.credential-dialog legend{margin-bottom:5px;padding:0}
.credential-access{display:flex;align-items:flex-start;gap:11px;min-height:44px;padding:3px 0;cursor:pointer}
.credential-access input{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:#292d35}
.credential-access strong{display:block;font-size:13px;line-height:1.35;font-weight:600}
.credential-access small{display:block;margin-top:2px;color:#898d95;font-size:11px;line-height:1.4}
.credential-feedback{margin:4px 0 0;color:#bf4148;font-size:12px;line-height:1.4}
.credential-feedback[hidden]{display:none}
.credential-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:9px}
.credential-actions button{min-height:40px;padding:0 16px;border:1px solid #dfe1e7;border-radius:13px;background:#f7f7f9;color:#202124;font-size:13px;font-weight:600}
.credential-actions button[type=submit]{border-color:#292d35;background:#292d35;color:#fff}
.credential-actions button[type=submit]:disabled{border-color:#96989d;background:#96989d;color:#fff;cursor:default}
.settings-account-actions{display:grid;gap:10px;max-width:280px;margin-top:26px}
.settings-account-actions a{display:block;border:1px solid #dfe1e7;border-radius:12px;padding:10px 14px}
.settings-account-actions a:hover{background:#f4f5f7}
@media(max-width:720px){.settings-dialog{width:calc(100vw - 20px);height:calc(100dvh - 28px);border-radius:16px}.settings-layout{display:flex;flex-direction:column}.settings-sidebar{flex:none;border-right:0;border-bottom:1px solid #e4e5ea;padding:12px}.settings-search{max-width:calc(100% - 52px)}.settings-nav{display:flex;overflow-x:auto;scrollbar-width:thin;gap:4px}.settings-nav button{flex:none;width:auto;white-space:nowrap}.settings-main{padding:22px 18px;flex:1}.settings-row{min-height:64px}.settings-name-control,.settings-row select{width:min(220px,56%)}.settings-row .styled-select{flex-basis:220px;width:220px;max-width:56%}.settings-subheading{margin-top:32px!important}.settings-plan-card{align-items:flex-start;flex-direction:column;padding:20px;gap:16px}.settings-plan-action{width:100%}.settings-close{right:8px;top:8px}}
@media(max-width:390px){.settings-row{gap:8px}.settings-name-control,.settings-row select{max-width:60%}.settings-main{padding-inline:14px}}
@media(max-width:720px){.settings-font-controls{flex-basis:220px;width:220px;max-width:56%}}
@media(max-width:440px){.settings-font-row{align-items:flex-start;flex-direction:column;padding:12px 0;gap:10px}.settings-font-row>label{flex:none}.settings-font-controls{flex:none;width:100%;max-width:none}.settings-accessibility .settings-font-row{min-height:0}}
@media(max-width:500px){.settings-connections-heading{align-items:flex-start;flex-direction:column}.settings-new-credential{width:100%}.settings-main .settings-connections-description{margin-top:20px}}
@media(max-width:430px){.settings-share-actions{flex-wrap:wrap;gap:12px}.settings-share-actions>*{flex:1 1 calc(50% - 6px)}}
@media(max-width:500px){.credential-dialog{padding:22px 18px 20px}.credential-actions{justify-content:stretch}.credential-actions button{flex:1;padding-inline:8px}}
html[data-app-theme=dark] body{--ink:#f3f5f6;--muted:#afb3bd;--bg:#202227;--line:#45484e;background:#202227;color:#f3f5f6}
html[data-app-theme=dark] .card,html[data-app-theme=dark] .recipe-card,html[data-app-theme=dark] .summary,html[data-app-theme=dark] .shopping-card{background:#2c2f35;color:#f3f5f6;border-color:#45484e}
html[data-app-theme=dark] .topbar,html[data-app-theme=dark] .app-main{color:#f3f5f6}
html[data-app-theme=dark] .settings-dialog,html[data-app-theme=dark] .settings-main{background:#292c31;color:#f3f5f6}
html[data-app-theme=dark] .settings-sidebar,html[data-app-theme=dark] .settings-search,html[data-app-theme=dark] .settings-name-control input,html[data-app-theme=dark] .settings-row select,html[data-app-theme=dark] .settings-appearance{background:#34373d;color:#f3f5f6;border-color:#51545a}
html[data-app-theme=dark] .settings-row .styled-select-trigger{background:#34373d;color:#f3f5f6;border-color:#51545a}
html[data-app-theme=dark] .settings-nav button{color:#c5c8ce}
html[data-app-theme=dark] .settings-nav button.active,html[data-app-theme=dark] .settings-nav button:hover,html[data-app-theme=dark] .settings-appearance button[aria-pressed=true]{background:#50535a;color:#fff}
html[data-app-theme=dark] .settings-plan-card{background:#34373d;border-color:#51545a}
html[data-app-theme=dark] .settings-credentials-empty{background:#34373d;border-color:#51545a}
html[data-app-theme=dark] .settings-sharing>input,html[data-app-theme=dark] .settings-share-actions>*{background:#34373d;color:#f3f5f6;border-color:#51545a}
html[data-app-theme=dark] .settings-privacy-option{color:#f3f5f6}
html[data-app-theme=dark] .credential-dialog{background:#292c31;color:#f3f5f6}
html[data-app-theme=dark] .credential-dialog input[type=text]{background:#34373d;color:#f3f5f6;border-color:#51545a}
html[data-app-theme=dark] .settings-font-controls button,html[data-app-theme=dark] .settings-reset-row button{background:#34373d;color:#f3f5f6;border-color:#51545a}
html[data-app-theme=dark] .account-popover,html[data-app-theme=dark] .account-option{background:#292c31;color:#f3f5f6;border-color:#50535a}
html[data-app-theme=dark] .account-signout{color:#ff6575}

.settings-nav button[hidden],.settings-name-control button[hidden],.settings-main section[hidden]{display:none}
