@font-face{font-family:Barlow Condensed;src:url(/static/fonts/BarlowCondensed-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/static/fonts/BarlowCondensed-Bold.ttf) format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/static/fonts/BarlowCondensed-Black.ttf) format("truetype");font-style:normal;font-weight:900;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/static/fonts/BarlowCondensed-Italic.ttf) format("truetype");font-style:italic;font-weight:400;font-display:swap}:root{color:#000;background:#fff;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-synthesis:none;--ink: #000;--paper: #fff;--line: #000;--shadow: 7px 7px 0 #000;--shadow-small: 4px 4px 0 #000}*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-width:320px;min-height:100%;background:#fff}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.topbar{min-height:68px;padding:max(8px,env(safe-area-inset-top)) 14px 8px;display:grid;grid-template-columns:52px 1fr 52px;align-items:center;position:sticky;top:0;z-index:20;color:#fff;background:#000;border-bottom:3px solid #000}.brand{overflow:hidden;text-align:center;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;font-size:1.4rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.icon-link,.icon-space{width:48px;height:48px;display:grid;place-items:center;border:2px solid transparent;font-size:1.7rem;font-weight:900;text-decoration:none}.icon-link:active{color:#000;background:#fff;border-color:#fff}.page{width:min(1220px,100%);margin:0 auto;padding:30px clamp(16px,3vw,38px) 90px}.loading{min-height:50vh;display:grid;place-items:center;font-size:1.4rem;font-weight:700}.home-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:32px}.home-heading h1{max-width:800px;margin:0;font-size:clamp(3rem,9vw,7rem);font-weight:900;letter-spacing:-.04em;line-height:.8;text-transform:uppercase}.small-link,.settings-link{min-height:50px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;border:3px solid #000;color:#000;background:#fff;box-shadow:var(--shadow-small);text-decoration:none;font-size:1.1rem;font-weight:900;text-transform:uppercase}.app-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(22px,5vw,50px)}.app-card{min-height:320px;padding:14px;display:grid;grid-template-rows:1fr auto;gap:12px;border:4px solid #000;background:#fff;box-shadow:10px 10px #000}.app-launch{display:grid;place-items:center;padding:22px;border:3px solid #000;color:#fff;background:#000;text-align:center;text-decoration:none;font-size:clamp(3rem,8vw,6rem);line-height:.8;font-weight:900;letter-spacing:-.04em;text-transform:uppercase}.app-launch:active{color:#000;background:#fff}.settings-link{justify-self:end;box-shadow:none}.settings-form{max-width:840px;margin:0 auto;display:grid;gap:32px}.settings-form.wide{max-width:1160px}.panel{padding:clamp(20px,4vw,34px);border:3px solid #000;background:#fff;box-shadow:var(--shadow)}.panel h1,.panel h2{margin:0 0 20px;font-size:clamp(2.8rem,7vw,5.6rem);font-weight:900;letter-spacing:-.035em;line-height:.78;text-transform:uppercase}.panel p{margin:0 0 18px;font-size:1.1rem}.eyebrow{margin:0 0 10px!important;font-size:.95rem!important;font-weight:900;letter-spacing:.14em;text-transform:uppercase}label{display:grid;gap:7px;margin-bottom:16px;font-size:1rem;font-weight:700;text-transform:uppercase}label small,label span small{display:block;margin-top:3px;font-weight:400;text-transform:none}input,select,textarea{width:100%;min-height:52px;padding:10px 13px;border:2px solid #000;border-radius:0;color:#000;background:#fff}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:4px solid #000;outline-offset:2px}.verse-input{font-size:1.2rem;line-height:1.35}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.switch-row{grid-template-columns:30px 1fr;align-items:center;border:2px solid #000;padding:14px}.switch-row input,.check-label input{width:26px;min-height:26px}.save-button{min-height:78px;padding:14px 26px;border:4px solid #000;color:#fff;background:#000;box-shadow:var(--shadow);font-size:1.8rem;font-weight:900;text-transform:uppercase;cursor:pointer}.save-button:active,.add-button:active,.text-button:active{transform:translate(3px,3px);box-shadow:1px 1px #000}.notice{padding:14px 16px;border:3px solid #000;background:#fff;box-shadow:var(--shadow-small);display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:1.1rem;font-weight:700}.notice.success{color:#fff;background:#000}.notice.error{border-width:5px;font-weight:900}.notice a{flex:none;padding:8px 10px;border:2px solid currentColor;text-transform:uppercase}.launcher{min-height:calc(100vh - 170px);display:grid;align-content:center;gap:clamp(24px,5vh,44px)}.launcher-title{width:calc(100% - 10px);min-height:clamp(190px,38vh,340px);margin-right:10px;border:5px solid #000;color:#fff;background:#000;box-shadow:10px 10px #000;font-size:clamp(4.2rem,15vw,10rem);line-height:.72;font-weight:900;letter-spacing:-.06em;text-transform:uppercase;cursor:pointer}.launcher-bible .launcher-title{color:#000;background:#fff;cursor:default}.launcher-title:active:not(:disabled){color:#000;background:#fff;transform:translate(5px,5px);box-shadow:5px 5px #000}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,28px)}.level-grid button{min-height:clamp(110px,22vh,190px);border:4px solid #000;color:#000;background:#fff;box-shadow:var(--shadow);font-size:clamp(2.2rem,6vw,4rem);font-weight:900;text-transform:uppercase;cursor:pointer}.level-grid button:active:not(:disabled){color:#fff;background:#000;transform:translate(4px,4px);box-shadow:3px 3px #000}button:disabled{opacity:.35;cursor:not-allowed}.launcher-help{text-align:center;font-size:1.4rem;font-weight:700;text-transform:uppercase}.section-heading{display:flex;align-items:start;justify-content:space-between;gap:22px;margin-bottom:20px}.section-heading h2,.section-heading p{margin:0 0 8px}.add-button,.text-button{min-height:50px;border:3px solid #000;padding:10px 17px;color:#fff;background:#000;box-shadow:var(--shadow-small);font-weight:900;text-transform:uppercase;cursor:pointer}.text-button{min-height:44px;color:#000;background:#fff;box-shadow:none}.editable-list{display:grid;gap:14px}.editable-row{display:grid;gap:10px;align-items:end;padding:14px;border:2px solid #000}.editable-row label{margin:0;font-size:.85rem}.food-row{grid-template-columns:1.6fr 1.3fr .8fr .6fr .8fr 48px}.timing-row{grid-template-columns:1.5fr 1fr 1.1fr 48px}.check-label{min-height:50px;grid-template-columns:28px 1fr;align-items:center}.remove-button{width:46px;height:48px;border:2px solid #000;background:#fff;color:#000;font-size:1.8rem;cursor:pointer}.empty{text-align:center;padding:20px}.hero-panel{display:grid;grid-template-columns:1fr minmax(240px,.4fr);align-items:end;gap:10px 34px;color:#fff;background:#000;box-shadow:9px 9px #fff,12px 12px #000}.hero-panel .eyebrow{grid-column:1 / -1}.hero-panel h1,.birth-date{margin:0}.birth-date input{border-color:#fff;color:#fff;background:#000;color-scheme:dark;font-size:1.2rem}.pantry-add{display:grid;grid-template-columns:1.5fr 1.2fr .9fr .6fr 1fr;gap:0 12px;padding:18px;border:3px solid #000}.pantry-add label{margin-bottom:12px}.pantry-add-button{grid-column:1 / -1;width:100%}.pantry-groups{display:grid;gap:28px;margin-top:30px}.pantry-group{border:3px solid #000}.pantry-group>h3{min-height:62px;margin:0;padding:10px 14px;display:flex;align-items:center;gap:11px;color:#fff;background:#000;font-size:1.7rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase}.pantry-group>h3 span{margin-left:auto;width:34px;height:34px;display:grid;place-items:center;border:2px solid #fff}.category-icon{width:38px;height:38px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pantry-list{display:grid}.pantry-item{position:relative;min-width:0;padding:18px 68px 18px 18px;display:grid;grid-template-columns:1.1fr 1.2fr 1fr;align-items:center;gap:18px;border-top:2px solid #000}.pantry-item:first-child{border-top:0}.pantry-name{min-width:0;display:grid;gap:7px}.pantry-name strong{overflow-wrap:anywhere;font-size:1.7rem;font-weight:900;line-height:.9;text-transform:uppercase}.digestibility{display:flex;gap:4px}.digestibility i{width:15px;height:15px;display:block;border:2px solid #000}.digestibility i.filled{background:#000}.pantry-item dl{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pantry-item dl div{min-width:0}.pantry-item dt{font-size:.75rem;font-weight:700;text-transform:uppercase}.pantry-item dd{margin:2px 0 0;font-size:1.05rem;font-weight:900}.stock-controls{display:grid;grid-template-columns:60px 1fr 60px;align-items:stretch;border:3px solid #000}.stock-controls button{min-height:62px;border:0;color:#fff;background:#000;font-size:2.4rem;font-weight:900;cursor:pointer}.stock-controls button:first-child{border-right:3px solid #000}.stock-controls button:last-child{border-left:3px solid #000}.stock-controls button:active:not(:disabled){color:#000;background:#fff}.stock-controls span{display:grid;place-items:center;align-content:center;padding:4px;text-align:center;font-size:.72rem;font-weight:700;line-height:1;text-transform:uppercase}.stock-controls b{margin-top:3px;font-size:1rem}.delete-button{width:46px;height:46px;padding:9px;display:grid;place-items:center;border:2px solid #000;color:#000;background:#fff;cursor:pointer}.delete-button:hover,.delete-button:active{color:#fff;background:#000}.delete-button svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter}.pantry-item>.delete-button{position:absolute;top:12px;right:12px}.empty-state{padding:24px;border:3px dashed #000;text-align:center;font-size:1.2rem!important;font-weight:700}.rules-panel{padding-left:clamp(14px,3vw,28px);padding-right:clamp(14px,3vw,28px)}.age-instructions{display:grid;gap:34px}.age-card{border:4px solid #000;box-shadow:var(--shadow)}.age-card-header{min-height:76px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#fff;background:#000}.age-range{display:flex;align-items:end;gap:10px}.age-range label{width:84px;margin:0;font-size:.75rem}.age-range input{min-height:43px;border-color:#fff;color:#fff;background:#000;font-size:1.3rem;font-weight:900}.age-range>span,.age-range>b{padding-bottom:10px;text-transform:uppercase}.age-card-header .delete-button{border-color:#fff;color:#fff;background:#000}.age-card-header .delete-button:hover{color:#000;background:#fff}.meals-grid{display:grid;gap:0}.meal-rule{padding:18px;border-top:3px solid #000}.meal-rule:first-child{border-top:0}.meal-rule-header{display:grid;grid-template-columns:56px 1fr auto;align-items:stretch;margin-bottom:15px}.meal-number{display:grid;place-items:center;color:#fff;background:#000;font-size:1.5rem;font-weight:900}.meal-rule-header>input{border-width:3px;font-size:1.45rem;font-weight:900;text-transform:uppercase}.mix-switch{min-width:126px;margin:0;display:grid;grid-template-columns:26px 1fr;align-items:center;gap:7px;padding:8px 10px;border:3px solid #000;border-left:0;cursor:pointer}.mix-switch input{width:22px;min-height:22px}.mix-switch span{font-size:.9rem;font-weight:900}.portions-list{display:grid;gap:9px;margin-bottom:12px}.portion-row{display:grid;grid-template-columns:42px minmax(150px,1.4fr) minmax(90px,.7fr) minmax(70px,.5fr) minmax(90px,.65fr) auto;align-items:end;gap:8px;padding:10px;border:2px solid #000}.portion-row label{margin:0;font-size:.72rem}.portion-order{min-height:52px;display:grid;place-items:center;color:#fff;background:#000;font-size:1.25rem;font-weight:900}.portion-actions{display:flex}.portion-actions button{width:38px;min-height:52px;border:2px solid #000;border-left:0;background:#fff;font-size:1.15rem;font-weight:900;cursor:pointer}.portion-actions button:first-child{border-left:2px solid #000}.empty-meal{padding:10px;border:2px dashed #000}.unlock-page{min-height:100vh;padding:24px;display:grid;place-items:center}.unlock-card{width:min(520px,100%);padding:clamp(24px,6vw,42px);border:4px solid #000;background:#fff;box-shadow:10px 10px #000}.unlock-card h1{margin:0 0 12px;font-size:clamp(3.5rem,12vw,6rem);font-weight:900;line-height:.78;text-transform:uppercase}.unlock-card p{font-size:1.15rem}.unlock-card .error{padding:12px;border:3px solid #000;font-weight:900}.unlock-card button{width:100%;min-height:68px;margin-top:18px;border:3px solid #000;color:#fff;background:#000;box-shadow:var(--shadow-small);font-size:1.4rem;font-weight:900;text-transform:uppercase;cursor:pointer}@media(max-width:920px){.pantry-add{grid-template-columns:repeat(2,1fr)}.pantry-add-button{grid-column:1 / -1}.pantry-item{grid-template-columns:1fr 1.4fr}.stock-controls{grid-column:1 / -1}.portion-row{grid-template-columns:42px 1fr 1fr 1fr}.portion-row label:first-of-type{grid-column:2 / -1}.portion-actions{grid-column:2 / -1}}@media(max-width:760px){.page{padding-top:22px}.app-grid,.field-grid{grid-template-columns:1fr}.app-card{min-height:250px}.home-heading{align-items:start;flex-direction:column}.level-grid{grid-template-columns:1fr}.level-grid button{min-height:100px}.launcher{align-content:start}.launcher-title{min-height:210px}.hero-panel{grid-template-columns:1fr}.hero-panel .eyebrow{grid-column:auto}.pantry-item{grid-template-columns:1fr;padding-right:62px}.pantry-item dl{grid-template-columns:repeat(3,1fr)}.stock-controls{grid-column:auto}.section-heading{flex-direction:column}.section-heading .add-button{width:100%}.meal-rule-header{grid-template-columns:48px 1fr}.mix-switch{grid-column:1 / -1;border-left:3px solid #000;border-top:0}}@media(max-width:520px){.topbar{grid-template-columns:46px 1fr 46px}.brand{font-size:1.15rem}.panel{padding:17px}.pantry-add{grid-template-columns:1fr;padding:12px}.pantry-add-button{grid-column:auto}.pantry-item dl{grid-template-columns:1fr}.stock-controls{grid-template-columns:62px 1fr 62px}.notice{align-items:stretch;flex-direction:column}.age-card-header{align-items:start}.age-range{flex-wrap:wrap}.age-range>b{width:100%;padding:0}.portion-row{grid-template-columns:38px 1fr 1fr}.portion-row label:first-of-type{grid-column:2 / -1}.portion-row label:nth-of-type(4){grid-column:2 / -1}.portion-actions{grid-column:2 / -1}}
