:root{color-scheme:dark;--bg: #1C1D21;--card: #292A2F;--tile: #34343C;--ink: #F5F6FA;--muted: #8E9099;--faint: #5E606A;--border: #3A3B42;--hair: #303138;--chrome: #26272C;--kcal: #8CE83C;--prot: #E8B84B;--money: #7B7FE8;--waste: #FF7A43;--caf: #6D95DA;--fib: #34C759;--on-accent: #10230A;--tint: rgba(140, 232, 60, .14);--tint2: rgba(232, 184, 75, .14);--shadow: none;--frame: #000000;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Karla", "Segoe UI", system-ui, sans-serif;--font-num: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Space Grotesk", "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;font-variant-numeric:tabular-nums}h1,h2,h3,h4{font-family:var(--font-num);font-weight:700;letter-spacing:-.4px;text-wrap:balance}button,input,textarea,select{font-family:inherit}a{color:var(--kcal)}:focus-visible{outline:2px solid var(--kcal);outline-offset:2px}button,.item,.chip,.tab,.tl,a[role=button]{min-height:44px}.num,.n,.big,.ring .n,.tl .n,.stat .big,table.tb td.n{font-variant-numeric:tabular-nums}.app-shell{max-width:480px;margin:0 auto;min-height:100dvh;background:var(--bg);color:var(--ink);position:relative;display:flex;flex-direction:column}.scroll{flex:1;overflow-y:auto;padding:max(20px,env(safe-area-inset-top)) 18px calc(150px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:13px;scrollbar-width:none;min-height:100dvh}.scroll::-webkit-scrollbar{width:0}.phdr{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:1px}.phdr h2{font-size:25px;margin:0;font-weight:700;letter-spacing:-.5px;display:flex;align-items:center;gap:6px}.phdr h2 svg{width:17px;height:17px;stroke:var(--faint);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.tittelknapp{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;display:flex;align-items:center;gap:6px;min-height:0}.phdr .sub{font-size:12.5px;font-weight:600;color:var(--muted);margin-top:2px}.avatar{width:38px;height:38px;border-radius:999px;background:var(--tint);color:var(--kcal);display:flex;align-items:center;justify-content:center;font-family:var(--font-num);font-weight:700;font-size:14px;border:none;cursor:pointer;flex-shrink:0}.back{background:none;border:none;color:var(--kcal);font:inherit;font-weight:700;font-size:13px;cursor:pointer;padding:0;display:flex;align-items:center;gap:3px;margin-bottom:2px;min-height:auto}.back svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round}.ctx{display:flex;gap:8px}.ctx .c{flex:1;background:var(--card);border-radius:999px;padding:8px 12px;display:flex;align-items:center;gap:8px;min-width:0}.ctx .dotico{width:26px;height:26px;border-radius:999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ctx .dotico svg{width:14px;height:14px;stroke:var(--on-accent);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.ctx .t{font-size:12.5px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctx .s{font-size:10.5px;font-weight:600;color:var(--faint);line-height:1.2}.card{background:var(--card);border-radius:20px;padding:15px 16px}.card.pad0{padding:14px 0}.sec{font-family:var(--font-num);font-size:19px;font-weight:700;color:var(--ink);letter-spacing:-.4px;margin:13px 0 -2px 2px}.rings{display:flex;justify-content:space-around;align-items:flex-start;gap:4px}.ring{display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:none;cursor:pointer;font:inherit;color:inherit;padding:0;flex:1}.ring .lab{font-size:12.5px;font-weight:600;color:var(--muted)}.ring .wrap2{position:relative;width:96px;height:96px}.ring .mid{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}.ring .n{font-family:var(--font-num);font-size:26px;font-weight:600;letter-spacing:-1px}.ring .u{font-size:11px;font-weight:500;color:var(--muted);letter-spacing:0;margin-top:-1px}.ringgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 4px}.ringgrid .ring{flex:none;gap:6px}.ringgrid .ring .n{font-size:20px;letter-spacing:-.7px}.ringgrid .ring .u{font-size:10px}.ring .rest{font-size:10.5px;font-weight:500;line-height:1.2;text-align:center}button.ring.mh{cursor:pointer}div.ring.mh{cursor:default;min-height:0}.grenser{display:flex;flex-direction:column;gap:9px;margin-top:15px;padding-top:14px;border-top:1px solid var(--hair)}.grenser .nm{color:var(--muted);font-weight:500}.grenser .v{color:var(--ink)}.malere{display:grid;grid-template-columns:1fr 1fr;gap:8px}.maler{background:var(--card);border-radius:17px;padding:12px 13px;display:flex;gap:10px;align-items:stretch;text-align:left;border:none;font:inherit;color:inherit}button.maler{cursor:pointer}.maler .kol{flex:1;min-width:0}.maler-lab{font-size:12px;font-weight:500;color:var(--muted);display:flex;align-items:center;gap:5px}.maler-lab svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.maler-n{font-family:var(--font-num);font-size:24px;font-weight:600;letter-spacing:-1px;line-height:1.15;display:block;margin-top:3px}.maler-status{font-size:11.5px;font-weight:600;display:flex;align-items:center;gap:5px;margin-top:3px}.prikk{width:7px;height:7px;border-radius:999px;background:currentColor;display:block;flex-shrink:0}.maler-skala{width:6px;border-radius:999px;background:var(--tile);position:relative;flex-shrink:0;min-height:58px;align-self:stretch}.maler-skala .band{position:absolute;left:0;right:0;border-radius:999px;background:currentColor;opacity:.38}.maler-skala .pos{position:absolute;left:50%;transform:translate(-50%,50%);width:10px;height:10px;border-radius:999px;background:currentColor;border:2px solid var(--card)}.laast{background:var(--card);border-radius:20px;padding:22px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:9px}.laast .ikon{width:44px;height:44px;border-radius:999px;background:var(--tile);display:flex;align-items:center;justify-content:center;color:var(--faint)}.laast h4{font-family:var(--font-num);font-size:14.5px;margin:0;font-weight:600}.laast p{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted);max-width:34em}.modal-slor{position:fixed;top:0;right:0;bottom:0;left:0;background:#08090bb3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:none;padding:0;z-index:50;cursor:default;min-height:0;animation:ark-inn .16s ease-out}.modal{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:480px;max-height:94dvh;background:var(--bg);border-radius:28px 28px 0 0;z-index:51;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -12px 48px #0009;animation:modal-opp .26s cubic-bezier(.2,.8,.3,1)}.modal-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 8px;flex-shrink:0}.modal-tt{font-family:var(--font-num);font-size:16px;font-weight:600;letter-spacing:-.3px}.modal-krop{overflow-y:auto;padding:4px 16px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:11px;scrollbar-width:none}.modal-krop::-webkit-scrollbar{width:0}.modal-topp .big{font-family:var(--font-num);font-size:42px;font-weight:600;letter-spacing:-1.8px;line-height:1.05;display:block}.modal-topp .s{display:block;margin-top:2px}.rundknapp{width:38px;height:38px;min-height:38px;border-radius:999px;background:var(--tile);border:none;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;padding:0}.tb.tt td{padding:11px 14px}.tb.tt .tt-hd td{font-size:11px;color:var(--muted);font-weight:500;padding-bottom:6px}.tb.tt .tt-hd td{border-top:none}.tb.tt tr:nth-child(2) td{border-top:none}@keyframes modal-opp{0%{transform:translate(-50%,18px);opacity:0}to{transform:translate(-50%);opacity:1}}@media (prefers-reduced-motion: reduce){.modal,.modal-slor{animation:none}}.stat{background:var(--card);border-radius:20px;padding:14px 16px;border:none;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;display:block}.stat .hd{display:flex;align-items:center;gap:6px;margin-bottom:7px}.stat .hd svg.i{width:14px;height:14px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.stat .hd .lab{font-size:12.5px;font-weight:500;color:var(--muted);flex:1}.stat .hd .arr{width:15px;height:15px;stroke:var(--faint);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.stat .bd{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.stat .big{font-family:var(--font-num);font-size:38px;font-weight:600;line-height:1.02;letter-spacing:-1.6px;display:block}.stat .status{font-size:12.5px;font-weight:600;margin-top:3px;display:block}.stat .stat-note{font-size:11px;font-weight:500;color:var(--faint);margin-top:3px;display:block;line-height:1.35}.unit{font-family:var(--font);font-size:.42em;font-weight:500;color:var(--muted);letter-spacing:0;margin-left:4px}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tl{background:var(--card);border-radius:17px;padding:12px 13px;display:flex;align-items:center;gap:8px;border:none;text-align:left;font:inherit;color:inherit;cursor:pointer}.tl .col{flex:1;min-width:0}.tl .lab{font-size:12px;font-weight:500;color:var(--muted);display:block;margin-bottom:1px}.tl .n{font-family:var(--font-num);font-size:27px;font-weight:600;letter-spacing:-1.1px;display:block;line-height:1.15}.tl .p{font-size:11px;font-weight:700;display:block}.sum{background:var(--card);border-radius:20px;padding:15px 16px}.sum h4{font-family:var(--font-num);font-size:15px;margin:0 0 6px;font-weight:600;letter-spacing:-.2px}.sum p{margin:0;font-size:13.2px;line-height:1.55;color:var(--muted)}.skjelett{display:flex;flex-direction:column;gap:9px}.skjelett i{display:block;height:11px;border-radius:6px;background:var(--tile);width:100%}@media (prefers-reduced-motion: no-preference){.skjelett i{animation:skjelett-puls 1.5s ease-in-out infinite}.skjelett i:nth-child(2){animation-delay:.12s}.skjelett i:nth-child(3){animation-delay:.24s}.skjelett i:nth-child(4){animation-delay:.36s}}@keyframes skjelett-puls{0%,to{opacity:.55}50%{opacity:1}}.skjelett-ring{border-radius:999px;border:7px solid var(--tile)}@media (prefers-reduced-motion: no-preference){.skjelett-ring{animation:skjelett-puls 1.5s ease-in-out infinite}}.item{background:var(--card);border-radius:17px;padding:12px 13px;display:flex;align-items:center;gap:11px;cursor:pointer;border:none;text-align:left;width:100%;font:inherit;color:inherit}.item:hover{background:var(--tile)}.ico{width:34px;height:34px;border-radius:11px;background:var(--tint);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ico svg{width:17px;height:17px;stroke:var(--kcal);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gr{flex:1;min-width:0}.t{font-size:13.5px;font-weight:700;display:block}.s{font-size:11.5px;font-weight:500;color:var(--muted);display:block;line-height:1.35}.num{font-family:var(--font-num);font-size:15px;font-weight:600;white-space:nowrap;letter-spacing:-.3px}.lbl{font-size:11px;font-weight:700;color:var(--muted)}.badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;letter-spacing:.2px;white-space:nowrap;display:inline-block}.b-v{background:var(--tint);color:var(--kcal)}.b-e{background:var(--tile);color:var(--muted)}.b-a{background:var(--tint2);color:var(--prot)}.chip{font-size:12.5px;font-weight:500;padding:7px 13px;border-radius:999px;border:none;background:var(--tile);color:var(--muted);cursor:pointer;font-family:inherit}.chip.on{background:#5a5c68;color:var(--ink);font-weight:600}.chips{display:flex;gap:6px;flex-wrap:wrap}.btn{font:inherit;font-weight:600;font-size:14px;padding:13px 16px;border-radius:999px;border:none;cursor:pointer;background:var(--tile);color:var(--ink);width:100%;min-height:46px}.btn.acc{background:var(--kcal);color:var(--on-accent);font-weight:700}.btn:disabled{opacity:.55;cursor:default}.btn.gh{background:transparent;color:var(--kcal);border:1.5px solid var(--border)}.btn.sm{width:auto;padding:9px 15px;font-size:12.5px;min-height:38px}.input{background:var(--tile);border:none;border-radius:14px;padding:13px 14px;font:inherit;font-size:15px;color:var(--ink);width:100%;min-height:46px}.input::placeholder{color:var(--faint)}.input:focus-visible{outline:2px solid var(--kcal);outline-offset:1px}textarea.input{resize:none;min-height:78px;line-height:1.45;font-family:inherit}.dashed{border:1.5px dashed var(--border);border-radius:15px;padding:11px 14px;color:var(--kcal);font-weight:700;font-size:13px;text-align:center;background:transparent;cursor:pointer;width:100%;font-family:inherit}.note{font-size:11px;color:var(--faint);line-height:1.45;margin:0}.err{font-size:13px;font-weight:600;color:var(--waste);margin-top:10px;min-height:19px}.bar{height:7px;border-radius:999px;background:var(--tile);overflow:hidden}.bar i{display:block;height:100%;border-radius:999px}.hb{display:flex;align-items:center;gap:9px;font-size:12px}.hb .nm{width:92px;flex-shrink:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb .bar{flex:1}.hb .v{font-family:var(--font-num);font-weight:700;width:62px;text-align:right}table.tb{width:100%;border-collapse:collapse;font-size:12.5px}.tb td{padding:8px 0;border-top:1px solid var(--hair);vertical-align:middle}.tb tr:first-child td{border-top:none}.tb td.n{text-align:right;font-family:var(--font-num);font-weight:700;white-space:nowrap}.step{display:flex;align-items:center;border:1px solid var(--border);border-radius:12px;overflow:hidden}.step button{width:44px;height:44px;border:none;background:var(--tile);font-size:18px;color:var(--kcal);cursor:pointer;font-family:inherit}.step span{min-width:66px;text-align:center;font-family:var(--font-num);font-weight:700;font-size:13px}.bottom-fixed{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:center;pointer-events:none;z-index:20}.bottom-fixed>.bottom-inner{width:100%;max-width:480px;position:relative;pointer-events:none}.ask{position:absolute;left:14px;right:14px;bottom:calc(88px + env(safe-area-inset-bottom));height:48px;border-radius:999px;background:var(--chrome);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 6px 24px #00000073;display:flex;align-items:center;gap:10px;padding:0 16px;cursor:pointer;border:none;pointer-events:auto}.ask span{flex:1;font-size:13.5px;color:var(--faint);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.ask .plus{width:36px;height:36px;border-radius:999px;background:var(--kcal);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ask .plus svg{width:19px;height:19px;stroke:#fff;fill:none;stroke-width:2.6;stroke-linecap:round}.bottombar{position:absolute;left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;pointer-events:none}.tabbar{flex:1;min-width:0;height:64px;border-radius:999px;background:var(--chrome);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 6px 24px #00000073;display:flex;justify-content:space-around;align-items:center;padding:0 4px;pointer-events:auto}.fab{width:64px;height:64px;flex-shrink:0;border-radius:999px;background:var(--chrome);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 6px 24px #00000073;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto;color:var(--ink);padding:0;min-height:64px}.fab svg{transition:transform .22s cubic-bezier(.4,0,.2,1)}.fab.open svg{transform:rotate(45deg)}.ark-slor{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0b0d9e;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);border:none;padding:0;pointer-events:auto;cursor:default;z-index:0;min-height:0;animation:ark-inn .16s ease-out}.ark{position:absolute;left:14px;right:14px;bottom:calc(148px + env(safe-area-inset-bottom));background:var(--card);border-radius:24px;padding:14px 10px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;pointer-events:auto;box-shadow:0 14px 44px #0009;z-index:1;animation:ark-opp .2s cubic-bezier(.2,.8,.3,1)}.ark-h{background:none;border:none;cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:500;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px 2px;border-radius:16px;min-height:0}.ark-h:hover{background:var(--tile)}.ark-ikon{width:46px;height:46px;border-radius:999px;background:var(--tile);display:flex;align-items:center;justify-content:center;color:var(--ink)}.ark-ikon svg{stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}@keyframes ark-inn{0%{opacity:0}to{opacity:1}}@keyframes ark-opp{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.ark,.ark-slor{animation:none}.fab svg{transition:none}}.tab{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:10px;font-weight:500;color:var(--faint);background:none;border:none;cursor:pointer;font-family:inherit;min-width:0;flex:1;text-decoration:none;padding:0}.tab .pill{width:48px;height:30px;border-radius:999px;display:flex;align-items:center;justify-content:center}.tab svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tab.on{color:var(--ink)}.tab.on .pill{background:var(--tile)}.toast{position:fixed;left:50%;transform:translate(-50%);top:max(52px,calc(env(safe-area-inset-top) + 16px));width:calc(100% - 36px);max-width:444px;background:var(--ink);color:var(--bg);padding:11px 15px;border-radius:14px;font-weight:600;font-size:12.5px;z-index:40;box-shadow:0 8px 24px #00000040;text-align:center}.photo{aspect-ratio:4 / 3;border-radius:16px;background:linear-gradient(150deg,#2e3140,#23252e 45%,#3a2e2a 78%,#4a3a2c);position:relative;overflow:hidden;border:none;width:100%;padding:0;cursor:pointer}.photo .tag{background:#141519c7;color:var(--ink);font-size:10.5px;font-weight:700;border-radius:8px;padding:3px 7px;position:absolute}@media (prefers-reduced-motion: no-preference){.item,.chip,.tab,.stat,.tl{transition:background .15s}}.center-page{min-height:100dvh;display:flex;align-items:center;padding:max(28px,env(safe-area-inset-top)) 20px max(28px,env(safe-area-inset-bottom))}
