@font-face{font-family:DM Sans;src:url('assets/DMSans.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{color-scheme:light}body{--green:#00604d;--ink:#183e34;--muted:#6d8179;--bg:#eef4f2;--line:#dce7e1;--pale:#dcece6;--ease:cubic-bezier(.23,1,.32,1);margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--bg);font-size:14px}body.spice{--green:#ad4d22;--ink:#4d2d20;--bg:#fff5e7;--line:#eadfce;--pale:#f3dfc3}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:wait;opacity:.55}button:active,.button:active{transform:scale(.97)}button{transition:transform 140ms var(--ease),background-color 160ms ease}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #dcab70;outline-offset:4px}button:focus:not(:focus-visible){outline:none}.skip{position:fixed;top:-100px;left:20px;background:var(--green);color:white;padding:15px;z-index:20}.skip:focus{top:10px}.sidebar{width:242px;padding:32px 23px 20px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#f8faf8;z-index:3}.brand{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:750;letter-spacing:-1px}.brand img{width:36px;height:36px;object-fit:contain;border-radius:10px}.peach{color:#e6b39c}.sidebar-label{font-size:9px;font-weight:700;letter-spacing:1.35px;margin:47px 10px 18px;color:var(--muted)}nav{display:grid;gap:7px}.nav-item{border:0;background:none;display:flex;align-items:center;padding:13px 15px;gap:13px;font-weight:550;text-align:left;border-radius:10px;min-height:46px}.nav-item>span{width:22px;font-size:21px;font-weight:400;line-height:1}.nav-item.selected{background:var(--pale);color:var(--green)}small{font-size:11px}.nav-item small{margin-left:auto;background:#fff9;padding:2px 6px;border-radius:5px}.sidebar-bottom{margin-top:auto}.sidebar-bottom>a{font-size:11px;display:block;margin:20px 10px}.profile-button{display:flex;gap:10px;align-items:center;text-align:left;width:100%;border:1px solid var(--line);border-radius:10px;background:white;padding:12px 8px;font-size:11px;font-weight:650}.profile-button small{font-weight:400;font-size:9px;display:block;margin-top:4px;color:var(--muted)}.avatar{width:29px;height:29px;background:var(--pale);border-radius:50%;display:grid;place-items:center;color:var(--green);font-weight:700}.workspace{margin-left:242px;min-height:100vh}.topbar{height:82px;padding:0 46px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px}.top-actions{display:flex;align-items:center;gap:26px}.button{border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--green);color:white;padding:15px 22px;font-weight:600}.button.compact{padding:11px 16px;font-size:12px}.button.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.button.light{background:var(--pale);color:var(--green)}.text-button{border:0;background:none;padding:8px 0}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--green)}#main{padding:42px 46px 25px;max-width:1600px;margin:auto;min-height:calc(100vh - 150px)}h1,h2,h3,p{margin:0}h1{font-size:clamp(30px,3vw,43px);line-height:1.1;letter-spacing:-1.7px;font-weight:650}h2{font-size:28px;letter-spacing:-.9px;line-height:1.15}h3{font-size:17px;letter-spacing:-.35px}.page-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.page-head .eyebrow{display:block;margin-bottom:12px}.page-head p{margin-top:13px;color:var(--muted);line-height:1.7;font-size:13px}.hero-banner{background:var(--green);min-height:220px;border-radius:16px;overflow:hidden;position:relative;display:flex;margin:28px 0 32px;color:#fff}.hero-banner>div{padding:31px 32px;position:relative;z-index:1;max-width:68%}.hero-banner .eyebrow{color:#d0e2da}.hero-banner h2{font-size:33px;margin:12px 0;max-width:340px}.hero-banner p{font-size:12px;line-height:1.6;color:#e1eeea;max-width:300px}.hero-banner img{position:absolute;inset:0 0 0 auto;width:43%;object-fit:cover;mask-image:linear-gradient(to right,transparent,#000 30%)}.hero-banner .button{margin-top:20px;padding:10px 15px;font-size:12px;background:white;color:var(--green)}.section-line{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.section-line small{color:var(--muted)}.search-row{display:flex;align-items:center;gap:12px;margin:22px 0 18px}.searchbox{flex:1;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 15px;display:flex;align-items:center;gap:10px}.searchbox input{width:100%;padding:13px 0;border:0;background:none;outline:none;color:var(--ink)}select,input,textarea{color:var(--ink)}select{padding:12px;border:1px solid var(--line);border-radius:8px;background:white;max-width:180px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 25px}.chip{border:1px solid var(--line);border-radius:30px;background:transparent;padding:8px 15px;font-size:11px}.chip.active{background:var(--green);border-color:var(--green);color:white}.recipes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.recipe-card{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.recipe-card>button.card-open{background:none;border:0;text-align:left;padding:0;width:100%}.recipe-image{width:100%;height:174px;object-fit:cover;background:#dcece6}.card-body{padding:17px 17px 15px}.card-category{font-size:9px;color:var(--green);letter-spacing:1.1px;font-weight:700;text-transform:uppercase}.recipe-card h3{margin:9px 0 15px;line-height:1.3;font-size:17px}.recipe-meta{font-size:10px;display:flex;gap:15px;color:var(--muted)}.save-icon{position:absolute;right:11px;top:11px;background:#fffffff0;border:0;width:32px;height:32px;border-radius:50%;font-size:17px;display:grid;place-items:center}.save-icon.saved{color:var(--green);background:#dcece6}.empty-state{padding:65px 25px;text-align:center;border:1px dashed #bacdc2;border-radius:15px;grid-column:1/-1}.empty-state .empty-icon{font-size:38px;margin-bottom:16px}.empty-state p{margin:13px auto 23px;color:var(--muted);line-height:1.8;max-width:390px}.app-footer{padding:28px 46px;color:var(--muted);font-size:10px;display:flex;justify-content:space-between}.guest-note{padding:12px 15px;border-radius:8px;background:#fff;border:1px solid var(--line);font-size:11px;line-height:1.6;margin:15px 0 25px;display:flex;justify-content:space-between;align-items:center;gap:12px}.guest-note button{background:none;border:0;text-decoration:underline;font-size:11px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:24px}.panel p{line-height:1.7;color:var(--muted);margin:12px 0;font-size:13px}.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.plan-grid{display:grid;grid-template-columns:repeat(7,minmax(118px,1fr));gap:10px}.planning-scroll{overflow-x:auto;padding-bottom:12px}.plan-day{background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px 11px;min-height:320px}.day-title{text-align:center;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:12px;font-weight:600}.day-title b{display:block;font-size:25px;margin-top:7px}.meal-slot{margin-top:17px}.meal-label{font-size:9px;display:block;color:var(--muted);margin-bottom:8px}.meal-add{width:100%;padding:12px 3px;border:1px dashed #bacdc2;background:none;color:var(--green);border-radius:7px;font-size:11px}.meal-tile{font-size:11px;background:var(--pale);border-radius:7px;padding:10px;line-height:1.45;position:relative}.meal-tile button{border:0;background:none;padding:0 0 5px;margin-left:auto;display:block}.meal-tile small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.shopping-layout{display:grid;grid-template-columns:1fr 280px;gap:23px}.check-row{display:flex;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.check-row:last-child{border-bottom:0}.check-row input{accent-color:var(--green);width:17px;height:17px}.check-row.checked>span{text-decoration:line-through;color:var(--muted)}.check-row strong{font-size:11px;margin-left:auto}.check-row .text-button{padding:0 5px}.inline-form{display:flex;gap:10px;margin-bottom:20px}.inline-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px}.inline-form button{gap:8px}.memo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.memo-card{background:#fff9e8;border:1px solid #eadfc5;padding:23px;border-radius:10px;min-height:190px;display:flex;flex-direction:column;gap:13px}.memo-card p{line-height:1.7;font-size:13px;white-space:pre-wrap}.memo-card button{margin-top:auto;align-self:end;border:0;background:none;font-size:11px}.memo-card small{color:var(--muted)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.settings-row:last-child{border-bottom:0}.settings-row label{display:flex;align-items:center;gap:10px}.settings-row input{accent-color:var(--green)}.retailer-grid{display:grid;gap:10px;margin-top:18px}.retailer{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:8px;padding:14px;background:white}.retailer img{width:75px;height:28px;object-fit:contain}.retailer span{font-size:11px}.retailer input{accent-color:var(--green)}dialog{padding:0;border:0;color:var(--ink);background:#fff;max-height:92vh}dialog::backdrop{background:#122b2475;backdrop-filter:blur(6px)}dialog[open]{animation:dialog-in 220ms var(--ease)}@keyframes dialog-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.close-button{position:absolute;right:17px;top:16px;z-index:5;background:#ffffffe6;border:1px solid #dce7e1;border-radius:50%;width:32px;height:32px;font-size:22px;line-height:1}.detail-dialog{width:950px;border-radius:16px}.detail-header{position:relative;min-height:260px;background:var(--green);color:white;padding:40px;overflow:hidden}.detail-header>img{position:absolute;inset:0 0 0 auto;width:52%;height:100%;object-fit:cover;mask-image:linear-gradient(to right,transparent,#000 40%)}.detail-header>div{position:relative;max-width:62%;z-index:1}.detail-header .eyebrow{color:#d2e8dd}.detail-header h2{font-size:38px;margin:14px 0 20px}.detail-header .recipe-meta{color:#d2e8dd}.detail-body{padding:30px 40px}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.detail-actions .button{font-size:12px;padding:11px 15px;gap:13px}.detail-columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.portion-control{display:flex;gap:16px;align-items:center;margin:20px 0}.portion-control button{width:28px;height:28px;border:1px solid var(--line);background:white;border-radius:50%;font-size:18px}.portion-control span{font-size:12px}.ingredients{list-style:none;margin:0;padding:0}.ingredients li{display:flex;gap:12px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.55}.ingredients strong{min-width:52px;color:var(--green);font-size:11px}.steps{list-style:none;padding:0;counter-reset:steps}.steps li{counter-increment:steps;display:flex;gap:14px;margin-top:23px;font-size:12px;line-height:1.9}.steps li:before{content:counter(steps,decimal-leading-zero);font-size:12px;font-weight:650;color:var(--green);min-width:25px}.detail-foot{display:flex;justify-content:space-between;gap:15px;margin-top:35px;padding-top:20px;border-top:1px solid var(--line);font-size:11px}.small-dialog{width:490px;max-width:calc(100vw - 30px);padding:35px;border-radius:15px}.small-dialog h2{padding-right:20px;margin-bottom:20px}.small-dialog p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}.small-dialog form>label{display:grid;gap:9px;margin:16px 0;font-size:12px}.small-dialog input,.small-dialog textarea,.small-dialog select{padding:12px;border:1px solid var(--line);border-radius:7px;width:100%;max-width:none}.small-dialog textarea{resize:vertical;min-height:100px}.small-dialog .button{width:100%;margin-top:15px}.recipe-picker{display:grid;gap:9px;max-height:340px;overflow:auto}.recipe-picker button{padding:14px;text-align:left;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.recipe-picker button small{display:block;color:var(--muted);margin-top:6px}.timer-display{font-variant-numeric:tabular-nums;text-align:center;font-size:60px;letter-spacing:-3px;margin:20px 0}.timer-buttons{display:flex;gap:10px}.cooking-step{font-size:23px;line-height:1.65;margin:25px 0}.cooking-progress{font-size:10px;letter-spacing:2px;color:var(--green)}.auth-dialog{width:850px;border-radius:17px;overflow:hidden;background:#f8f5ed}.auth-card{display:grid;grid-template-columns:1fr 1fr;position:relative;min-height:600px;isolation:isolate}.auth-blade{position:absolute;width:150%;height:130%;left:-100%;top:-15%;background:linear-gradient(130deg,#437f70,#00604d 60%,#003b30);transform:skewX(12deg);z-index:-1}.auth-card[data-mode=signup] .auth-blade{left:50%}.auth-story{padding:60px 38px;display:flex;flex-direction:column;justify-content:center;color:#f7f6ef;grid-column:1;grid-row:1}.auth-story .eyebrow{color:#dfc5a1;margin-bottom:28px}.auth-story h2{font-size:39px;line-height:1.12;letter-spacing:-1.7px}.auth-story p{font-size:12px;line-height:1.8;max-width:200px;color:#d7e8df;margin-top:20px}.auth-story-bottom{font-size:10px;margin-top:90px;color:#c3dbce}.auth-form-panel{padding:45px 38px;grid-column:2;grid-row:1}.auth-card[data-mode=signup] .auth-form-panel{grid-column:1}.auth-card[data-mode=signup] .auth-story{grid-column:2;padding-left:55px}.auth-form-panel h2{font-size:26px;margin:12px 0 25px}.auth-form-panel .eyebrow{font-size:8px;letter-spacing:1.3px}.auth-form-panel label{font-size:10px;display:grid;gap:6px;margin-top:16px}.auth-form-panel input{padding:10px 0;width:100%;border:0;border-bottom:1px solid #b6c1b1;background:none;border-radius:0;outline-offset:2px;font-size:12px}.password-wrap{display:flex;align-items:center;border-bottom:1px solid #b6c1b1}.password-wrap input{border:0}.password-wrap button{border:0;background:none;padding:8px}.forgot{display:block;margin:10px 0 0 auto;padding:0;background:none;border:0;font-size:9px;color:var(--muted)}.auth-submit{width:100%;margin-top:18px;font-size:12px;padding:12px 17px;justify-content:space-between;border-radius:25px;background:linear-gradient(#437f70,#00604d);box-shadow:0 4px 9px #00604d22}.auth-divider{display:flex;align-items:center;gap:9px;margin:18px 0;font-size:8px;color:#7d8a80}.auth-divider:before,.auth-divider:after{content:'';height:1px;flex:1;background:#d9ddcf}.social-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.social-button{background:transparent;border:1px solid #cdd4c5;padding:10px;border-radius:25px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px}.social-button img,.social-button svg{width:15px;height:15px}.social-button svg{fill:var(--ink)}.auth-switch{text-align:center;font-size:9px;margin:19px 0 14px}.auth-switch button{font-size:9px;border:0;border-bottom:1px solid #768e79;background:none;padding:0;margin-left:3px}.guest-link{display:block;margin:auto;background:none;border:0;font-size:9px;color:#6d8179}.form-message{font-size:10px;line-height:1.6;color:#a34427;margin-top:14px;min-height:0}.toast{position:fixed;bottom:25px;left:calc(50% + 90px);transform:translateX(-50%);padding:15px 22px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:10px;box-shadow:0 8px 30px #183e341f;font-size:12px;z-index:20;max-width:calc(100vw - 40px);line-height:1.5}.auth-blade.sweep{animation:blade-sweep 620ms cubic-bezier(.77,0,.175,1)}@keyframes blade-sweep{0%{transform:translateX(0) skewX(12deg)}50%{transform:translateX(65%) skewX(12deg)}100%{transform:translateX(0) skewX(12deg)}}@media(hover:hover) and (pointer:fine){.nav-item:hover,.chip:hover{background:var(--pale);color:var(--green)}.card-open:hover .recipe-image{filter:brightness(1.04)}.recipe-card:hover{border-color:#adc9ba}.retailer:hover{background:var(--bg)}}@media(min-width:1500px){.recipes-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.recipe-image{height:190px}}@media(max-width:1100px){.sidebar{width:205px;padding-inline:16px}.workspace{margin-left:205px}.topbar{padding-inline:28px}#main{padding:30px 28px}.recipes-grid{gap:15px}.recipe-image{height:145px}.shopping-layout{grid-template-columns:1fr}.retailer-grid{grid-template-columns:repeat(3,1fr)}.memo-grid{grid-template-columns:1fr 1fr}}@media(max-width:800px){.sidebar{width:74px;padding:25px 11px}.brand span,.sidebar-label,.nav-item small,.nav-item{font-size:0}.brand{justify-content:center}.brand svg{width:35px;height:35px}.sidebar nav{margin-top:40px}.nav-item{padding:13px;justify-content:center;gap:0}.nav-item .nav-icon{width:24px;height:24px;flex:0 0 24px}.sidebar-bottom>a{width:42px;height:42px;margin:20px auto;font-size:0;justify-content:center;gap:0}.sidebar-bottom>a .app-icon{width:22px;height:22px;flex-basis:22px}.profile-button{width:42px;height:42px;padding:0;margin:0 auto;justify-content:center;gap:0}.profile-button>#account-label,.profile-button>span:last-child{display:none}.profile-button>.avatar{width:29px;height:29px;flex-basis:29px}.workspace{margin-left:74px}.recipes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head{align-items:start}.page-head>.button{font-size:11px;gap:8px;white-space:nowrap}.topbar{padding-inline:22px;height:70px}.topbar>span{font-size:10px}.top-actions{gap:17px}.hero-banner>div{max-width:80%;padding:25px}.hero-banner h2{font-size:29px}.hero-banner img{width:60%;opacity:.5}.profile-grid,.panel-grid{grid-template-columns:1fr}.app-footer{padding:25px}.detail-columns{grid-template-columns:1fr}.detail-header h2{font-size:32px}.detail-body{padding:25px}.detail-header{padding:30px}.auth-dialog{width:700px}.auth-story{padding-inline:25px}.auth-story h2{font-size:32px}.auth-form-panel{padding-inline:25px}.auth-card[data-mode=signup] .auth-story{padding-left:45px}.toast{left:calc(50% + 37px)}}@media(max-width:540px){.sidebar{width:58px;padding-inline:6px}.workspace{margin-left:58px}#main{padding:25px 17px}.topbar{padding-inline:17px}.topbar>span{display:none}.top-actions{width:100%;justify-content:space-between}.page-head{display:block}.page-head>.button{margin-top:20px}.recipes-grid{grid-template-columns:1fr}.recipe-image{height:195px}.search-row{flex-wrap:wrap}.searchbox{flex-basis:100%}.search-row select{max-width:none;width:100%}.hero-banner>div{max-width:100%;padding:24px}.hero-banner h2{font-size:30px}.hero-banner img{opacity:.23;width:100%;mask-image:none}.hero-banner p{max-width:240px}.hero-banner{margin-top:20px}.chips{gap:6px}.chip{padding:7px 11px;font-size:10px}.memo-grid{grid-template-columns:1fr}.app-footer span{display:none}.retailer-grid{grid-template-columns:1fr}.auth-card{display:block;min-height:0}.auth-story{display:none}.auth-blade{display:none}.auth-form-panel{padding:38px 30px}.auth-dialog{max-width:calc(100vw - 26px);max-height:95vh;overflow:auto}.auth-form-panel h2{font-size:27px}.detail-header>div{max-width:100%}.detail-header>img{opacity:.3;width:100%;mask-image:none}.detail-header h2{font-size:31px}.detail-foot{flex-wrap:wrap}.panel{padding:19px}.guest-note{align-items:start}.guest-note button{min-width:80px}.small-dialog{padding:30px 25px}.detail-actions .button{flex:1;white-space:nowrap}.profile-grid{gap:16px}.inline-form{flex-wrap:wrap}.inline-form .button{width:100%}.auth-switch,.guest-link{font-size:11px}.auth-switch button{font-size:11px}.auth-form-panel label{font-size:12px}.forgot{font-size:11px}.auth-form-panel input{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}dialog[open]{transform:none!important}}
/* Hidden form states retain their native accessibility semantics. */
[hidden]{display:none!important}
.auth-dialog{overflow:auto}
.auth-blade{left:-106%}
.auth-card[data-mode=signup] .auth-blade{left:56%}
@media(max-width:800px) and (min-width:541px){.auth-form-panel{padding:45px 28px}.auth-card{min-height:590px}.auth-story h2{font-size:30px}}
@media print{.sidebar,.topbar,.app-footer,.guest-note,.shopping-layout>aside,.inline-form,.page-head>.button{display:none!important}.workspace{margin:0}#main{padding:0}.shopping-layout{display:block}body{background:white}.panel{border:0;padding:0}.check-row{break-inside:avoid}}
.keyboard-mode dialog[open]{animation:none}
.friend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.friend-card p{overflow-wrap:anywhere;font-size:11px}.friend-card>small{color:var(--muted)}.friend-avatar{width:43px;height:43px;background:var(--pale);border-radius:50%;display:grid;place-items:center;font-size:21px;color:var(--green);margin-bottom:17px}.friend-actions{display:grid;gap:12px;margin-top:20px}.friend-actions button{text-align:left;justify-content:start}.friend-actions .text-button{font-size:11px}@media(max-width:1100px){.friend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.friend-grid{grid-template-columns:1fr}}
.auth-card{overflow:hidden}.auth-dialog{overflow-x:hidden}.auth-card[data-mode=signup] .auth-story{padding-left:100px}.auth-card[data-mode=signup] .auth-story h2{font-size:33px}.auth-card[data-mode=signup] .auth-story p{max-width:175px}@media(max-width:800px) and (min-width:541px){.auth-card[data-mode=signup] .auth-story{padding-left:88px}.auth-card[data-mode=signup] .auth-story h2{font-size:28px}}@media(max-width:800px){#account-label,.profile-button>span:last-child{display:none}.profile-button{justify-content:center;padding:7px;border:0;background:none}.sidebar-bottom>a{font-size:0}.sidebar-bottom>a:before{content:'←';font-size:18px}.sidebar-bottom{display:block}}@media(max-width:540px){h1{font-size:27px;text-wrap:balance;letter-spacing:-1px}}
.auth-card{overflow:clip}

.brand .brand-hat{width:36px;height:36px;flex-shrink:0;color:var(--green)}

/* Same Material glyphs as the Flutter mobile app, exported to SVG. */
.app-icon{width:1.25em;height:1.25em;display:inline-block;vertical-align:-.25em;flex:none;fill:currentColor}
.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none}
.nav-icon>span{display:inline-flex}.nav-icon .icon-selected{display:none}
.nav-item.selected .icon-outline{display:none}.nav-item.selected .icon-selected{display:inline-flex}
.nav-icon .app-icon{width:24px;height:24px}.text-button .app-icon{margin-right:4px}
.nav-item .nav-icon{width:24px;height:24px;flex:0 0 24px;display:inline-flex;align-items:center;justify-content:center}
.nav-item .nav-icon>span{align-items:center;justify-content:center}
.sidebar-bottom>a{display:flex;align-items:center;gap:10px}
.sidebar-bottom>a .app-icon{width:18px;height:18px;flex:0 0 18px}
.profile-button>.avatar{flex:0 0 29px}
.recipe-meta .app-icon{width:16px;height:16px;margin-right:3px}.searchbox .app-icon{width:21px;height:21px}
.empty-icon .app-icon{width:42px;height:42px}.save-icon .app-icon{width:21px;height:21px}
.close-button .app-icon{width:22px;height:22px}#toggle-password .app-icon{width:20px;height:20px}

/* Keep hidden labels and counters out of the compact navigation geometry. */
.sidebar-back:before{content:none!important}.sidebar-back>span:first-child{display:inline-flex;width:24px;flex:0 0 24px;align-items:center;justify-content:center}
.sidebar-back .app-icon{width:24px;height:24px;flex:0 0 24px}
@media(max-width:800px){
 .sidebar nav{min-width:0}.nav-item{width:100%;min-width:0}
 .nav-item small,.brand>span,.sidebar-back-label{display:none}
 .sidebar-back{gap:0!important}.sidebar-back .app-icon{width:24px;height:24px}
}
