:root{--bg: #0d1117;--surface: #161b22;--surface-2: #21262d;--border: #30363d;--text: #e6edf3;--muted: #8b949e;--accent: #6366f1;--accent-strong: #4f46e5;--accent-dim: rgba(99, 102, 241, .15);--accent-text: #818cf8;--moon: #d4a017;--moon-dim: rgba(212, 160, 23, .15);--moon-border: rgba(212, 160, 23, .4);--up: #3fb950;--down: #f78166;--error: #f85149;--tier-blue: #58a6ff;--overlay: rgba(13, 17, 23, .75);--shadow-dropdown: 0 8px 24px rgba(0, 0, 0, .5);--text-xs: .72rem;--text-sm: .82rem;--text-base: .9rem;--text-lg: 1.1rem;--text-xl: 1.6rem;--r-sm: 6px;--r-md: 10px;--r-lg: 14px}*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.layout{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.layout--wide{max-width:none}.hero h1{margin:0 0 .25rem;font-size:var(--text-xl)}.hero__note{font-size:var(--text-sm);margin-top:.35rem}.muted{color:var(--muted)}.placeholder{margin:0;padding:1rem 0;color:var(--muted);font-size:var(--text-sm);text-align:center}.error{color:var(--error);font-size:var(--text-base)}.tooltip{position:relative;display:inline-flex}.tooltip__bubble{position:absolute;bottom:calc(100% + 6px);left:0;width:max-content;max-width:min(16rem,90vw);display:flex;flex-direction:column;gap:.2rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text);font-size:var(--text-xs);padding:.25rem .5rem;border-radius:var(--r-sm);box-shadow:0 4px 14px #00000073;pointer-events:none;z-index:200;visibility:hidden;opacity:0}.tooltip:hover .tooltip__bubble,.tooltip:focus-within .tooltip__bubble{visibility:visible;opacity:1}.tooltip__row{display:flex;justify-content:space-between;gap:1.25rem;min-width:12rem}.tooltip__label{color:var(--muted)}.tooltip__val{font-weight:600;color:var(--text)}.tooltip__row+.tooltip__row{border-top:1px solid var(--border);padding-top:.2rem;margin-top:.1rem}.tooltip__row:last-child .tooltip__val{color:var(--moon)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.grid--3{grid-template-columns:repeat(3,1fr)}@media(max-width:860px){.grid,.grid--3{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.25rem}.card h2,.card h3{margin-top:0}.form__row{display:flex;flex-wrap:wrap;gap:1rem}.form label{display:flex;flex-direction:column;gap:.35rem;font-size:var(--text-sm);color:var(--muted);flex:1 1 160px}.form fieldset{border:1px solid var(--border);border-radius:var(--r-md);margin:1rem 0 0}.form legend{padding:0 .5rem;color:var(--muted);font-size:var(--text-sm)}input,select{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--r-md);padding:.5rem .6rem;font-size:var(--text-base)}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:0}.subskill-trigger:focus-visible,.nature-trigger:focus-visible,.species-trigger:focus-visible,.icon-btn:focus-visible,.level-stepper__btn:focus-visible,.stepper__btn:focus-visible,.modal-close:focus-visible,.level-chip:focus-visible,.btn:focus-visible,.tab:focus-visible,.filter-btn:focus-visible,.island-tab__island-trigger:focus-visible,.specialty-toggle__btn:focus-visible,.avatar-btn:focus-visible,.prod-box-item:focus-visible,.filter-list__item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{border:none;border-radius:var(--r-md);padding:.6rem 1rem;font-size:var(--text-base);cursor:pointer;font-weight:600}.btn--primary{background:var(--accent-strong);color:#fff;margin-top:1rem}.btn--primary:hover{background:var(--accent)}.btn--primary:disabled{opacity:.6;cursor:default}.btn--ghost{background:transparent;color:var(--muted);border:1px solid var(--border);margin-top:.75rem}.btn--ghost:hover{color:var(--text);border-color:var(--muted)}.btn--danger{background:var(--error);border:1px solid var(--error);color:#fff}.btn--danger:hover{filter:brightness(.9)}.subskill-select{position:relative;width:100%}.subskill-trigger{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.45rem .6rem;cursor:pointer}.subskill-trigger:hover{border-color:var(--accent)}.subskill-slots{display:flex;gap:.5rem}.subskill-trigger__hint{font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.ss-icon{position:relative;width:36px;height:36px;border-radius:var(--r-sm);border:2px solid var(--tier, var(--border));background:var(--surface);display:grid;place-items:center;flex-shrink:0}.ss-icon img{width:24px;height:24px;object-fit:contain}.ss-icon--empty{border-color:var(--border);background:transparent;opacity:.4}.ss-icon--gold{--tier: var(--moon)}.ss-icon--blue{--tier: var(--tier-blue)}.ss-icon--regular{--tier: var(--muted)}.ss-icon--empty{--tier: var(--border);border-style:dashed;opacity:.6}.ss-icon.is-locked{filter:brightness(.45)}.ss-icon__lv{position:absolute;bottom:-7px;right:-7px;min-width:16px;text-align:center;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;font-size:var(--text-xs);line-height:1.4;padding:0 3px;color:var(--muted)}.subskill-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:0 8px 24px #00000080;padding:.6rem;max-height:340px;overflow-y:auto;display:flex;flex-direction:column;gap:.7rem}.subskill-group__title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.4rem;font-weight:700}.subskill-group__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.35rem}.subskill-option{display:flex;align-items:center;gap:.5rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.3rem .45rem;color:var(--text);font-size:var(--text-sm);cursor:pointer;text-align:left}.subskill-option .ss-icon{width:30px;height:30px}.subskill-option .ss-icon img{width:20px;height:20px}.subskill-option:hover:not(:disabled){border-color:var(--accent)}.subskill-option--selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.subskill-option:disabled{opacity:.4;cursor:default}.nature-select{position:relative;width:100%}.nature-trigger{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.5rem .7rem;color:var(--text);cursor:pointer}.nature-trigger:hover{border-color:var(--accent)}.nature-trigger__name{font-weight:600}.nature-effect{display:inline-flex;gap:.3rem;flex-shrink:0}.nat-stat{position:relative;display:inline-flex;align-items:center;gap:1px;height:24px;padding:0 5px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);line-height:1}.nat-stat img{width:15px;height:15px;object-fit:contain}.nat-stat svg{width:15px;height:15px}.nat-stat:before{font-size:var(--text-xs);font-weight:700}.nat-stat--up{color:var(--down)}.nat-stat--up:before{content:"▲"}.nat-stat--down{color:var(--tier-blue)}.nat-stat--down:before{content:"▼"}.nature-dropdown{position:absolute;top:calc(100% + 6px);right:0;left:auto;width:max(100%,384px);z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-dropdown);padding:.6rem;max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:.7rem}.nature-group__title{display:flex;align-items:center;gap:.4rem;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.4rem;font-weight:700}.nature-group__icon{width:16px;height:16px;object-fit:contain}.nature-group__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.35rem}.nature-option{display:flex;align-items:center;justify-content:space-between;gap:.4rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.4rem .5rem;color:var(--text);font-size:var(--text-sm);cursor:pointer;text-align:left}.nature-option__name{font-weight:600;min-width:0;white-space:nowrap}.nature-option .nature-effect{margin-left:auto}.nature-option:hover{border-color:var(--accent)}.nature-option--selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.nature-option--highlight{border-color:var(--accent);background:var(--surface-2)}.sprite{width:32px;height:32px;object-fit:contain;flex-shrink:0;image-rendering:pixelated}.species-select{position:relative;width:100%}.species-trigger{display:flex;align-items:center;gap:.5rem;width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.3rem .6rem;color:var(--text);font-size:var(--text-base);cursor:pointer;text-align:left}.species-trigger:hover{border-color:var(--accent)}.species-trigger__name{font-weight:600}.species-trigger__meta{color:var(--muted);font-size:var(--text-sm)}.species-trigger__chevron{margin-left:auto;color:var(--muted)}.species-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-dropdown);overflow:hidden}.species-search{width:100%;border:none;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface-2);padding:.55rem .7rem;color:var(--text)}.species-search:focus{outline:2px solid var(--accent);outline-offset:-2px}.species-options{list-style:none;margin:0;padding:.25rem;max-height:240px;overflow-y:auto}.species-option{display:flex;align-items:center;gap:.5rem;width:100%;background:transparent;border:none;border-radius:var(--r-sm);padding:.3rem .5rem;color:var(--text);font-size:var(--text-base);cursor:pointer;text-align:left}.species-option:hover,.species-option--highlight{background:var(--surface-2)}.species-option--active{background:var(--accent-dim)}.species-option__name{font-weight:600}.species-option__meta{margin-left:auto;color:var(--muted);font-size:var(--text-sm)}.species-empty{padding:.6rem .7rem}.ingredient-slots{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.ingredient-slot{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex:0 0 auto;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.5rem .75rem}.ingredient-slot--locked{opacity:.45}.ingredient-slot__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.ingredient-slot__options{display:flex;flex-wrap:nowrap;gap:.35rem;justify-content:center}.ingredient-icon{width:44px;height:44px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;display:grid;place-items:center;padding:4px}.ingredient-icon__img{width:100%;height:100%;object-fit:contain}.ingredient-icon:hover{border-color:var(--accent)}.ingredient-icon--active{border-color:var(--accent);background:var(--accent-dim);box-shadow:inset 0 0 0 1px var(--accent)}.level-selector{display:flex;flex-direction:column;gap:.6rem;margin:.75rem 0}.level-stepper{display:flex;align-items:center;gap:.5rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.5rem .75rem}.level-stepper__label{font-size:var(--text-base);color:var(--muted);margin-right:auto}.level-stepper__btn{width:28px;height:28px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:var(--text-lg);line-height:1;cursor:pointer;display:grid;place-items:center}.level-stepper__btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text)}.level-stepper__btn:disabled{opacity:.35;cursor:default}.level-stepper__input{width:3.5ch;text-align:center;font-size:var(--text-lg);font-weight:700;background:transparent;border:none;color:var(--text);padding:0}.level-stepper__input:focus:not(:focus-visible){outline:none}.level-stepper__input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.level-stepper__input::-webkit-outer-spin-button,.level-stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.level-stepper__input{appearance:textfield;-moz-appearance:textfield}.level-shortcuts{display:flex;flex-wrap:wrap;gap:.4rem}.level-chip{min-width:34px;height:30px;padding:0 .55rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:var(--text-sm);font-weight:600;cursor:pointer}.level-chip:hover{border-color:var(--accent);color:var(--text)}.level-chip--active{background:var(--accent);border-color:var(--accent);color:#fff}.stepper{display:flex;align-items:stretch;gap:.5rem}.stepper__btn{flex:0 0 auto;width:2.4rem;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--text-xl);line-height:1;cursor:pointer;transition:background .15s,border-color .15s}.stepper__btn:hover:not(:disabled){border-color:var(--accent)}.stepper__btn:disabled{opacity:.35;cursor:not-allowed}.stepper__display{flex:1 1 auto;display:flex;align-items:center;gap:.6rem;padding:.4rem .7rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}.stepper__level{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:var(--text-base)}.stepper__text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.stepper__primary{color:var(--text);font-size:var(--text-base);font-weight:600}.stepper__secondary{color:var(--muted);font-size:var(--text-sm)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0 1rem}.section-head h2{margin:0}.section-head__title{display:flex;align-items:baseline;gap:.5rem;min-width:0}.modal-overlay{position:fixed;inset:0;background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow-y:auto;z-index:50;animation:overlay-in .12s ease-out}.modal-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:560px;margin:auto;box-shadow:0 20px 60px #00000080;animation:modal-in .12s ease-out}.modal-panel--wide{max-width:min(900px,96vw)}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.modal-head h2{margin:0;font-size:var(--text-lg)}.modal-close{background:transparent;border:none;color:var(--muted);display:grid;place-items:center;cursor:pointer;width:32px;height:32px;border-radius:var(--r-sm)}.modal-close:hover{color:var(--text);background:var(--surface-2)}.modal-body{padding:1.25rem}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;margin-top:1.25rem}.modal-actions .btn{margin-top:0}.members{display:flex;flex-direction:column;gap:1rem}.box-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:1rem}.box-toolbar__order{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm)}.sort-control{display:inline-flex;align-items:stretch;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.sort-control:has(.filter-btn--open){border-color:var(--accent)}.sort-control .filter-control{align-items:stretch}.sort-control .filter-btn.sort-control__trigger{border:none;border-radius:0;background:transparent}.sort-control__dir{display:inline-flex;align-items:center;padding:0 .6rem;background:transparent;border:none;border-left:1px solid var(--border);color:var(--text);cursor:pointer}.sort-control__dir:hover{color:var(--accent-text)}.box-toolbar__filters{display:flex;flex-wrap:wrap;gap:.4rem}.box-toolbar__active{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;flex-basis:100%}.box-filter-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--text-xs);color:var(--text);background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--r-sm);padding:.1rem .5rem;cursor:pointer;align-self:center}.box-toolbar__clear{font-size:var(--text-sm);margin-top:0;margin-left:auto;padding:.15rem .6rem;align-self:center}.box-filter-chip__icon{width:16px;height:16px;object-fit:contain}.filter-control{position:relative;display:inline-flex}.filter-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:var(--text-sm);padding:.35rem .55rem;cursor:pointer}.filter-btn:hover,.filter-btn--open{border-color:var(--accent)}.filter-btn__value{display:inline-flex;align-items:center;gap:.35rem}.filter-btn__value .mini-icon{width:18px;height:18px}.filter-btn__icons{display:inline-flex;align-items:center}.filter-btn__icons .mini-icon{width:18px;height:18px}.filter-btn__icons .mini-icon+.mini-icon{margin-left:-6px}.filter-btn__placeholder{color:var(--muted)}.filter-btn__chevron{color:var(--muted);flex-shrink:0}.filter-pop{position:absolute;left:0;top:calc(100% + 4px);z-index:20;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-dropdown);padding:.5rem}.filter-grid,.filter-list{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.filter-grid::-webkit-scrollbar,.filter-list::-webkit-scrollbar{width:6px}.filter-grid::-webkit-scrollbar-thumb,.filter-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.filter-grid::-webkit-scrollbar-track,.filter-list::-webkit-scrollbar-track{background:transparent}.filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.25rem;width:min(20rem,72vw);max-height:18rem;overflow-y:auto}.filter-list{display:flex;flex-direction:column;gap:.1rem;width:min(16rem,72vw);max-height:18rem;overflow-y:auto}.filter-list__item{display:flex;align-items:center;gap:.4rem;background:none;border:1px solid transparent;border-radius:var(--r-sm);color:var(--text);font-size:var(--text-sm);text-align:left;padding:.35rem .5rem;cursor:pointer}.filter-list__item .mini-icon{width:18px;height:18px;object-fit:contain;flex-shrink:0}.filter-list__item:hover{background:var(--surface)}.filter-list__item.is-selected{border-color:var(--accent);background:var(--accent-dim)}.filter-list__label{line-height:1.2}.filter-list__group+.filter-list__group{margin-top:.35rem}.filter-list__heading{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.25rem .5rem .15rem}.filter-grid__item{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:none;border:1px solid transparent;border-radius:var(--r-sm);color:var(--text);font-size:var(--text-xs);padding:.35rem .2rem;cursor:pointer}.filter-grid__item .mini-icon{width:28px;height:28px;object-fit:contain}.filter-grid__item:hover{background:var(--surface)}.filter-grid__item.is-selected{border-color:var(--accent);background:var(--accent-dim)}.filter-grid__label{text-align:center;line-height:1.1}.specialty-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.specialty-toggle__btn{background:var(--surface-2);border:none;border-left:1px solid var(--border);color:var(--muted);font-size:var(--text-sm);padding:.35rem .6rem;cursor:pointer}.specialty-toggle__btn:first-child{border-left:none}.specialty-toggle__btn:hover{color:var(--text)}.specialty-toggle__btn.is-on{background:var(--accent-dim);color:var(--accent-text);font-weight:600}.box-entry{display:grid;grid-template-columns:13rem auto auto 5.5rem 6rem 7rem auto;align-items:center;justify-content:space-between;gap:1rem 1.1rem}.box-entry__identity{display:flex;align-items:center;gap:.6rem;min-width:0}.box-entry__id-text{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;min-width:0}.box-entry__sprite{width:56px;height:56px;object-fit:contain;flex-shrink:0;image-rendering:pixelated}.box-entry__title{display:flex;align-items:center;gap:.3rem;min-width:0;max-width:100%}.box-entry__name{font-size:var(--text-lg);font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.box-entry__title .ribbon-icon{flex-shrink:0}.box-entry__ing-config{opacity:.85}.box-entry__ing-config .ingredient-row{flex-wrap:nowrap}.box-entry__config.prod-box-item__config{opacity:.85;flex-direction:column;align-items:center;flex-wrap:nowrap;gap:.3rem;min-width:0}.box-entry__config .ingredient-row{flex-wrap:nowrap}.box-entry__berries{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;flex-shrink:0}.box-entry__skill{display:flex;flex-direction:row;align-items:center;gap:.5rem;flex-shrink:0}.box-entry__skill-icon{display:inline-flex;flex-shrink:0}.box-entry__skill-icon img,.box-entry__skill-icon svg{width:26px;height:26px}.box-entry__skill-stats{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.box-entry__skill-stat{display:inline-flex;align-items:center;gap:.3rem}.box-entry__skill-yield-icon{width:13px;height:13px;opacity:.85}.box-entry__metric{display:inline-flex;align-items:center;gap:.3rem}.box-entry__metric .mini-icon,.box-entry__metric svg{width:18px;height:18px}.box-entry__metric-value{font-size:var(--text-base);font-variant-numeric:tabular-nums;color:var(--text)}.box-entry__ingredients{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;min-width:0}.box-entry__ing-pair{display:inline-flex;align-items:center;gap:.3rem}.box-entry__ing-pair .mini-icon{width:18px;height:18px}.box-entry__ing-skill{width:11px;height:11px;opacity:.8}.box-entry__actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.box-entry__menu{position:relative}.box-entry__menu-btn{line-height:1}.box-entry__menu-pop{position:absolute;right:0;top:calc(100% + 4px);z-index:30;display:flex;flex-direction:column;min-width:9rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-dropdown);padding:.25rem}.box-entry__menu-item{text-align:left;background:none;border:none;color:var(--text);font-size:var(--text-sm);padding:.4rem .6rem;border-radius:var(--r-sm);cursor:pointer}.box-entry__menu-item:hover{background:var(--surface)}.box-entry__menu-item--compare:hover{color:var(--accent-text)}.box-entry__menu-item--danger:hover{color:var(--error)}@media(max-width:1024px){.box-entry{position:relative;grid-template-columns:1fr 1fr;align-items:start;justify-content:stretch;gap:.7rem 1rem}.box-entry__identity{grid-column:1 / -1;grid-row:1;padding-right:2.25rem}.box-entry__actions{position:absolute;top:1.25rem;right:1.25rem}.box-entry__ing-config{grid-column:1;grid-row:2}.box-entry__config.prod-box-item__config{grid-column:2;grid-row:2;align-items:flex-start}.box-entry__config .ss-icon{width:26px;height:26px}.box-entry__berries{grid-column:1;grid-row:3}.box-entry__skill{grid-column:2;grid-row:3}.box-entry__ingredients{grid-column:1 / -1;grid-row:4;flex-direction:row;flex-wrap:wrap;gap:.3rem .9rem}}.ingredient-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.ingredient-row__icon{width:28px;height:28px;object-fit:contain}.ingredient-row__icon--locked{opacity:.45}.ingredient-row .ss-icon{width:30px;height:30px}.ingredient-row .ss-icon img{width:22px;height:22px}.badge{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.15rem .6rem;font-size:var(--text-sm)}.badge--level{color:var(--moon);border-color:var(--moon-dim)}.badge--ok{color:var(--up);border-color:var(--up)}.badge--low{color:var(--down);border-color:var(--down)}.nature-effect .up{color:var(--up)}.nature-effect .down{color:var(--down)}.chips{display:flex;flex-wrap:wrap;gap:.35rem}.chip{border-radius:var(--r-sm);padding:.2rem .5rem;font-size:var(--text-sm);border:1px solid var(--border)}.chip--ingredient{background:var(--moon-dim);border-color:var(--moon-border)}.chip--subskill{background:var(--accent-dim);border-color:var(--accent)}.distributions{margin-top:2.5rem}.distributions>h2{margin-top:0}.coverage-block{margin-bottom:1rem}.coverage-block__head{font-size:var(--text-base);margin:0 0 .6rem}.specialties-count{display:flex;gap:1.5rem}.specialties-count__item{display:flex;flex-direction:column;gap:.1rem}.specialties-count__number{font-size:var(--text-lg);font-weight:700}.coverage-grid{display:flex;flex-wrap:wrap;gap:.5rem}.coverage-icon{width:28px;height:28px;object-fit:contain}.coverage-icon--missing{opacity:.3;filter:grayscale(1)}.tabs{display:flex;gap:.5rem;max-width:1100px;margin:0 auto;padding:1.25rem 1.5rem 0}.tab{display:inline-flex;align-items:center;background:transparent;border:1px solid transparent;color:var(--muted);font-size:var(--text-lg);font-weight:600;padding:.55rem 1rem;border-radius:var(--r-md);cursor:pointer;text-decoration:none}.tab:hover{color:var(--text);background:var(--surface)}.tab--active{color:var(--text);background:var(--surface);border-color:var(--border)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1100px;margin:0 auto;padding:1.25rem 1.5rem 0}.topbar .tabs{margin:0;padding:0}.lang-select{display:flex;gap:.3rem;flex:0 0 auto}.lang-chip{min-width:36px;height:30px;padding:0 .5rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:var(--text-sm);font-weight:700;cursor:pointer}.lang-chip:hover{border-color:var(--accent);color:var(--text)}.lang-chip--active{background:var(--accent);border-color:var(--accent);color:#fff}.prod-card--add{align-items:center;justify-content:center;text-align:center;gap:1rem;border-style:dashed;transition:border-color .12s}.prod-card--add:hover{border-color:var(--accent)}.prod-add__hint{margin:0;font-size:var(--text-sm)}.prod-add__actions{display:flex;flex-direction:column;gap:.5rem;width:100%}.prod-add__actions .btn{width:100%}.prod-member-select{display:block;margin-top:.35rem;width:100%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-md);padding:.55rem .6rem;font-size:var(--text-base)}.prod-results{margin-top:1.5rem;display:grid;gap:1.5rem}.prod-stat{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}.prod-stat__label{color:var(--muted);font-size:var(--text-sm)}.prod-stat__value{font-size:var(--text-xl);font-weight:700;color:var(--moon)}.prod-stat__meta{color:var(--muted);font-size:var(--text-sm)}.prod-ingredients{list-style:none;margin:.5rem 0 0;padding:0;display:flex;gap:1.5rem;flex-wrap:wrap}.prod-ingredient{display:flex;flex-direction:column;align-items:center;gap:.2rem;min-width:84px}.prod-ingredient .ingredient-icon__img{width:40px;height:40px}.prod-ingredient__amount{font-size:var(--text-lg);font-weight:700}.prod-ingredient__name{color:var(--muted);font-size:var(--text-sm);text-align:center}.ingredient-option{position:relative;display:inline-flex}.ingredient-option__amount{position:absolute;right:2px;bottom:2px;background:var(--accent);color:#fff;font-size:var(--text-xs);font-weight:700;line-height:1;padding:.12rem .3rem;border-radius:999px;pointer-events:none}.prod-current{display:flex;align-items:center;gap:.6rem;margin-top:1rem}.prod-current__name{font-weight:700}.prod-box-search{display:block;width:calc(100% + 2.5rem);margin:-1.25rem -1.25rem .75rem;border:none;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface-2);padding:.55rem 1.25rem;color:var(--text);font-size:var(--text-base)}.prod-box-search:focus{outline:2px solid var(--accent);outline-offset:-2px}.prod-box-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.prod-box-item{display:flex;flex-direction:column;gap:.4rem;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-md);padding:.6rem .75rem;cursor:pointer}.prod-box-item:hover:not(:disabled){border-color:var(--accent)}.prod-box-item:disabled{cursor:default;border-style:dashed;opacity:.5}.prod-box-item__topline{display:flex;align-items:center;gap:.5rem;min-width:0}.prod-box-item__config{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.prod-box-item__config .ingredient-row{gap:.25rem}.prod-box-item__title{display:flex;align-items:center;gap:.3rem;flex:1;min-width:0}.prod-box-item__name{font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prod-box-item__title .ribbon-icon{flex-shrink:0}.prod-box-item__nature{font-size:var(--text-xs);flex-shrink:0;white-space:nowrap}.prod-box-item__nature .nat-up{color:var(--up)}.prod-box-item__nature .nat-down{color:var(--down)}.prod-box-item__nature .nat-up--muted,.prod-box-item__nature .nat-down--muted{color:var(--muted)}.prod-box-item .ss-icon{width:26px;height:26px}.prod-box-item .ss-icon img{width:18px;height:18px}.prod-box-item .ingredient-row__icon{width:26px;height:26px}.prod-box-item__tag{font-size:var(--text-xs);color:var(--muted);border:1px solid var(--border);border-radius:var(--r-sm);padding:.05rem .4rem}.prod-box-item__skill-lv{display:inline-flex;align-items:center;gap:.2rem;font-size:var(--text-xs);color:var(--muted);white-space:nowrap;flex-shrink:0}.prod-box-item__skill-lv svg,.prod-box-item__skill-lv img{width:14px;height:14px}.prod-box-item.is-highlighted:not(:disabled){border-color:var(--accent);background:var(--accent-dim)}.prod-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem;margin-top:1.5rem;align-items:stretch}@media(min-width:1100px){.prod-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1450px){.prod-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1800px){.prod-cards{grid-template-columns:repeat(5,minmax(0,1fr))}}.prod-card-cell{display:flex;flex-direction:column;min-width:0}.prod-card-cell>.prod-card{flex:1}.prod-card-cell>.prod-card:not(.prod-card--add){border-top-left-radius:0;border-top-right-radius:0}.prod-card__toolbar{display:flex;align-items:center;gap:0;min-height:26px;padding:0 .25rem;background:var(--surface);border:1px solid var(--border);border-bottom:none;border-radius:var(--r-lg) var(--r-lg) 0 0}.prod-card__toolbar-status{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:.15rem}.prod-card__toolbar--empty{background:none;border:none}.prod-card-cell:only-child{grid-column:1 / -1;max-width:460px;justify-self:center}.prod-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:.9rem;display:flex;flex-direction:column;gap:.55rem}.prod-card--enter{animation:prod-card-in .15s ease-out}@keyframes prod-card-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.prod-card--base{border-color:var(--moon-border)}.prod-card--favorite-berry{border-color:var(--moon-border);box-shadow:inset 0 0 0 1px var(--moon-dim)}.prod-card__fav-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:700;color:var(--moon);background:var(--moon-dim);border:1px solid var(--moon-border);border-radius:999px;padding:0 .4rem;line-height:1.6;margin-left:.35rem;vertical-align:middle}.prod-card__base-row{display:flex;min-height:1.4rem}.prod-card__base-tag{align-self:flex-start;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .45rem;border-radius:var(--r-sm)}span.prod-card__base-tag{color:var(--moon);background:var(--moon-dim);border:1px solid var(--moon-border)}button.prod-card__base-tag--action{color:var(--muted);background:transparent;border:1px solid var(--border);cursor:pointer;transition:border-color .12s,color .12s}button.prod-card__base-tag--action:hover{border-color:var(--accent);color:var(--text)}.prod-card__remove{margin-left:.25rem}.prod-card__remove:hover:not(:disabled){color:var(--error);background:transparent}.prod-card__calc{min-height:220px;display:flex;align-items:center;justify-content:center;text-align:center}.prod-card--dragging{opacity:.4}.prod-card--dragover{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.prod-card__grip{cursor:grab}.prod-card__grip:active{cursor:grabbing}.prod-card__move{font-size:1.1rem;line-height:1;padding:0 .25rem}.prod-delta{font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;transition:color .15s ease-out}.prod-delta--up{color:var(--up)}.prod-delta--down{color:var(--down)}.prod-delta--same{color:var(--muted)}.prod-card__head{display:flex;flex-direction:column;gap:.35rem}.prod-card__topline{display:flex;align-items:center;gap:.35rem}.prod-card__sprite{width:88px;height:88px;image-rendering:pixelated;flex-shrink:0;align-self:center}.prod-card__title{display:flex;align-items:baseline;flex-wrap:wrap;gap:.3rem;line-height:1.4}.prod-card__title strong{font-size:var(--text-lg);font-weight:700}.prod-card__title .muted{font-size:var(--text-sm);font-weight:400}.prod-card__save{font-size:var(--text-xs);margin:0}.icon-btn--saving{animation:icon-pulse .9s ease-in-out infinite}@keyframes icon-pulse{0%,to{opacity:1}50%{opacity:.4}}.prod-card__save--ok{color:var(--up)}.prod-card__save--error{color:var(--error)}.icon-btn{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:var(--text-base);padding:.3rem;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn--inbox{color:var(--accent-text)}.btn--ghost:disabled{opacity:.5;cursor:default}.btn--ghost:disabled:hover{color:var(--muted);border-color:var(--border)}.prod-card__tags{display:flex;flex-direction:column;gap:.3rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.prod-card__tags .icon-row{justify-content:center;min-height:26px}.icon-row{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;font-size:var(--text-sm)}.mini-icon{height:22px;width:auto}.mini-icon--empty{display:inline-block;width:22px;height:22px;border:1px solid var(--border);border-radius:var(--r-sm);opacity:.4}.mini-icon--locked{opacity:.3;filter:grayscale(.6)}.prod-card .ss-icon{width:26px;height:26px;border-radius:var(--r-sm)}.prod-card .ss-icon img{width:18px;height:18px}.prod-card__nature .nat-up{color:var(--up)}.prod-card__nature .nat-down{color:var(--down)}.prod-card__line{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:var(--text-sm)}.prod-card__line>span,.prod-card__night>span{display:inline-flex;align-items:center;gap:.3rem}.prod-card__line svg{color:var(--muted);flex-shrink:0}.prod-card__night svg{color:var(--moon);flex-shrink:0}.prod-card__block{border-top:1px solid var(--border);padding-top:.55rem;display:flex;flex-direction:column;gap:.35rem}.prod-card__block-head{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.prod-card__ings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.prod-card__ings li{display:flex;align-items:center;gap:.3rem;font-size:var(--text-sm);min-height:22px}.prod-ing__breakdown{display:inline-flex;align-items:center;gap:.2rem;margin-left:auto;font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.prod-ing__breakdown img{width:12px;height:12px}.prod-card__block--ing .prod-card__ings{min-height:74px}.prod-card__night{display:flex;flex-direction:column;justify-content:center;gap:.1rem;font-size:var(--text-sm);min-height:40px}.ribbon-icon{flex-shrink:0;object-fit:contain}.ribbon-icon--empty{filter:grayscale(1);opacity:.4}.prod-card__title .ribbon-icon{align-self:center}@media(prefers-reduced-motion:reduce){.prod-card--enter,.modal-panel,.modal-overlay,.icon-btn--saving{animation:none}.prod-delta,.prod-card--add,button.prod-card__base-tag--action{transition:none}}.error-boundary{max-width:32rem;margin:3rem auto;padding:2rem;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:12px}.error-boundary h2{margin-top:0}.prod-card__toolbar--readonly{justify-content:flex-end}.prod-card__toolbar--slot{display:block;height:auto;padding:.35rem .5rem}.team-slot__single{display:flex;align-items:center;justify-content:flex-end;gap:.25rem}.team-slot__single--reserve{min-height:3.25rem;align-items:flex-end}.team-slot__split{display:flex;flex-direction:column;gap:.4rem;min-height:3.25rem}.team-slot__tabs{display:flex;gap:.35rem;flex-wrap:wrap}.team-slot__tab-wrap{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--moon-border);background:transparent;overflow:hidden}.team-slot__tab-wrap--active{background:var(--moon-border)}.team-slot__tab{padding:.15rem .25rem .15rem .6rem;background:transparent;border:none;cursor:pointer;color:var(--muted);font-size:var(--text-xs);white-space:nowrap}.team-slot__tab-wrap--active .team-slot__tab{color:var(--text);font-weight:600}.team-slot__tab-pct{opacity:.75}.team-slot__tab-remove{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;padding:0;margin-right:.15rem;background:transparent;border:none;cursor:pointer;line-height:0;color:var(--muted);opacity:.55;border-radius:999px}.team-slot__tab-wrap--active .team-slot__tab-remove{color:var(--text)}.team-slot__tab-remove:hover{opacity:1;color:var(--error)}.team-slot__slider{min-width:0;max-width:none}.team-slot__slider--split .bonus-slider__track:before{display:none}.team-slot__slider--split .bonus-slider__fill{left:0;width:calc(var(--ratio) * (100% - 14px) + 7px);background:var(--moon);border-radius:999px 0 0 999px}.team-slot__slider--split .bonus-slider__track:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);height:4px;width:calc((1 - var(--ratio)) * (100% - 14px) + 7px);background:var(--accent);border-radius:0 999px 999px 0;z-index:0;pointer-events:none}.teams-aggregates{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1.5rem;margin-top:1rem}.teams-aggregates__cooking{order:1}.teams-aggregates__right{order:2}.teams-aggregates__right{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.teams-breakdown-chart{margin-top:.4rem;width:100%}.teams-config-toolbar{display:flex;justify-content:flex-end;margin:.5rem 0 .75rem}.teams-gct-notice{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .75rem;padding:.35rem .7rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:var(--text-sm);font-weight:600;color:var(--text)}.teams-berry-list{list-style:none;margin:.25rem 0 0;padding:0;display:flex;flex-direction:column;gap:.15rem}.teams-berry-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.6rem;font-size:var(--text-sm)}.teams-berry-row__name{display:inline-flex;align-items:center;gap:.3rem;min-width:0}.teams-berry-row__amount{font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:right}.teams-berry-row__strength{display:inline-flex;align-items:center;gap:.2rem;font-variant-numeric:tabular-nums;justify-content:flex-end;color:var(--muted)}@media(max-width:860px){.teams-aggregates{grid-template-columns:1fr}}.teams-totals{display:flex;align-items:stretch;gap:1.5rem;margin-top:1.5rem;border-color:var(--moon-border)}.teams-totals__col{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.teams-totals__col--grand{flex:1.2}.teams-totals__divider{width:1px;align-self:stretch;background:var(--border)}.teams-totals__label{text-transform:uppercase;letter-spacing:.05em;font-size:var(--text-xs);color:var(--muted)}.teams-totals__kpi{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--text-lg);font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.teams-totals__kpi--grand{font-size:var(--text-xl);color:var(--moon)}.teams-totals__aside{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}@media(max-width:860px){.teams-totals{flex-direction:column;gap:1rem}.teams-totals__divider{width:auto;height:1px}}.snorlax-rating-badge{display:inline-flex;flex-direction:column;gap:.25rem;align-self:flex-end;margin-top:.3rem;min-width:5.5rem}.snorlax-rating-badge__top{display:inline-flex;align-items:center;gap:.3rem}.snorlax-rating-badge__ball{flex-shrink:0;image-rendering:pixelated}.snorlax-rating-badge__level{font-size:var(--text-xs);font-weight:700;color:var(--moon);font-variant-numeric:tabular-nums}.snorlax-rating-badge__next{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}.snorlax-rating-badge__next:before{content:"· ";color:var(--border)}.snorlax-rating-badge__next--max{color:var(--moon);font-weight:600}.snorlax-rating-badge__bar{display:block;width:100%;height:3px;background:var(--moon-dim);border-radius:999px;overflow:hidden}.snorlax-rating-badge__bar-fill{display:block;height:100%;background:var(--moon);border-radius:999px}.teams-aggregates__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.teams-cooking-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.teams-cooking-edit{margin-top:0;padding:.3rem .75rem;font-size:var(--text-sm)}.teams-plan-row{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;font-size:var(--text-sm);min-height:2rem;border-bottom:1px solid var(--border)}.teams-plan-rows .teams-plan-row:last-child{border-bottom:none}.teams-plan-row__label{min-width:5rem;flex-shrink:0}.teams-plan-row__thumb{width:28px;height:28px;object-fit:contain;border-radius:var(--r-sm);flex-shrink:0}.teams-plan-row__name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.teams-plan-row__lv{flex-shrink:0;font-size:var(--text-xs)}.cook-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.cook-row__topline{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.cook-row__topline .teams-plan-row__name{flex:1}.teams-plan-row__pot-warn{display:inline-flex;align-items:center;gap:.25rem;color:var(--down);font-size:var(--text-xs);font-weight:600}.cook-row__strength{display:inline-flex;align-items:center;gap:.2rem;font-size:var(--text-xs);color:var(--muted);flex-shrink:0}.cook-row__ings{display:flex;flex-wrap:wrap;gap:.25rem}.cook-ing-chip{display:inline-flex;align-items:center;gap:.2rem;font-size:var(--text-xs);padding:.1rem .35rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.cook-ing-chip--ok{color:var(--up);border-color:var(--up)}.cook-ing-chip--short{color:var(--down);border-color:var(--down)}.meal-picker-topbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.meal-picker-search{flex:1 1 160px;min-width:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.4rem .6rem;color:var(--text);font-size:var(--text-sm)}.meal-picker-search:focus{outline:2px solid var(--accent);outline-offset:0}.meal-picker-clear{margin-top:0;padding:.35rem .75rem;font-size:var(--text-sm)}.meal-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;max-height:60vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.meal-picker-grid::-webkit-scrollbar{width:6px}.meal-picker-grid::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.meal-picker-grid::-webkit-scrollbar-track{background:transparent}.meal-picker-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:.6rem;display:flex;flex-direction:column;gap:.4rem;transition:border-color .1s}.meal-picker-card:has(.meal-picker-card__moment-btn.is-active){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.meal-picker-card__img-wrap{display:flex;justify-content:center;align-items:center;height:56px}.meal-picker-card__img{width:56px;height:56px;object-fit:contain;border-radius:var(--r-sm)}.meal-picker-card__header{display:flex;align-items:baseline;gap:.4rem;min-width:0}.meal-picker-card__name{font-size:var(--text-sm);font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.meal-picker-card__type-badge{font-size:var(--text-xs);color:var(--muted);border:1px solid var(--border);border-radius:var(--r-sm);padding:.05rem .35rem;flex-shrink:0}.meal-picker-card__strength{display:flex;align-items:center;gap:.3rem;font-size:var(--text-sm);font-weight:700;color:var(--moon);font-variant-numeric:tabular-nums}.meal-picker-card__ings{display:flex;flex-wrap:wrap;gap:.25rem .4rem;align-items:center;min-height:20px}.meal-picker-card__ing{display:inline-flex;align-items:center;gap:2px}.meal-picker-card__ing-count{font-size:var(--text-xs);color:var(--muted)}.meal-picker-card__stepper{padding:.25rem .5rem}.meal-picker-card__stepper .level-stepper__label{display:none}.meal-picker-card__stepper .level-stepper__input{font-size:var(--text-base)}.meal-picker-card__moments{display:flex;gap:.25rem}.meal-picker-card__moment-btn{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);font-size:var(--text-xs);font-weight:600;padding:.25rem 0;cursor:pointer;transition:background .1s,border-color .1s,color .1s}.meal-picker-card__moment-btn:hover{border-color:var(--accent);color:var(--text)}.meal-picker-card__moment-btn.is-active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-text)}.meal-picker-card__moment-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.meal-picker-card__pot-fit{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-xs);padding:.1rem .35rem;border-radius:999px;border:1px solid var(--border);background:var(--surface)}.meal-picker-card__pot-fit--ok{color:var(--up);border-color:var(--up)}.meal-picker-card__pot-fit--no{color:var(--down);border-color:var(--down)}.meal-picker-pot{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;font-size:var(--text-sm)}.meal-picker-pot__icon{width:18px;height:18px;object-fit:contain;flex-shrink:0}.meal-picker-pot__label{white-space:nowrap}.meal-picker-pot__stepper{padding:0}.meal-picker-pot__stepper .level-stepper__input{width:3rem;font-size:var(--text-sm)}.meal-picker-pot__effective{font-size:var(--text-xs);white-space:nowrap}.cook-row__pot-fit{display:inline-flex;align-items:center;gap:.2rem;font-size:var(--text-xs);padding:.1rem .35rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);flex-shrink:0}.cook-row__pot-fit--ok{color:var(--up);border-color:var(--up)}.cook-row__pot-fit--no{color:var(--down);border-color:var(--down)}.teams-balance{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.2rem}.teams-balance__row{display:grid;grid-template-columns:auto 1fr repeat(3,4rem);align-items:center;gap:.3rem .6rem;font-size:var(--text-sm)}.teams-balance__row .mini-icon{width:20px;height:20px}.teams-balance__num{text-align:right;color:var(--muted)}.teams-balance__delta{text-align:right;font-weight:700}.teams-balance__delta--up{color:var(--up)}.teams-balance__delta--down{color:var(--down)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.prod-card--readonly .prod-card__sprite{width:60px;height:60px}.prod-card--readonly .prod-card__block--ing .prod-card__ings,.prod-card--readonly .prod-card__night{min-height:0}.prod-cards--compact{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}@media(min-width:900px){.prod-cards--compact{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1150px){.prod-cards--compact{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1400px){.prod-cards--compact{grid-template-columns:repeat(5,minmax(0,1fr))}}.cook-result-block{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.cook-result-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:var(--text-sm);padding:.15rem 0}.cook-result-row--strength{font-size:var(--text-base)}.cook-result-row--strength .cook-result-row__value{font-size:var(--text-base);font-weight:600;color:var(--text);display:inline-flex;align-items:center;gap:.25rem;font-variant-numeric:tabular-nums}.cook-result-row__label{display:inline-flex;align-items:center;gap:.3rem}.cook-result-row__value{font-variant-numeric:tabular-nums;text-align:right}.cook-cap-table{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.1rem}.cook-cap-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:var(--text-sm);padding:.15rem 0;color:var(--muted)}.cook-cap-row__label{display:inline-flex;align-items:center;gap:.3rem}.cook-cap-row__value{font-variant-numeric:tabular-nums;text-align:right;color:var(--text)}.cook-cap-row--total{border-top:1px solid var(--border);margin-top:.25rem;padding-top:.4rem;font-weight:700;color:var(--text)}.cook-cap-row--total .cook-cap-row__value{font-weight:700}.cook-filler-list{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.2rem}.cook-filler-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:var(--text-sm);padding:.1rem 0}.cook-filler-item__info{display:inline-flex;align-items:center;gap:.35rem}.cook-filler-item__qty{font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:.25rem}.cook-filler-item--unused{opacity:.4;filter:grayscale(.5)}.cook-filler-item--rich{align-items:center}.cook-filler-item--rich .cook-filler-item__info{flex:1 1 auto;min-width:0;gap:.3rem}.cook-filler-item__base-strength{font-size:var(--text-xs);flex-shrink:0}.cook-filler-item__right{display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0}.cook-filler-item__contrib{display:inline-flex;align-items:center;gap:.2rem;font-variant-numeric:tabular-nums;font-size:var(--text-xs);color:var(--muted)}.cook-ing-chip--dim{opacity:.38;filter:grayscale(.4)}.cook-total-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:var(--text-base);font-weight:600;padding:.2rem 0;color:var(--text)}.cook-total-row__label{display:inline-flex;align-items:center;gap:.3rem}.cook-total-row__value{font-variant-numeric:tabular-nums;text-align:right}.cook-total-row--grand{border-top:1px solid var(--border);margin-top:.4rem;padding-top:.5rem;color:var(--text);font-weight:700}.cook-total-row--grand .cook-total-row__value{font-size:var(--text-lg);font-weight:700;display:inline-flex;align-items:center;gap:.25rem;color:var(--text)}.settings-modal-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);padding:0 1.25rem;margin:0 -1.25rem 1.25rem}.settings-modal-tabs .specialty-toggle__btn{background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);font-size:var(--text-base);font-weight:600;padding:.6rem .75rem;margin-bottom:-1px;cursor:pointer;transition:color .12s}.settings-modal-tabs .specialty-toggle__btn:hover{color:var(--text)}.settings-modal-tabs .specialty-toggle__btn.is-on{background:transparent;color:var(--text);border-bottom-color:var(--accent)}.settings-modal-tabs .specialty-toggle__btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-modal-panel{height:66vh;overflow-y:auto}.island-tab{display:flex;flex-direction:column;gap:1.25rem;padding:1rem 0}.island-tab__row{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}.island-tab__label{min-width:9rem;padding-top:.35rem;font-size:var(--text-sm);color:var(--muted);font-weight:500;flex-shrink:0}.island-tab__island-control{flex:1;min-width:14rem;max-width:22rem}.island-tab__island-trigger{width:100%;justify-content:space-between}.island-tab__island-pop{width:17rem}.island-tab__island-pop .filter-list__label{flex:1}.island-tab__island-berries{display:inline-flex;gap:.2rem;margin-left:0;padding-left:0;flex-shrink:0}.island-tab__berry-icon--unknown{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);font-size:10px;font-weight:700;line-height:1;flex-shrink:0;-webkit-user-select:none;user-select:none}.island-tab__island-none{color:var(--muted);font-style:italic}.island-tab__island-none.is-selected{color:var(--text);font-style:normal}.island-tab__berry-grid--readonly .island-tab__berry-toggle{cursor:default;pointer-events:none}.island-tab__berry-grid--readonly .island-tab__berry-toggle:not(.is-selected){opacity:.28}.island-tab__berry-icon{width:18px;height:18px;object-fit:contain}.island-tab__berry-picker{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;flex:1;min-width:14rem}.island-tab__berry-grid{display:flex;flex-wrap:wrap;gap:.35rem;max-width:32rem}.island-tab__berry-toggle{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--muted);cursor:pointer;transition:border-color .1s,background .1s,color .1s}.island-tab__berry-toggle:hover:not(:disabled){border-color:var(--moon-border);color:var(--text)}.island-tab__berry-toggle.is-selected{background:var(--moon-dim);border-color:var(--moon-border);color:var(--text)}.island-tab__berry-toggle--primary{border-color:var(--moon);box-shadow:0 0 0 1px var(--moon);position:relative}.island-tab__berry-toggle--primary:before{content:"★";position:absolute;top:-8px;left:-5px;font-size:12px;line-height:1;color:var(--moon);pointer-events:none}.island-tab__berry-toggle:disabled{opacity:.38;cursor:default}.island-tab__berry-count{font-size:var(--text-xs);color:var(--muted);margin:0}.island-tab__berry-count--full{color:var(--moon)}.bonus-slider{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:14rem;max-width:22rem}.bonus-slider__row{display:flex;align-items:center;gap:.75rem}.bonus-slider__track{position:relative;flex:1;height:20px;display:flex;align-items:center}.bonus-slider__track:before{content:"";position:absolute;left:0;right:0;height:4px;border-radius:999px;background:var(--border)}.bonus-slider__fill{position:absolute;left:0;top:50%;transform:translateY(-50%);height:4px;border-radius:999px;background:var(--moon);width:calc(var(--ratio) * (100% - 14px) + 14px);pointer-events:none;z-index:0}.bonus-slider__thumb{position:absolute;top:50%;left:calc(var(--ratio) * (100% - 14px));transform:translateY(-50%);width:14px;height:14px;border-radius:999px;background:var(--surface-2);border:2px solid var(--moon);box-shadow:0 1px 3px #0000008c;pointer-events:none;transition:transform .08s ease-out,border-color .1s;z-index:1}.bonus-slider__track:hover .bonus-slider__thumb{transform:translateY(-50%) scale(1.2)}.bonus-slider__track:has(.bonus-slider__input:active) .bonus-slider__thumb{background:var(--moon);transform:translateY(-50%) scale(1.1);border-color:var(--moon)}.bonus-slider__track:focus-within .bonus-slider__thumb{box-shadow:0 1px 3px #0000008c,0 0 8px 2px var(--moon-border)}.bonus-slider__input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;-webkit-appearance:none;appearance:none;margin:0;padding:0;border:none;background:transparent;outline:none}.bonus-slider__input:disabled{cursor:default}.bonus-slider:has(.bonus-slider__input:disabled){opacity:.38;pointer-events:none}.bonus-slider__value{flex-shrink:0;min-width:3.2ch;text-align:right;font-size:var(--text-base);font-weight:700;font-variant-numeric:tabular-nums;color:var(--moon)}.bonus-slider__unit{font-size:var(--text-sm);color:var(--muted);font-weight:400}.bonus-slider__marks{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--muted);padding:0 7px;-webkit-user-select:none;user-select:none}.strength-value__cue{cursor:help;text-decoration:underline dotted var(--muted);text-underline-offset:2px}.topbar__right{display:flex;align-items:center;gap:.75rem}.auth-slot-placeholder{width:34px;height:34px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);opacity:.5}.btn--google{display:inline-flex;align-items:center;gap:.55rem;background:var(--surface-2);color:var(--text);border:1px solid var(--border);margin-top:0}.btn--google:hover{border-color:var(--accent)}.btn--google:disabled{opacity:.6;cursor:default}.btn--google .g{width:16px;height:16px;display:grid;place-items:center;font-weight:800;font-size:13px;border-radius:3px;background:#fff;color:#4285f4;font-family:Segoe UI,system-ui,sans-serif;line-height:1}.google-signin__control{position:relative;display:inline-block}.google-signin__overlay{position:absolute;inset:0;opacity:0;overflow:hidden;cursor:pointer}.google-signin__control:focus-within .btn--google{outline:2px solid var(--accent);outline-offset:2px}.auth-error{margin:.5rem 0 0}.avatar-btn{width:34px;height:34px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);cursor:pointer;display:grid;place-items:center;font-weight:700;font-size:var(--text-sm);padding:0;overflow:hidden}.avatar-btn:hover,.avatar-btn.is-open{border-color:var(--accent)}.avatar-btn img,.avatar-lg img{width:100%;height:100%;object-fit:cover;display:block}.profile-wrap{position:relative}.profile-wrap .filter-pop{left:auto;right:0;width:15rem}.profile-head{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem .65rem}.profile-head .avatar-lg{width:36px;height:36px;border-radius:999px;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;font-weight:700;color:var(--muted);flex:0 0 auto;overflow:hidden}.profile-head__name{font-size:var(--text-base);font-weight:600;line-height:1.2}.profile-head__mail{font-size:var(--text-xs);color:var(--muted);line-height:1.3}.filter-list__sep{height:1px;background:var(--border);margin:.15rem 0}.filter-list__item svg{width:15px;height:15px;color:var(--muted);flex-shrink:0}.modal-actions--center{justify-content:center}.gate-card{max-width:420px;margin:2.5rem auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.9rem;padding:2rem 1.75rem}.gate-card__moon{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;background:var(--moon-dim);border:1px solid var(--moon-border);color:var(--moon)}.gate-card__title{font-size:var(--text-lg);font-weight:600;margin:0}.gate-card__body{color:var(--muted);font-size:var(--text-sm);line-height:1.5;margin:0;max-width:34ch}
