@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg:#161826;--color-surface:#232532;--color-text:#e9e9ed;--color-accent:#9184d9;--color-divider:#e9e9ed29;--color-neutral-100:#f3f5fe;--color-neutral-200:#e4e7f5;--color-neutral-600:#75798c;--color-neutral-800:#3f424d;--color-accent-100:#f5f4ff;--color-accent-200:#e7e5fe;--color-accent-300:#d2cefd;--color-accent-700:#5d5294;--color-accent-800:#423a6a;--shadow-sm:0 0 0 1px #3f424d;--shadow-md:0 0 0 1px #595d6c, 0 6px 18px #0000008c;--shadow-lg:0 0 0 1px #9397ab, 0 16px 40px #000000a6;--font-heading:"Inter Variable", system-ui, sans-serif;--font-body:"Inter Variable", system-ui, sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:14px}:root[data-theme=light]{--color-bg:#eff1f8;--color-surface:#fbfbfe;--color-text:#292b31;--color-accent:#6f61b8;--color-divider:#292b3124;--shadow-sm:0 0 0 1px #e4e7f5;--shadow-md:0 0 0 1px #e4e7f5, 0 6px 18px #292b3114;--shadow-lg:0 0 0 1px #cfd3e5, 0 16px 40px #292b311f}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);margin:0;font-size:14px;line-height:1.55}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.015em;margin:0;font-weight:600}h6{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-text) 62%, transparent);font-size:12px}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb, var(--color-accent) 30%, transparent)}.ic{flex:none;display:block}.muted{color:color-mix(in srgb, var(--color-text) 50%, transparent)}.mono-num{font-variant-numeric:tabular-nums}.btn{cursor:pointer;font-family:var(--font-heading);color:var(--color-text);border-radius:var(--radius-md);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-size:13.5px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:var(--color-accent);border-color:var(--color-accent)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-accent) 12%, transparent)}.btn-primary:active{background:color-mix(in srgb, var(--color-accent) 22%, transparent)}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover:not(:disabled){background:color-mix(in srgb, var(--color-text) 7%, transparent)}.btn-ghost{color:color-mix(in srgb, var(--color-text) 62%, transparent);padding-inline:8px}.btn-ghost:hover{background:color-mix(in srgb, var(--color-text) 7%, transparent)}.btn-icon{width:30px;height:30px;color:color-mix(in srgb, var(--color-text) 45%, transparent);padding:0}.btn-icon:hover{background:color-mix(in srgb, var(--color-text) 8%, transparent);color:var(--color-text)}.btn .cd{opacity:.5}.btn .ac{color:var(--color-accent)}select.btn{appearance:none;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;padding-right:26px}.field{flex-direction:column;gap:5px;display:flex}.field>label{color:color-mix(in srgb, var(--color-text) 70%, transparent);font-size:12px}.input{width:100%;min-height:34px;font:inherit;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:6px 10px;font-size:13.5px}.input:hover{border-color:color-mix(in srgb, var(--color-text) 45%, transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}.input.num{text-align:right;font-variant-numeric:tabular-nums}.input.plain{background:0 0;border-color:#0000}.toggle{cursor:pointer;color:color-mix(in srgb, var(--color-text) 70%, transparent);-webkit-user-select:none;user-select:none;align-items:center;gap:7px;font-size:12px;display:inline-flex}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle .box{border:1.5px solid var(--color-divider);border-radius:4px;flex:none;place-items:center;width:15px;height:15px;display:grid}.toggle input:checked+.box{border-color:var(--color-accent);background:var(--color-accent)}.toggle input:checked+.box:after{content:"";border-left:2px solid var(--color-bg);border-bottom:2px solid var(--color-bg);width:7px;height:4px;transform:translateY(-1px)rotate(-45deg)}.toggle input:focus-visible+.box{outline:2px solid var(--color-accent);outline-offset:2px}.tag{letter-spacing:.02em;white-space:nowrap;border-radius:6px;align-items:center;padding:2px 9px;font-size:11px;display:inline-flex}.tag-neutral{background:var(--color-neutral-800);color:var(--color-neutral-100)}:root[data-theme=light] .tag-neutral{background:var(--color-neutral-200);color:var(--color-neutral-800)}.tag-accent{background:var(--color-accent-800);color:var(--color-accent-100)}:root[data-theme=light] .tag-accent{background:var(--color-accent-200);color:var(--color-accent-700)}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px 24px}.sec-head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.sec-head .rule{background:linear-gradient(to right, var(--color-divider), transparent);flex:1;height:1px}.sec-head .note{color:color-mix(in srgb, var(--color-text) 45%, transparent);flex:none;font-size:11px}.wrap{max-width:1560px;margin:0 auto;padding:26px 30px 56px}.topbar{align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.brand{flex-direction:column;gap:4px;margin-right:auto;display:flex}.brand .name{align-items:baseline;gap:10px;display:flex}.brand .name b{font-family:var(--font-heading);letter-spacing:-.02em;font-size:24px;font-weight:600}.brand .name .org{opacity:.5;letter-spacing:.14em;text-transform:uppercase;font-size:12px}.brand .sub{letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--color-text) 45%, transparent);font-size:11.5px}.topbar .right{align-items:center;gap:16px;display:flex}.topbar .meta{color:color-mix(in srgb, var(--color-text) 55%, transparent);flex-direction:column;align-items:flex-end;gap:2px;font-size:12px;display:flex}.topbar .meta .input{text-align:right;width:150px;padding:3px 8px;font-size:12px}.topbar .meta input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;cursor:pointer}:root[data-theme=light] .topbar .meta input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.stack{flex-direction:column;gap:18px;display:flex}.grid-fields{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px 22px;display:grid}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.actions .divider{background:var(--color-divider);width:1px;height:24px;margin:0 3px}.actions .push{align-items:center;gap:10px;margin-left:auto;display:flex}.cols{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (max-width:920px){.cols{grid-template-columns:1fr}}.pgrid{grid-template-columns:44px minmax(0,1fr) 56px 44px 24px;align-items:center;gap:9px;display:grid}.pgrid .h{letter-spacing:.09em;text-transform:uppercase;opacity:.5;white-space:nowrap;font-size:10px}.pgrid .h.r,.pgrid .tot{text-align:right}.pgrid .pos{align-items:center;gap:7px;display:flex}.pgrid .chip{border-radius:2px;flex:none;width:8px;height:22px}.pgrid .pos input{width:100%;padding:4px 6px;font-size:12.5px}.pgrid .input{padding:5px 8px}.pgrid .tot{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--color-text) 70%, transparent);font-size:13px}.hint{color:color-mix(in srgb, var(--color-text) 45%, transparent);margin:4px 0 0;font-size:11.5px;line-height:1.5}.tiles{background:var(--color-divider);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;display:grid;overflow:hidden}.tile{background:var(--color-surface);flex-direction:column;gap:4px;padding:13px 15px;display:flex}.tile .k{letter-spacing:.1em;text-transform:uppercase;opacity:.5;white-space:nowrap;font-size:10px}.tile .v{font-family:var(--font-heading);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:27px;line-height:1}.tile .v small{opacity:.55;font-size:14px}.tile.accent .v{color:var(--color-accent)}.tile .bar{background:var(--color-divider);border-radius:2px;height:3px;overflow:hidden}.tile .bar>span{background:var(--color-accent);height:3px;display:block}.tile .foot{opacity:.5;font-size:11px}.legend{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0;font-size:12px;display:flex}.legend .it{align-items:center;gap:7px;display:inline-flex}.legend .sw{border-radius:3px;flex:none;width:12px;height:12px}.legend .sw.rest{border:1px dashed color-mix(in srgb, var(--color-text) 40%, transparent);background:0 0}.legend .it span:last-child{opacity:.8}.opts{flex-wrap:wrap;gap:18px;margin-bottom:16px;display:flex}.groups{flex-direction:column;gap:22px;display:flex}.grp .gh{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:9px;display:flex}.grp .gh .gn{font-family:var(--font-heading);flex:none;font-size:15px}.grp .gh .recipe{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:color-mix(in srgb, var(--color-text) 50%, transparent);flex:120px;font-size:12px;overflow:hidden}.grp .gh .rest{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--color-text) 55%, transparent);flex:none;margin-left:auto;font-size:12px}.bar{border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-text) 5%, transparent);height:38px;box-shadow:inset 0 0 0 1px var(--color-divider);gap:2px;padding:3px;display:flex}.bar .seg{color:#f7f7fb;letter-spacing:.02em;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;min-width:0;font-size:10.5px;line-height:1.1;display:flex;overflow:hidden}.bar .seg.rest{color:color-mix(in srgb, var(--color-text) 60%, transparent);border:1px dashed color-mix(in srgb, var(--color-text) 30%, transparent);background:repeating-linear-gradient(45deg, transparent 0 5px, color-mix(in srgb, var(--color-text) 12%, transparent) 5px 10px)}.dims{gap:2px;height:15px;margin-top:2px;padding:0 3px;display:flex}.dims .d{text-align:center;font-variant-numeric:tabular-nums;min-width:0;color:color-mix(in srgb, var(--color-text) 50%, transparent);border-left:1px solid color-mix(in srgb, var(--color-text) 22%, transparent);border-right:1px solid color-mix(in srgb, var(--color-text) 22%, transparent);font-size:9.5px;overflow:hidden}.msg{border-radius:var(--radius-md);margin-bottom:14px;padding:11px 13px;font-size:12.5px}.msg.err{background:#d9445924;box-shadow:inset 0 0 0 1px #d9445973}.msg.err ul{margin:6px 0 0;padding-left:18px}.msg.warn{background:#e6b80024;box-shadow:inset 0 0 0 1px #e6b80066}.msg.empty{color:color-mix(in srgb, var(--color-text) 45%, transparent)}h4.rblock{font-size:13px;font-family:var(--font-heading);margin:6px 0 8px;font-weight:600}table.needed{border-collapse:collapse;font-size:12.5px}table.needed th{letter-spacing:.08em;text-transform:uppercase;opacity:.5;text-align:left;padding:2px 14px 6px 0;font-size:10px}table.needed td{padding:3px 14px 3px 0}table.needed th:nth-child(n+3),table.needed td:nth-child(n+3){text-align:right;font-variant-numeric:tabular-nums}table.needed .sw{border-radius:2px;width:9px;height:18px;display:inline-block}.pv-overlay{z-index:50;background:#0a0b129e;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pv-box{background:var(--color-surface);border-radius:var(--radius-lg);width:min(1400px,100%);height:100%;box-shadow:var(--shadow-lg);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.pv-head{align-items:center;gap:10px;display:flex}.pv-head .push{gap:10px;margin-left:auto;display:flex}.pv-frame{border-radius:var(--radius-md);background:#fff;border:0;flex:1;width:100%}
