:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff;background:#f4f7f4;font-synthesis:none;--bg:#f4f7f4;--paper:#ffffffdf;--ink:#18372d;--muted:#83938b;--line:#e7eee8;--green:#287c60;--mint:#e8f3ec;--blue:#739bd1;--glass:#ffffffe0;--input:#f2f6f2;color-scheme:light;font-size:16px}*{box-sizing:border-box}body{margin:0;min-height:100dvh;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{border:0;background:none;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.45;cursor:wait}a{color:inherit;text-decoration:none}input,select{min-width:0;color:var(--ink)}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:4px}h1,h2,h3,p{margin:0}fieldset{border:0;padding:0;margin:0;min-width:0}.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 85% 10%,#d9ead950,transparent 47%),radial-gradient(ellipse at 0% 65%,#cfe6e233,transparent 40%)}.skip-link{position:fixed;left:16px;top:-100px;background:var(--green);color:#fff;padding:14px;z-index:200}.skip-link:focus{top:15px}.app-frame{max-width:760px;margin:0 auto;min-height:100dvh}.app-header{padding:calc(20px + env(safe-area-inset-top)) 26px 14px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:23px;font-weight:750;letter-spacing:-1.2px}.wordmark>span{color:#fff}.header-end{display:flex;align-items:center;gap:12px}.connection-dot{width:5px;height:5px;background:#68a383;border-radius:50%}.connection-dot.disconnected{background:#cc9c69}.profile-button{width:38px;height:38px;border-radius:50%;background:#e0ece2;color:#fff;border:1px solid #d6e4d8;font-size:13px;font-weight:650}.page{padding:20px 25px calc(130px + env(safe-area-inset-bottom));max-width:640px;margin:auto}.page-heading{margin-bottom:26px}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:1.35px;text-transform:uppercase;color:var(--muted);margin-bottom:9px}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:15px}h1{font-size:37px;font-weight:730;letter-spacing:-1.7px;line-height:1.22}.title-dot{color:#fff}.subtitle{font-size:13px;color:var(--muted);line-height:1.7;margin-top:9px}.card{background:var(--paper);border:1px solid #fff;border-radius:26px;box-shadow:0 4px 18px #244b3304,0 1px 2px #21472b03}.day-card{padding:22px 21px 24px}.card-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.section-label{font-size:9px;font-weight:650;letter-spacing:1.45px;color:#fff}.quiet-icon{color:#fff;display:flex}.quiet-icon app-icon{width:17px;height:17px}.counters{display:grid;grid-template-columns:1fr 1fr;gap:26px}.counter{min-width:0}.metric-label{display:flex;align-items:center;gap:6px;color:#fff;font-size:10px;white-space:nowrap}.metric-label i{width:5px;height:5px;border-radius:50%;background:#77a68b}.protein .metric-label i{background:#8aa7d0}.counter>strong{display:flex;align-items:baseline;font-size:43px;letter-spacing:-2px;font-weight:650;margin:12px 0 17px;gap:5px;font-variant-numeric:tabular-nums}.counter>strong>small{font-size:12px;letter-spacing:0;font-weight:500;color:#fff}.protein>strong{color:#6588ad}.progress{height:5px;background:#edf3ec;border-radius:5px;overflow:hidden}.progress>span{display:block;height:100%;background:#81b49a;border-radius:5px;transition:width .35s}.protein .progress>span{background:#9eb8d5}.metric-foot{display:block;font-size:10px;color:#fff;margin-top:10px;font-variant-numeric:tabular-nums}.current-card{padding:22px;margin-top:17px;background:linear-gradient(145deg,#edf5eb,#eaf3ee);border-color:#e0eadf}.current-top{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:18px}.meal-symbol{width:43px;height:43px;flex-shrink:0;display:grid;place-items:center;border-radius:14px;background:#f0f5ee;color:#fff}.current-card .meal-symbol,.current-symbol{background:#dcebdc;color:#fff}.meal-symbol app-icon{width:22px;height:22px}.status-pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid #d6e4d6;border-radius:30px;padding:7px 10px;color:#fff;background:#f8fcf669;font-size:9px;font-weight:500}.status-pill>span{width:4px;height:4px;background:#73a485;border-radius:50%}.current-card h2{font-size:24px;letter-spacing:-.8px;font-weight:650}.current-card>.subtitle{font-size:11px;color:#fff}.meal-remaining{display:flex;align-items:center;gap:24px;margin:28px 0}.meal-remaining>div{flex:1}.meal-remaining strong{display:block;font-size:31px;font-weight:600;letter-spacing:-1px;font-variant-numeric:tabular-nums}.meal-remaining strong small{font-size:13px;font-weight:400;letter-spacing:0;color:#fff}.meal-remaining div>span{display:block;font-size:10px;color:#fff;margin-top:6px}.vertical-line{width:1px;height:33px;background:#d8e5d9}.button{min-height:51px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 20px;border-radius:17px;font-size:13px;font-weight:600;transition:transform .15s,background .15s}.button:active{transform:scale(.98)}.button app-icon{width:18px;height:18px}.primary{background:var(--green);color:#fff;box-shadow:0 3px 8px #287c6014}.primary:hover{background:#236f56}.secondary{background:var(--mint);color:var(--green)}.full{width:100%}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:44px;font-size:11px;color:var(--green);font-weight:500}.text-button app-icon{width:14px;height:14px}.current-card>.text-button{margin-top:4px;color:#fff;font-size:10px}.subtle-link{display:flex;align-items:center;justify-content:center;gap:4px;color:#fff;font-size:11px;min-height:54px;width:100%;margin-top:6px}.subtle-link app-icon{width:14px;height:14px}.end-card{padding:32px 25px;margin-top:17px;text-align:center}.end-card>app-icon{width:32px;height:32px;color:#94a6bc;margin-bottom:20px}.end-card h2{font-size:23px;letter-spacing:-.6px}.end-card p{font-size:12px;color:var(--muted);line-height:1.8;margin:13px 0 22px}.glass{background:var(--glass);backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%);border:1px solid #ffffffcc;box-shadow:0 10px 45px #23452c15,inset 0 1px 1px #fff9}.tabbar{position:fixed;left:50%;bottom:calc(15px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(450px,calc(100% - 36px));border-radius:30px;padding:7px 8px;display:grid;grid-template-columns:repeat(4,1fr);z-index:40;gap:4px}.tabbar>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:9px;min-height:52px;border-radius:24px;color:#fff;transition:background .2s}.tabbar>button app-icon{width:22px;height:22px;stroke-width:1.8}.tabbar>button.active{background:#e2eee6;color:#fff;font-weight:650}.round-button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff}.round-button app-icon{width:20px;height:20px}.round-button:hover{background:#eaf0e8}.round-button.accent{background:#e0eee5;color:#fff}.round-button.accent app-icon{width:23px;height:23px}.back-button{display:flex;align-items:center;gap:0;color:var(--green);font-size:13px;min-height:42px;margin:-12px 0 6px -9px}.back-button app-icon{width:22px;height:22px}.day-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-3px 0 19px;padding:4px 9px;background:var(--paper);border:1px solid #fff;border-radius:18px}.day-picker label{position:relative;font-size:12px;font-weight:550;min-height:44px;display:grid;place-items:center}.day-picker input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.day-picker input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.day-picker label:focus-within{outline:2px solid var(--green);outline-offset:4px;border-radius:8px}.meal-list{padding:0 18px}.meal-row{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:22px 0;border-bottom:1px solid var(--line)}.meal-row:last-child{border:0}.meal-row-main{flex:1;min-width:0}.meal-row-main>strong{display:block;font-size:12px;font-weight:600;line-height:1.5}.meal-row-main>small{display:block;font-size:10px;color:#fff;margin-top:5px}.meal-row-main small>span{margin:0 4px;color:#fff}.meal-row-values{text-align:right;flex-shrink:0}.meal-row-values>strong{display:block;font-size:12px;font-weight:550}.meal-row-values>strong>small{font-size:9px;color:#fff;font-weight:400}.meal-row-values>small{display:block;margin-top:5px;font-size:9px;color:#fff}.meal-row>app-icon{width:13px;height:13px;color:#fff}.day-recap{display:flex;flex-direction:column;align-items:center;gap:9px;font-size:10px;margin-top:25px;color:#fff}.day-recap strong{font-weight:500;font-size:11px;color:#fff}.day-recap strong>span{margin:0 7px;color:#fff}.detail-date{display:block;color:var(--muted);font-size:11px;margin-top:-13px;margin-bottom:22px;text-transform:capitalize}.meal-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:22px}.meal-summary>div>span{display:block;font-size:10px;color:#fff}.meal-summary strong{display:block;font-size:25px;font-weight:600;letter-spacing:-.6px;margin-top:8px}.meal-summary strong>small{font-size:10px;font-weight:400;letter-spacing:0;color:#fff}.section-row{display:flex;align-items:center;justify-content:space-between;margin:28px 2px 14px;gap:10px}.section-row h2{font-size:15px;font-weight:650;letter-spacing:-.3px}.section-row>span{font-size:10px;color:#fff}.entry-list{list-style:none;margin:0;padding:0 17px}.entry-list>li{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid var(--line)}.entry-list>li:last-child{border:0}.food-thumb{width:52px;height:52px;border-radius:15px;object-fit:cover;flex-shrink:0;display:block;background:#edf3e9}.food-thumb.fallback{display:grid;place-items:center;color:#fff}.food-thumb.fallback app-icon{width:23px;height:23px}.entry-main{min-width:0;flex:1}.entry-main>strong{display:block;font-size:12px;font-weight:550;overflow-wrap:anywhere;line-height:1.5}.entry-main>small{display:block;font-size:10px;color:#fff;margin-top:7px;line-height:1.6}.destructive{color:#c4a49b;min-width:36px}.destructive:hover{background:#fbede7;color:#b97965}.destructive app-icon{width:17px;height:17px}.small-empty{padding:35px 22px;text-align:center}.small-empty>app-icon{color:#fff;width:27px;height:27px;margin-bottom:15px}.small-empty p{font-size:12px;line-height:1.8;color:#fff}.page-cta{margin-top:24px}.search-field{display:flex;align-items:center;gap:9px;min-height:49px;background:#e8eee7a8;border:1px solid #e1e9df;border-radius:17px;padding:0 15px;margin-bottom:20px}.search-field app-icon{width:18px;height:18px;color:#fff}.search-field input{width:100%;border:0;background:none;outline:0;min-height:47px;font-size:13px}.search-field input::placeholder{color:#fff}.search-field:focus-within{outline:2px solid #9cbaa6;outline-offset:2px}.food-list{padding:0 16px}.food-row{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:16px 0}.food-row:last-child{border:0}.food-select{flex:1;min-width:0;display:flex;align-items:center;gap:13px;text-align:left;padding:0}.food-name{display:block;min-width:0}.food-name strong{display:block;overflow-wrap:anywhere;font-size:13px;font-weight:600;line-height:1.6}.food-name small{display:block;font-size:9px;line-height:1.8;color:#fff;margin-top:3px}.photo-action{min-width:38px}.photo-action app-icon{width:17px;height:17px}.empty-state{padding:48px 15px;text-align:center}.empty-icon{display:grid;place-items:center;width:80px;height:80px;border-radius:27px;background:#e5eee2;color:#fff;margin:0 auto 25px}.empty-icon app-icon{width:33px;height:33px}.empty-state h2{font-size:24px;letter-spacing:-.8px;line-height:1.4;font-weight:650;max-width:270px;margin:auto}.empty-state p{font-size:12px;color:#fff;line-height:1.8;margin:15px auto 25px;max-width:250px}.identity{padding:23px;display:flex;align-items:center;gap:15px}.large-avatar{width:55px;height:55px;border-radius:50%;display:grid;place-items:center;background:#e1ede2;color:#fff;font-size:22px;font-weight:550;flex-shrink:0}.identity>div{flex:1;min-width:0}.identity h2{font-size:22px;font-weight:650;letter-spacing:-.5px;overflow-wrap:anywhere}.identity p{color:#fff;font-size:11px;margin-top:6px}.identity>.status-pill{font-size:8px}.settings-group{margin-top:29px}.group-label{font-size:9px;font-weight:600;letter-spacing:1.5px;color:#fff;margin:0 19px 12px}.settings-list{padding:0 17px}.settings-list>button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;min-height:70px;border-bottom:1px solid var(--line);font-size:12px;font-weight:500;padding:12px 0}.settings-list>button:last-child{border:0}.settings-list>button>span:nth-child(2){flex:1}.settings-list>button>app-icon{width:15px;height:15px;color:#fff}.setting-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center}.setting-icon app-icon{width:18px;height:18px}.setting-icon.green{background:#e7f1e5;color:#fff}.setting-icon.blue{background:#e8eef6;color:#8da9c3}.household{padding:0 20px}.member{display:flex;align-items:center;gap:11px;padding:18px 0;border-bottom:1px solid var(--line)}.member-avatar{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#eff3e9;color:#fff;font-size:11px;flex-shrink:0}.member strong{font-size:12px;font-weight:550;flex:1;overflow-wrap:anywhere}.member>span:last-child{font-size:10px;color:#fff}.member:last-child{border:0}.invite-button{display:flex;gap:8px;align-items:center;min-height:66px;font-size:12px;color:#fff}.invite-button app-icon{width:18px;height:18px}.group-footnote{font-size:10px;color:#fff;line-height:1.8;margin:13px 18px 0}.invite-result{padding:0 0 16px}.invite-result p{font-size:10px;color:#fff;line-height:1.7;margin:0 0 10px}.invite-result input{width:100%;font-size:11px}.logout-button{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;min-height:52px;margin-top:25px;color:#ab8b7f;font-size:12px}.logout-button app-icon{width:16px;height:16px}.version-label{text-align:center;color:#fff;font-size:10px;margin-top:18px}.goals-description{margin:-12px 0 23px;max-width:380px}.goal-list{padding:0 21px}.goal-row{padding:21px 0;border-bottom:1px solid var(--line)}.goal-row:last-child{border:0}.goal-row-heading{display:flex;align-items:center;gap:10px}.goal-row-heading .meal-symbol{width:31px;height:31px;border-radius:10px}.goal-row-heading app-icon{width:17px;height:17px}.goal-row-heading>strong{font-size:12px;font-weight:550;flex:1;line-height:1.6}.goal-row-heading>small{font-size:9px;white-space:nowrap;color:#fff}.goal-inputs{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:16px}label{display:block;font-size:11px;color:#fff;font-weight:500}input:not([type=file]):not([type=search]):not([type=date]),select{display:block;background:var(--input);border:1px solid #e4ece0;border-radius:13px;padding:13px 14px;width:100%;min-height:49px;font-size:16px;margin-top:8px;outline:none;font-weight:400}input:focus,select:focus{outline:2px solid #a3bfa8!important;outline-offset:1px}input::placeholder{color:#fff;font-size:13px}.input-unit{position:relative}.input-unit input{padding-right:45px!important}.input-unit>span{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:11px;color:#fff}.goal-total{padding:23px 4px 0;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:#fff}.goal-total strong{font-size:11px;font-weight:550;color:#fff}.goal-total strong span{margin:0 5px;color:#fff}.notice{display:flex;gap:8px;align-items:center;background:#f7f0e3;color:#aa956c;font-size:11px;line-height:1.7;border-radius:13px;padding:12px 14px;margin-bottom:23px}.notice app-icon{width:17px;height:17px}.error{background:#f9ede7;color:#ad7664;font-size:12px;line-height:1.8;padding:13px 15px;border-radius:13px;margin-bottom:20px;overflow-wrap:anywhere}.error>button{display:block;color:#946451;text-decoration:underline;min-height:36px;padding:0;font-size:11px}.loading{font-size:12px;color:#fff;text-align:center;padding:20px}.auth-shell{width:min(450px,100%);padding:calc(55px + env(safe-area-inset-top)) 24px 45px;margin:0 auto}.app-logo{display:flex;gap:14px;align-items:center;justify-content:center;margin-bottom:38px}.app-logo>img{border-radius:21px;box-shadow:0 7px 20px #23452c15}.app-logo>span{font-size:40px;font-weight:750;letter-spacing:-2px}.logo-dot{color:#fff}.auth-card{background:var(--paper);border:1px solid #fff;border-radius:30px;padding:30px 25px}.auth-card h1{font-size:29px;letter-spacing:-1px;line-height:1.3}.auth-card .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:13px}.auth-card .subtitle{font-size:12px;margin:12px 0 25px}.auth-form label{margin-bottom:17px}.auth-form .button{margin-top:7px}.auth-toggle{font-size:10px;width:100%;line-height:1.8;margin-top:13px}.auth-footer{display:flex;gap:7px;align-items:center;justify-content:center;font-size:9px;color:#fff;margin-top:27px}.auth-footer app-icon{width:12px;height:12px}.sheet{color:var(--ink);background:var(--bg);border:1px solid #ffffffa8;box-shadow:0 20px 90px #14342530;border-radius:30px;padding:0 24px 28px;width:min(520px,calc(100% - 28px));max-height:90dvh;overscroll-behavior:contain}.sheet::backdrop{background:#18342555;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.sheet-handle{width:33px;height:4px;border-radius:4px;background:#d2ddcd;margin:11px auto}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}.sheet-header h2{font-size:23px;letter-spacing:-.8px;font-weight:650;line-height:1.4}.sheet-header .round-button{background:#e8eee3;min-width:33px;min-height:33px;color:#fff}.sheet-header app-icon{width:17px;height:17px}.sheet-subtitle{font-size:12px;color:#fff;line-height:1.8;margin:-5px 0 20px}.sheet-subtitle strong{color:#fff;font-weight:550}.food-options{max-height:44dvh;overflow:auto;margin-bottom:20px}.food-option{display:flex;align-items:center;gap:13px;padding:14px 0;width:100%;text-align:left;border-bottom:1px solid var(--line)}.food-option>span:nth-child(2){flex:1;min-width:0}.food-option strong{display:block;font-size:13px;font-weight:550;overflow-wrap:anywhere}.food-option small{display:block;font-size:10px;color:#fff;margin-top:6px;line-height:1.7}.food-option>app-icon{color:#fff;width:18px;height:18px}.no-food{text-align:center;padding:30px 10px;color:#fff}.no-food>app-icon{width:29px;height:29px;margin-bottom:15px}.no-food p{font-size:12px}.selected-food{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--paper);border:1px solid #fff;border-radius:17px;padding:14px;margin-bottom:25px}.selected-food>span:nth-child(2){flex:1;min-width:0}.selected-food strong{display:block;font-size:14px;font-weight:550;overflow-wrap:anywhere}.selected-food small{display:block;font-size:10px;color:#fff;margin-top:6px}.selected-food>app-icon{width:16px;height:16px;color:#fff}.portion-label{font-size:11px}.portion-input{margin-bottom:23px}.portion-input input{font-size:32px!important;font-weight:550!important;text-align:center;min-height:75px!important;background:var(--paper)!important;letter-spacing:-1px}.portion-input>span{font-size:15px}.meal-select-label select{font-size:13px;margin-bottom:20px;appearance:auto}.portion-recap{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;background:#e6f0e1;border:1px solid #dce8d4;border-radius:13px;padding:17px 13px;margin:22px 0;color:#fff}.portion-recap>strong{font-size:13px;color:#fff;white-space:nowrap;font-weight:550}.portion-recap>span:last-child{font-size:9px;white-space:nowrap}.segmented{display:flex;background:#e5ecdf;border-radius:14px;padding:4px;gap:4px;margin-bottom:23px}.segmented button{min-height:37px;flex:1;font-size:12px;color:#fff;border-radius:11px}.segmented button.selected{background:var(--paper);color:#fff;box-shadow:0 2px 4px #2c50200a;font-weight:600}.photo-picker{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;border:1px dashed #ccdbc1;border-radius:20px;background:#edf3e8;min-height:150px;overflow:hidden;margin:0 0 24px;text-align:center;color:#fff;cursor:pointer;padding:20px}.photo-picker>input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.photo-picker>img{width:100%;height:180px;object-fit:cover;border-radius:12px;margin-bottom:13px}.photo-picker>span:last-of-type{font-size:12px;font-weight:550}.photo-picker small{display:block;font-size:9px;color:#fff;font-weight:400;line-height:1.7;margin-top:6px}.camera-bubble{display:grid;place-items:center;width:45px;height:45px;border-radius:15px;background:#e2ecd9;color:#fff;margin-bottom:13px}.camera-bubble app-icon{width:23px;height:23px}.sheet label{margin-bottom:17px}.sheet .photo-picker{margin-bottom:22px}.optional{font-size:9px;color:#fff;font-weight:400;margin-left:6px}.nutrient-inputs{display:grid;grid-template-columns:1fr 1fr;gap:5px 16px}.sheet-submit{margin-top:10px}.form-note{font-size:11px;line-height:1.8;color:#fff;margin:5px 0 20px}.install-intro{text-align:center;padding:15px 0}.install-intro img{border-radius:22px;box-shadow:0 5px 15px #24452b15;margin-bottom:17px}.install-intro p{font-size:12px;color:#fff;line-height:1.8;max-width:230px;margin:auto}.install-steps{list-style:none;padding:0;margin:18px 0 25px}.install-steps>li{display:flex;align-items:flex-start;gap:13px;margin-top:20px}.install-steps>li>span{width:27px;height:27px;display:grid;place-items:center;flex-shrink:0;background:#e2eddb;border-radius:50%;color:#fff;font-size:11px}.install-steps p{font-size:12px;color:#fff;line-height:1.9;flex:1}.install-steps strong{font-weight:550;color:#fff}.toast{position:fixed;left:50%;bottom:calc(100px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:11px;width:max-content;max-width:calc(100% - 40px);padding:14px 21px;border-radius:24px;font-size:12px;color:var(--green);line-height:1.7}.toast>span{display:grid;place-items:center;border-radius:50%;width:22px;height:22px;background:#dcecd6;flex-shrink:0}.toast app-icon{width:13px;height:13px}@media(min-width:761px){.app-header{padding:32px 65px 13px}.page{padding-top:31px}.page-heading{margin-bottom:32px}h1{font-size:42px}.day-card{padding:26px 30px 30px}.counter>strong{font-size:53px}.metric-label{font-size:12px}.metric-foot{font-size:11px}.current-card{padding:27px 30px}.current-card h2{font-size:28px}.meal-remaining{margin:29px 0}.current-card>.button{min-height:54px}.tabbar{bottom:24px}.auth-shell{padding-top:80px}.auth-card{padding:35px}.meal-row-main strong{font-size:14px}.meal-row{padding:24px 0}.meal-row-values strong{font-size:14px}}@media(max-width:500px){.sheet{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;border-radius:30px 30px 0 0;max-height:92dvh;padding-bottom:calc(25px + env(safe-area-inset-bottom))}.sheet-header{margin-top:3px}.page{padding-top:18px}.auth-shell{padding-top:calc(45px + env(safe-area-inset-top))}}@media(max-width:370px){.page{padding-left:18px;padding-right:18px}.app-header{padding-left:21px;padding-right:21px}h1{font-size:34px}.day-card{padding:20px 17px}.counters{gap:18px}.counter>strong{font-size:37px}.metric-label,.metric-foot{font-size:9px}.current-card{padding:20px}.current-card h2{font-size:22px}.meal-remaining{gap:16px}.meal-remaining strong{font-size:28px}.meal-remaining div>span{font-size:9px}.meal-list{padding:0 13px}.meal-row{gap:9px}.meal-symbol{width:35px;height:35px;border-radius:11px}.meal-symbol app-icon{width:20px;height:20px}.meal-row-main strong,.meal-row-values strong{font-size:11px}.meal-row>app-icon{width:11px}.identity{padding:18px;gap:10px}.identity .status-pill{display:none}.goal-row-heading strong{font-size:10px}.goal-row-heading small{font-size:8px}.goal-total,.goal-total strong{font-size:9px}.sheet{padding-left:19px;padding-right:19px}.portion-recap{font-size:9px;gap:6px}.portion-recap strong{font-size:12px}.portion-recap>span:last-child{font-size:8px}.auth-card{padding:26px 21px}.auth-card h1{font-size:26px}}@media(max-width:760px){.search-field input,.meal-select-label select{font-size:16px}.search-field input::placeholder{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}@media(prefers-contrast:more){:root{--muted:#546c5b}.glass{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}.card{border:1px solid #a6bba7}.subtitle,.metric-foot,.metric-label,.form-note{color:#fff}}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#14251f;--paper:#20352ce8;--ink:#dfede3;--muted:#8fa798;--line:#324b3b;--green:#71b795;--mint:#2a4736;--glass:#253d30e8;--input:#243e2e}.ambient{background:radial-gradient(ellipse at 80% 0,#2b493f66,transparent 60%)}.card,.auth-card,.day-picker{border-color:#304c3a}.primary{background:#4f9c76;color:#fff}.primary:hover{background:#5bac85}.current-card{background:linear-gradient(140deg,#233e2d,#243d34);border-color:#36523b}.meal-symbol,.food-thumb,.food-thumb.fallback,.empty-icon{background:#304b34;color:#fff}.current-card .meal-symbol,.current-symbol{background:#37573d;color:#fff}.status-pill{background:#304a33;border-color:#496047;color:#fff}.profile-button,.large-avatar,.member-avatar{background:#304d36;border-color:#416047;color:#fff}.progress{background:#3b523b}.tabbar{border-color:#476047;box-shadow:0 5px 30px #0004,inset 0 1px #68816555}.tabbar>button.active{background:#3a5a41;color:#fff}.search-field{background:#263d2a;border-color:#3b523a}.round-button:hover{background:#34513a}.round-button.accent{background:#365a40;color:#fff}.setting-icon.green,.setting-icon.blue{background:#38523c;color:#fff}.sheet{border-color:#425b40}.sheet-handle{background:#58714e}.sheet-header .round-button{background:#304c32}.photo-picker{background:#243f29;border-color:#4b6741}.camera-bubble,.install-steps>li>span{background:#3b5734}.segmented{background:#2b4329}.segmented button.selected{background:#45633c;color:#fff}.portion-recap{background:#2c4a2f;border-color:#44633e}.portion-recap>strong{color:#fff}input:not([type=file]):not([type=search]):not([type=date]),select{border-color:#40583a}.error{background:#4a332b;color:#d1a38f}.notice{background:#473e29}.glass{border-color:#4b664955}.selected-food{border-color:#426039}.toast>span{background:#3f653a}.goal-total strong,.day-recap strong,.install-steps strong,.toast,.auth-card .subtitle{color:#fff}}.invitation-create,.invitation-result,.invitation-list{padding:20px;margin-bottom:18px}.invitation-create .button{margin-top:16px}.invitation-result h2{font-size:17px;color:#fff}.invitation-result p,.invitation-result>small{display:block;font-size:11px;line-height:1.8;color:#fff;margin:12px 0}.invitation-result input{font-size:13px!important;font-family:ui-monospace,monospace}.invitation-result .button{margin-top:12px}.invitation-result details{margin-top:16px;color:#fff}.invitation-result summary{font-size:11px;cursor:pointer;min-height:44px;display:flex;align-items:center}.invitation-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.invitation-row:last-child{border:0}.invitation-row>div{flex:1;min-width:0}.invitation-row strong{font-size:13px;overflow-wrap:anywhere;color:#fff}.invitation-row small{display:block;font-size:10px;line-height:1.7;margin-top:7px;color:#fff}.invitation-row .text-button{flex-shrink:0;color:#fff}.invitation-create .optional{color:#fff;font-size:10px}.optional-goals{margin-top:14px}.optional-goals summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;list-style:none;color:#fff;font-size:12px}.optional-goals summary:before{content:"+";color:var(--gold);font-size:18px}.optional-goals[open] summary:before{content:"\2212"}.optional-goals .goal-inputs{margin-top:8px}.optional-goals .form-note{margin:10px 0 0;color:#fff}.optional-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-top:1px solid var(--line);padding:16px 0 4px;margin:16px 0;color:#fff}.optional-metrics>div{display:flex;flex-direction:column;gap:7px;min-width:0}.optional-metrics>div>span{font-size:11px;color:#fff}.optional-metrics strong{font-size:18px;font-weight:600;overflow-wrap:anywhere}.optional-metrics strong small{font-size:10px;font-weight:400;color:#fff}.optional-metrics-note{font-size:10px;line-height:1.6;margin:8px 0 0;color:#fff}.nutrient-inputs .optional{font-size:9px;font-weight:400;color:#fff}.optional-goals .optional{color:#fff}.nutrient-inputs input::placeholder{font-size:12px}.optional-goals input::placeholder{font-size:12px}:root{color-scheme:dark;--bg:#08131f;--paper:#102334ed;--ink:#dcecf5;--muted:#90a9bd;--line:#263e51;--green:#80d4ef;--mint:#18384c;--blue:#9bc7ea;--glass:#10283be8;--input:#10283a;--gold:#d7ad60;--ice:#80d4ef;--steel:#7896ae}body{background:var(--bg)}.ambient{background:radial-gradient(ellipse at 85% 0%,#16476b75,transparent 52%),radial-gradient(ellipse at 0% 80%,#12345055,transparent 45%),linear-gradient(155deg,#0a1827,#07101a);background-attachment:fixed}.ambient:after{content:"";position:absolute;inset:0;background-image:linear-gradient(120deg,transparent 49.8%,#79d6ff04 50%,transparent 50.2%);background-size:90px 160px;opacity:.7}.wordmark{color:#9db8cd;font-size:20px;letter-spacing:-.6px;font-weight:450}.wordmark strong{font-weight:730;color:#d9b674}.app-logo>span{font-size:28px;letter-spacing:-1px;font-weight:400;color:#9fbfd6}.app-logo strong{font-weight:750;color:#dfba73}.app-logo>img{border:1px solid #80683c55;box-shadow:0 6px 25px #0005,0 0 22px #65cafa15}.card,.auth-card{border-color:#2c485b;box-shadow:0 4px 24px #00000012,inset 0 1px #b1e9ff06}.title-dot{color:var(--gold)}.eyebrow,.group-label{color:#7998af}.subtitle,.auth-card .subtitle{color:#92acbf}.profile-button,.large-avatar{background:#1a3a50;border-color:#345771;color:#bbdcec}.connection-dot{background:#80d4ef;box-shadow:0 0 8px #80d4ef45}.connection-dot.disconnected{background:#b99660;box-shadow:none}.day-card{background:linear-gradient(135deg,#122a3f,#0d1f30);border-color:#304c61}.section-label{color:#86a9c0}.quiet-icon{color:#82cce9}.metric-label{color:#a4c0d1}.metric-label i{background:#70c8e9}.protein .metric-label i{background:#d0af76}.counter>strong{color:#c4ebff}.protein>strong{color:#e2c18c}.counter>strong>small{color:#819db3}.progress{background:#203d52}.progress>span{background:linear-gradient(90deg,#438cb8,#89d5ee)}.protein .progress>span{background:linear-gradient(90deg,#9e783d,#dfbf7e)}.metric-foot{color:#88a5bc}.current-card{background:linear-gradient(145deg,#142e43,#0f2334);border-color:#3c5c70}.current-card h2{color:#d6eaf6}.current-card>.subtitle{color:#9ab4c7}.meal-symbol,.food-thumb,.food-thumb.fallback,.member-avatar{background:#1b3a50;color:#96bfd7}.current-card .meal-symbol,.current-symbol{background:#1d475d;color:#a3e7fc;box-shadow:inset 0 0 0 1px #6bb5d529}.status-pill{background:#18374b;border-color:#395970;color:#9dc9df}.status-pill>span{background:#89d6ec}.meal-remaining strong{color:#c8eafa}.meal-remaining strong small{color:#88abc0}.meal-remaining div>span{color:#92b0c4}.vertical-line{background:#335368}.button.primary{background:linear-gradient(145deg,#245775,#1a405c);border:1px solid #5189a7;color:#d5f1ff;box-shadow:inset 0 1px #a2dcf51a,0 4px 12px #0002}.button.primary:hover{background:linear-gradient(145deg,#2c6586,#234c68);border-color:#73b1cc}.button.secondary{background:#18384c;color:#a9d5e9;border:1px solid #36586e}.current-card>.text-button,.text-button,.subtle-link{color:#89b7cf}.subtle-link:hover{color:#cceafb}.end-card>app-icon{color:#9ab9d5}.end-card p{color:#8faac0}.glass,.tabbar{border-color:#54768c66;background:#10283bdb;box-shadow:0 10px 40px #0005,inset 0 1px #b6e5ff1c;backdrop-filter:blur(28px) saturate(140%);-webkit-backdrop-filter:blur(28px) saturate(140%)}.tabbar{grid-template-columns:repeat(5,1fr);width:min(490px,calc(100% - 28px));gap:2px;padding:7px}.tabbar>button{color:#7d9ab0;font-size:8px;letter-spacing:0}.tabbar>button.active{background:linear-gradient(145deg,#284d62,#18394d);color:#b8e8ff;box-shadow:inset 0 0 0 1px #56829b30}.tabbar>button.active app-icon{filter:drop-shadow(0 0 5px #91dcff22)}.round-button{color:#8ba9bf}.round-button:hover{background:#25455b}.round-button.accent{background:#1c4058;color:#b4e1f3;border:1px solid #3c6580}.back-button{color:#8bc9e5}.day-picker{border-color:#2b485d}.meal-row-main small,.meal-row-values>small,.meal-row-values>strong>small{color:#83a4ba}.meal-row-main small>span{color:#5e7e96}.meal-row>app-icon{color:#607f98}.meal-row-values>strong{color:#c6e4f5}.day-recap{color:#819caf}.day-recap strong,.goal-total strong{color:#b3ccdd}.day-recap strong>span,.goal-total strong span{color:#5d7b94}.detail-date{color:#90adc2}.meal-summary>div>span{color:#8dacc1}.meal-summary strong{color:#cae9f8}.meal-summary strong>small{color:#83a1b8}.section-row>span,.section-row>app-icon{color:#7899b1}.entry-main>small,.food-name small{color:#8eacc0}.food-name strong{color:#cbe4f1}.destructive{color:#b18f86}.destructive:hover{background:#4a3435;color:#e7b1a0}.small-empty>app-icon,.empty-icon{color:#90bed6}.small-empty p,.empty-state p{color:#87a6bc}.search-field{background:#0e2638;border-color:#2c4c63}.search-field app-icon{color:#7b9fb8}.search-field input::placeholder{color:#7f9cb3}.search-field:focus-within{outline-color:#72c3e3}.empty-icon{background:linear-gradient(145deg,#21495d,#142c40);box-shadow:inset 0 0 0 1px #3b6176}.identity>.status-pill{color:#bdd2e0}.identity p{color:#8eacc2}.setting-icon.green,.setting-icon.blue{background:#1e4057;color:#a7ccdf}.settings-list>button>app-icon{color:#6d90aa}.member>span:last-child,.group-footnote,.invite-result p{color:#84a0b4}.invite-button{color:#9dcee5}.logout-button{color:#bb9a82}.version-label{color:#69879d}.goal-row-heading>small{color:#89a7bc}.goal-total{color:#8ba8bc}label{color:#a6c1d2}input:not([type=file]):not([type=search]):not([type=date]),select{border-color:#33536b;background:var(--input)}input::placeholder{color:#7391a9}input:focus,select:focus{outline-color:#77c7e3!important}.input-unit>span{color:#93b2c6}.notice{background:#3b3223;border:1px solid #7a634136;color:#d9ba81}.error{background:#402d32;color:#e2aaa0;border:1px solid #7a4e5745}.error>button{color:#efbcaf}.loading{color:#9dc7de}.auth-footer{color:#7798ad}.auth-toggle{color:#94bfd6}.sheet{border-color:#46667e;background:#0d2031;box-shadow:0 20px 100px #0008}.sheet::backdrop{background:#020a14a3}.sheet-handle{background:#48657b}.sheet-header .round-button{background:#1c394f;color:#97b6ca}.sheet-subtitle,.form-note{color:#8eabc0}.sheet-subtitle strong{color:#c2e5f6}.food-option small{color:#8cabc1}.food-option>app-icon{color:#9acfe6}.no-food{color:#87a9be}.selected-food{border-color:#35566c;background:#142e41}.selected-food small{color:#88b3cc}.selected-food>app-icon{color:#7fa4bc}.portion-input input{background:#122d40!important}.portion-recap{background:#17394d;border-color:#3c6077;color:#a2c5d7}.portion-recap>strong{color:#c6ebfb}.segmented{background:#0b1c2c;border:1px solid #2a465b}.segmented button{color:#7e9db4}.segmented button.selected{background:linear-gradient(150deg,#2a4b60,#1a344a);color:#c5e7f8;box-shadow:inset 0 0 0 1px #456a8255}.photo-picker{background:#122c40;border-color:#4b7188}.photo-picker>span:last-of-type{color:#abd2e7}.photo-picker small{color:#80a1ba}.camera-bubble{background:#21465d;color:#abd9eb}.optional{color:#7b9cb4}.install-intro p,.install-steps p{color:#98b3c8}.install-steps>li>span{background:#26495e;color:#c3dfee}.install-steps strong{color:#c3e5f8}.toast{color:#c4e5f6}.toast>span{background:#2a5469;color:#baeafa}.achievement-summary{display:flex;align-items:center;gap:16px;padding:21px;margin-bottom:22px;background:radial-gradient(ellipse at 20% 0,#24516b66,transparent 70%),linear-gradient(130deg,#172b3b,#0c1c2b);border-color:#79673e88;position:relative;overflow:hidden}.achievement-summary:after{content:"";position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,#d5ad5f99,transparent)}.achievement-crest{width:54px;height:60px;display:grid;place-items:center;flex-shrink:0;background:linear-gradient(140deg,#413b29,#202c32);border:1px solid #b1915188;border-radius:16px 16px 21px 21px;box-shadow:inset 0 0 15px #e8c77a0a,0 4px 15px #0004;color:var(--gold)}.achievement-crest app-icon{width:29px;height:29px}.achievement-summary>div{flex:1}.achievement-summary .section-label{font-size:8px;letter-spacing:1.1px;color:#b89c65}.achievement-summary>div>strong{display:block;font-size:34px;font-weight:650;letter-spacing:-1px;color:#f0d296;margin-top:6px;font-variant-numeric:tabular-nums}.achievement-summary>div>strong>small{font-size:11px;font-weight:400;letter-spacing:0;color:#b79f73}.guild-points{text-align:right;padding-left:15px;border-left:1px solid #46607455}.guild-points>strong{display:block;font-size:23px;letter-spacing:-.6px;color:#b6dae9;font-weight:550}.guild-points>small{display:block;font-size:8px;color:#7c9fb6;margin-top:7px}.achievement-tabs{margin-bottom:22px;gap:2px;padding:4px}.achievement-tabs button{font-size:10px;min-height:38px;line-height:1.4}.achievement-section-heading{display:flex;justify-content:space-between;font-size:10px;color:#8aabc0;margin:0 3px 14px}.achievement-section-heading strong{font-size:10px;font-weight:500;color:#c0a36d}.achievement-list{display:grid;gap:12px}.achievement-card{--rarity:#8bb4c7;display:flex;align-items:flex-start;gap:15px;padding:19px 17px;border-radius:19px;background:linear-gradient(135deg,#132738,#0d1f2f);border-color:#2d4759}.achievement-card[data-rarity=rare],.feed-medal[data-rarity=rare]{--rarity:#7bb5f1}.achievement-card[data-rarity=epic],.feed-medal[data-rarity=epic]{--rarity:#c09de5}.achievement-card[data-rarity=legendary],.feed-medal[data-rarity=legendary]{--rarity:#e0b368}.achievement-card.earned{background:linear-gradient(135deg,#26303a,#122533);border-color:#8d764477;box-shadow:inset 0 1px #e1c4830a,0 4px 20px #0002}.achievement-badge{display:grid;place-items:center;width:49px;height:52px;border:1px solid #37566b;background:linear-gradient(135deg,#294153,#142536);color:#7598ae;border-radius:13px;flex-shrink:0;position:relative;margin-top:1px}.achievement-badge>app-icon{width:25px;height:25px}.earned .achievement-badge{color:var(--rarity);border-color:var(--rarity);background:radial-gradient(circle at 30% 15%,#8095a12b,transparent 80%),#1c2b36;box-shadow:0 0 12px #6ebbd214,inset 0 0 12px #c0cddd09}.badge-check{position:absolute;right:-5px;bottom:-4px;width:17px;height:17px;border:1px solid #d7ad6099;border-radius:50%;display:grid;place-items:center;background:#29312c;color:#ebc677}.badge-check app-icon{width:10px;height:10px}.achievement-main{flex:1;min-width:0}.achievement-title{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}.achievement-title h2{font-size:12px;line-height:1.55;font-weight:600;letter-spacing:-.1px;color:#a4c1d4}.earned .achievement-title h2{color:#e9ce91}.achievement-title>span{font-size:14px;color:#967f55;white-space:nowrap;font-weight:550;font-variant-numeric:tabular-nums}.earned .achievement-title>span{color:#dcb76f}.achievement-title>span>small{font-size:8px;color:#9d8e6b;font-weight:400}.achievement-main>p{font-size:10px;line-height:1.8;color:#8aa5b9;margin:6px 0 12px}.achievement-progress{display:flex;align-items:center;gap:10px}.achievement-progress>.progress{flex:1;height:4px}.achievement-progress .progress>span{background:linear-gradient(90deg,#476580,#86b9d5)}.achievement-progress>small{font-size:9px;color:#7193ae;white-space:nowrap;min-width:29px;text-align:right}.earned-date{display:flex;align-items:center;gap:4px;font-size:9px;color:#a58f65}.earned-date app-icon{width:11px;height:11px}.guild-board{padding:0 20px}.guild-member{display:flex;align-items:center;gap:12px;padding:22px 0;border-bottom:1px solid var(--line)}.guild-member:last-child{border-bottom:0}.guild-rank{font-size:12px;color:#b99b61;width:12px;font-variant-numeric:tabular-nums}.guild-member>.member-avatar{width:38px;height:38px;border:1px solid #4c7085}.guild-member>div{flex:1;min-width:0}.guild-member>div>strong{display:block;font-size:13px;font-weight:550;overflow-wrap:anywhere}.guild-member>div>strong>small{font-size:8px;color:#7599b1;font-weight:400;margin-left:5px}.guild-member>div>span{display:block;font-size:9px;color:#7698b2;margin-top:7px}.guild-score{color:#e0bd7c;font-size:19px;font-weight:550;white-space:nowrap;font-variant-numeric:tabular-nums}.guild-score>small{font-size:9px;color:#b39968;font-weight:400}.achievement-feed{list-style:none;margin:0;padding:0 17px}.achievement-feed>li{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid var(--line)}.achievement-feed>li:last-child{border-bottom:0}.feed-medal{--rarity:#93c2d6;display:grid;place-items:center;width:34px;height:36px;border-radius:10px;flex-shrink:0;background:#1b3548;border:1px solid #435c66;color:var(--rarity)}.feed-medal app-icon{width:18px;height:18px}.achievement-feed>li>div{min-width:0;flex:1}.achievement-feed strong{display:block;font-size:11px;font-weight:550;line-height:1.6;color:#c5ddeb}.achievement-feed li>div>span{display:block;font-size:9px;color:#7b9bb1;margin-top:5px;line-height:1.7}.achievement-feed i{font-style:normal;margin:0 4px}.achievement-feed li>small{font-size:10px;color:#d1b071}.achievement-unlock{position:fixed;z-index:150;top:calc(15px + env(safe-area-inset-top));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:13px;max-width:450px;width:calc(100% - 28px);padding:17px 15px 17px 18px;border-radius:21px;border:1px solid #bc984f;background:radial-gradient(ellipse at 25% 0,#58769a2b,transparent 65%),linear-gradient(145deg,#253743f7,#0a1829fa);box-shadow:0 0 30px #d5ac5f15,0 15px 50px #0009,inset 0 1px #e9d69d44;animation:achievement-arrival .4s ease-out}.unlock-emblem{width:46px;height:49px;border-radius:13px;background:#3c3b2f;border:1px solid #bca15b;display:grid;place-items:center;color:#e6c87c;flex-shrink:0;box-shadow:0 0 18px #d0ad6230}.unlock-emblem app-icon{width:27px;height:27px}.achievement-unlock>div{flex:1;min-width:0}.achievement-unlock>div>span{display:block;font-size:8px;letter-spacing:1px;color:#c9a664;line-height:1.7}.achievement-unlock strong{display:block;font-size:14px;line-height:1.5;color:#f5dc9e;font-weight:650;margin:4px 0;overflow-wrap:anywhere}.achievement-unlock>div>small{font-size:9px;color:#9bb6c7}.achievement-unlock>.round-button{min-width:30px;min-height:38px;color:#9d997f}.achievement-unlock>.round-button app-icon{width:15px;height:15px}@keyframes achievement-arrival{0%{opacity:0;transform:translate(-50%,-12px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}@media(max-width:370px){.wordmark{font-size:19px}.app-logo>span{font-size:24px}.tabbar{width:calc(100% - 20px);gap:0;padding:6px}.tabbar>button{font-size:7px}.achievement-summary{gap:12px;padding:19px 15px}.achievement-crest{width:45px;height:51px}.achievement-summary>div>strong{font-size:30px}.guild-points{padding-left:11px}.guild-points>small{font-size:7px}.achievement-card{padding:17px 13px;gap:12px}.achievement-badge{width:40px;height:44px}.achievement-title h2{font-size:11px}.achievement-title>span{font-size:12px}.achievement-main>p{font-size:9px}.achievement-unlock{padding:14px;gap:10px}.achievement-unlock strong{font-size:12px}.achievement-unlock>div>span{font-size:7px}.unlock-emblem{width:41px;height:45px}}@media(prefers-reduced-motion:reduce){.achievement-unlock{animation:none}}@media(prefers-contrast:more){:root{--paper:#102334;--muted:#bdd5e5;--glass:#102334}.card,.auth-card{border-color:#7e9fb4}.subtitle,.metric-foot,.metric-label,.form-note{color:#bdd5e5}.glass,.tabbar{background:#102334;backdrop-filter:none;-webkit-backdrop-filter:none}.achievement-main>p{color:#c1d5e2}.achievement-card{border-color:#7b9aac}}:root{--ink:#ffffff}.subtitle,.auth-card .subtitle,.current-card>.subtitle,.eyebrow,.group-label,label,.metric-label,.metric-foot,.meal-remaining div>span,.sheet-subtitle,.form-note,.text-button,.current-card>.text-button,.subtle-link,.back-button,.auth-toggle,.invite-button{color:#fff}.wow-banner{display:none;position:fixed;inset:auto auto calc(103px + env(safe-area-inset-bottom)) 50%;transform:translate(-50%);width:min(560px,calc(100% - 26px));max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:visible;background:none;color:#fff;z-index:200;pointer-events:none}.wow-banner:popover-open,.wow-banner.banner-fallback{display:block}.wow-banner::backdrop{background:transparent;pointer-events:none}.wow-banner-card{position:relative;isolation:isolate;display:flex;align-items:center;gap:17px;min-height:108px;border:1px solid #c4a35e;border-radius:9px;padding:22px 23px 22px 18px;background:radial-gradient(ellipse at 40% 0,#a99a6030,transparent 72%),linear-gradient(180deg,#28333a,#101b24 55%,#182731);box-shadow:0 0 0 3px #162532,0 0 0 4px #75603a,0 15px 55px #000c,0 0 40px #d9ad492b,inset 0 1px #f3e1a39e,inset 0 -1px #b197583e;pointer-events:auto;animation:banner-arrive .6s cubic-bezier(.17,.88,.28,1.15)}.wow-banner-card:before,.wow-banner-card:after{content:"";position:absolute;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,#f8df93,transparent);z-index:2}.wow-banner-card:before{top:5px}.wow-banner-card:after{bottom:5px}.banner-flare{position:absolute;inset:-45px -12px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,#e9c45f25,transparent 63%);animation:banner-glow 2s ease-out 2}.banner-medallion{position:relative;display:grid;place-items:center;width:62px;height:64px;flex-shrink:0;border:2px solid #c5a659;border-radius:8px;background:radial-gradient(circle at 50% 35%,#b6a06a40,transparent 75%),linear-gradient(140deg,#354b58,#102334);box-shadow:0 0 0 3px #101e2b,0 0 0 4px #8d723d,inset 0 0 15px #e8d29b14,0 0 23px #edc66530;color:#f4d58b}.banner-medallion app-icon{width:34px;height:34px;filter:drop-shadow(0 1px 3px #0008)}.banner-medallion:after{content:"\2727";position:absolute;right:-10px;top:-17px;color:#fff1b6;font-size:27px;text-shadow:0 0 10px #eac261;animation:banner-spark 1.4s ease-out 2}.banner-message{flex:1;min-width:0;text-align:center}.banner-label{display:block;font-size:10px;letter-spacing:1.25px;color:#d7b56c;line-height:1.65;font-weight:650}.banner-message>strong{display:block;font-size:18px;font-weight:650;line-height:1.4;color:#fff1c9;letter-spacing:-.2px;text-shadow:0 1px 4px #000;margin:7px 0 6px;overflow-wrap:anywhere}.banner-message>small{display:block;font-size:10px;color:#fff;line-height:1.6}.banner-points{display:grid;align-content:center;justify-items:center;flex-shrink:0;width:45px;height:45px;border:1px solid #b99650a3;border-radius:50%;background:radial-gradient(circle at 35% 25%,#b69a4d50,#6b54252b);box-shadow:inset 0 1px #f5dd9c3b;color:#f5d88d}.banner-points>strong{font-size:21px;font-weight:600;line-height:1}.banner-points>small{font-size:6px;letter-spacing:.7px;margin-top:4px}.banner-close{position:absolute;right:-7px;top:-11px;display:grid;place-items:center;width:29px;height:29px;background:#142638;border:1px solid #8d794d;border-radius:50%;color:#d4b979;box-shadow:0 2px 8px #0008}.banner-close app-icon{width:13px;height:13px}.banner-close:focus-visible{outline:2px solid white;outline-offset:3px}.banner-timer{position:absolute;bottom:0;left:0;height:2px;border-radius:3px;background:linear-gradient(90deg,#82672c,#dfbf79);width:100%;transform-origin:left;animation:banner-duration 8s linear forwards}.banner-preview-button{display:flex;align-items:center;gap:8px;font-size:10px;color:#fff;min-height:44px;margin:-13px 0 16px;padding:0 3px}.banner-preview-button app-icon{color:#d7ad60;width:16px;height:16px}@keyframes banner-arrive{0%{opacity:0;transform:translateY(16px) scale(.8);filter:brightness(1.8)}65%{filter:brightness(1.25)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}@keyframes banner-glow{0%,to{opacity:.5}35%{opacity:1}}@keyframes banner-spark{0%{opacity:0;transform:scale(.2) rotate(0)}35%{opacity:1;transform:scale(1.2) rotate(30deg)}to{opacity:0;transform:scale(.7) rotate(70deg)}}@keyframes banner-duration{to{transform:scaleX(0)}}.profession-link-level{display:block;font-size:10px;color:#fff;font-weight:400;margin-top:6px}.profession-card{padding:22px;background:radial-gradient(ellipse at 0 0,#875b2733,transparent 70%),linear-gradient(140deg,#142b3c,#102132);border-color:#94764077}.profession-heading{display:flex;align-items:center;gap:13px}.profession-crest{width:50px;height:53px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#5b4930,#213442);border:1px solid #b1935b;color:#f1d39b;box-shadow:inset 0 1px #e8d9a72a;flex-shrink:0}.profession-crest app-icon{width:28px;height:28px}.profession-heading>div{flex:1;min-width:0}.profession-heading .section-label{font-size:8px;letter-spacing:1px;color:#e3c58d}.profession-heading h2{font-size:18px;line-height:1.45;letter-spacing:-.4px;margin-top:6px;color:#fff;font-weight:600}.profession-skill{font-size:27px;letter-spacing:-.9px;font-weight:600;color:#e9c88b;white-space:nowrap}.profession-skill small{font-size:11px;letter-spacing:0;color:#fff;font-weight:400}.profession-progress{height:8px;border-radius:4px;background:#122437;border:1px solid #62704455;overflow:hidden;margin:25px 0 13px;box-shadow:inset 0 2px 4px #0004}.profession-progress>span{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#597a9d,#9dc8e4);box-shadow:0 0 12px #87c4e555;transition:width .5s ease}.profession-caption{display:flex;flex-direction:column;gap:9px;font-size:10px;color:#fff;line-height:1.6}.profession-caption>span:last-child{font-size:9px;color:#c1d4e3}.profession-card>p{font-size:12px;color:#fff;line-height:1.9;margin:20px 0}.cooking-tabs{margin:22px 0}.recipe-list{display:grid;gap:13px}.recipe-card{padding:18px}.recipe-heading{display:flex;gap:12px;align-items:center;margin-bottom:18px}.recipe-heading>div{flex:1;min-width:0}.recipe-heading h3{font-size:14px;line-height:1.5;color:#fff;font-weight:550;overflow-wrap:anywhere}.recipe-difficulty{display:flex;align-items:center;gap:6px;font-size:10px;color:#fff;margin-top:7px}.recipe-difficulty>i{width:6px;height:6px;border-radius:50%;background:#8da0ad}.recipe-difficulty[data-difficulty=orange]>i{background:#e7a958;box-shadow:0 0 6px #e7a95833}.recipe-difficulty[data-difficulty=yellow]>i{background:#e4ce75}.recipe-difficulty[data-difficulty=green]>i{background:#93bd87}.recipe-difficulty[data-difficulty=locked]>i{background:#718598}.recipe-gain{display:block;text-align:right;color:#e8c184;font-size:23px;font-weight:550;letter-spacing:-.7px}.recipe-gain small{display:block;font-size:8px;color:#fff;letter-spacing:0;font-weight:400;margin-top:5px}.recipe-locked{border-style:dashed;background:#10203099}.recipe-card .button{min-height:44px;font-size:11px}.profession-help{margin:22px 5px;font-size:11px;color:#fff;line-height:1.9}.profession-help summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:7px;list-style:none;color:#fff}.profession-help summary:before{content:"+";font-size:18px;color:#d7ad60}.profession-help[open] summary:before{content:"\2212"}.profession-help p{font-size:10px;color:#fff;line-height:1.9;margin:7px 0 13px}.sheet select[name=recipeLevel]{font-size:16px}@media(max-width:500px){.wow-banner{bottom:calc(101px + env(safe-area-inset-bottom));width:calc(100% - 28px)}.wow-banner-card{padding:18px 13px;gap:13px;min-height:96px}.banner-medallion{width:48px;height:53px}.banner-medallion app-icon{width:28px;height:28px}.banner-label{font-size:7px;letter-spacing:.8px}.banner-message>strong{font-size:14px;margin:5px 0}.banner-message>small{font-size:8px}.banner-points{width:37px;height:37px}.banner-points>strong{font-size:17px}.banner-points>small{font-size:5px}.banner-close{width:27px;height:27px}.profession-skill{font-size:24px}.profession-heading h2{font-size:16px}}@media(max-width:370px){.wow-banner-card{gap:10px;padding:17px 12px}.banner-medallion{width:42px;height:47px}.banner-label{font-size:6px}.banner-message>strong{font-size:12px}.banner-message>small{font-size:7px}.banner-points{width:32px;height:32px}.banner-points>strong{font-size:15px}.profession-card{padding:18px}.profession-heading{gap:10px}.profession-crest{width:41px;height:45px}.profession-heading h2{font-size:14px}.profession-skill{font-size:21px}.recipe-card{padding:15px}.recipe-heading h3{font-size:12px}}@media(prefers-reduced-motion:reduce){.wow-banner-card,.banner-flare,.banner-medallion:after,.banner-timer{animation:none}.profession-progress>span{transition:none}.banner-timer{display:none}}
