@font-face{font-family:Ledger Mono;src:url(/fonts/ibm_plex_mono_400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Ledger Mono;src:url(/fonts/ibm_plex_mono_500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}ul{margin:0;padding:0;list-style:none}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}:root{color-scheme:light;--bg: #e4dcc6;--surface: #efe9d8;--ink: #2b2620;--ink-soft: #726a58;--line: #c7ba98;--accent: #5c6b3f;--accent-ink: #efe9d8}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #221d16;--surface: #2b2419;--ink: #e9e0c8;--ink-soft: #b3a683;--line: #4a3f2c;--accent: #8fa467;--accent-ink: #1c2013}}:root[data-theme=dark]{color-scheme:dark;--bg: #221d16;--surface: #2b2419;--ink: #e9e0c8;--ink-soft: #b3a683;--line: #4a3f2c;--accent: #8fa467;--accent-ink: #1c2013}:root[data-theme=light]{color-scheme:light;--bg: #e4dcc6;--surface: #efe9d8;--ink: #2b2620;--ink-soft: #726a58;--line: #c7ba98;--accent: #5c6b3f;--accent-ink: #efe9d8}body{background:var(--bg);color:var(--ink);font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,"Noto Serif JP",serif;line-height:1.6}.mono{font-family:Ledger Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.page{max-width:900px;margin:0 auto;padding:40px clamp(20px,5vw,64px) 80px}.masthead{display:flex;flex-direction:column;gap:14px;border-bottom:3px double var(--line);padding-bottom:18px;margin-bottom:28px}.banner-img{display:block;width:100%;height:auto;border-radius:6px;border:1px solid var(--line)}.masthead-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.masthead .sub{font-size:13px;color:var(--ink-soft)}.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}.theme-toggle{background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:7px 14px;font-size:12.5px;display:inline-flex;gap:8px;align-items:center}.theme-toggle:hover{border-color:var(--accent)}.tab-row{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:24px}.bag-weight-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-12px 0 24px;font-size:12.5px;color:var(--ink-soft)}.bag-weight-bar input{background:transparent;border:none;border-bottom:1.5px solid var(--line);color:var(--ink);padding:2px 2px 4px;font-size:13px;width:84px}.bag-weight-bar input:focus{outline:none;border-bottom-color:var(--accent)}.bag-weight-hint{font-size:11px}.bag-weight-auto{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink);cursor:pointer}.bag-weight-auto input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:14px;height:14px}.craft-count-row input:disabled{opacity:.55;cursor:not-allowed}.tab-btn{background:none;border:none;padding:10px 18px 12px;margin-bottom:-1px;font-size:14.5px;color:var(--ink-soft);border-bottom:2px solid transparent;font-family:Hiragino Mincho ProN,Yu Mincho,"Noto Serif JP",serif}.tab-btn[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:700}.tab-panel{display:none}.tab-panel.is-active{display:block}.search-row{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:18px;align-items:flex-end}.field{flex:1 1 260px}.field label{display:block;font-size:11.5px;color:var(--ink-soft);letter-spacing:.06em;margin-bottom:6px}.search-wrap input,.field select{width:100%;background:transparent;border:none;border-bottom:1.5px solid var(--ink);padding:6px 2px 8px;font-size:17px;color:var(--ink)}.field select{border-bottom:1.5px solid var(--line);font-size:14px;padding:8px 2px}.search-wrap input:focus,.field select:focus{outline:none;border-bottom-color:var(--accent)}.field select option{background:var(--surface);color:var(--ink)}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.chip{font-family:Ledger Mono,monospace;font-size:11px;letter-spacing:.03em;border:1px solid var(--line);background:transparent;color:var(--ink-soft);border-radius:3px;padding:5px 10px}.chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.ledger{border-top:1px solid var(--line)}.ledger-empty{padding:24px 4px;color:var(--ink-soft);font-size:14px}.row{border-bottom:1px solid var(--line)}.row>summary{list-style:none;display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:baseline;padding:14px 4px;cursor:pointer}.row>summary::-webkit-details-marker{display:none}.row>summary:before{content:attr(data-index);font-family:Ledger Mono,monospace;font-size:12px;color:var(--ink-soft)}.row-name{font-size:16.5px}.row-tags{display:flex;gap:8px;align-items:center;font-family:Ledger Mono,monospace;font-size:11px;color:var(--ink-soft)}.row-tags .type-tag{border:1px solid var(--line);border-radius:3px;padding:2px 6px}.row[open]>summary{color:var(--accent)}.tree{padding:4px 4px 20px 48px}.tree ul{border-left:1px solid var(--line);margin-left:6px}.tree li{position:relative;padding-left:20px;font-size:14.5px}.tree li.leaf{padding-top:7px;padding-bottom:7px;display:flex;align-items:baseline;flex-wrap:wrap;column-gap:8px}.tree li:before{content:"";position:absolute;left:0;top:17px;width:14px;height:1px;background:var(--line)}.tree .make-type,.tree .make-station{color:var(--ink-soft);font-family:Ledger Mono,monospace;font-size:9.5px;border:1px solid var(--line);border-radius:3px;padding:1px 6px}.tree .make-type{letter-spacing:.02em}.tree .extra{color:var(--ink-soft);font-family:Ledger Mono,monospace;font-size:10.5px}.tree .circular{color:#a33;font-family:Ledger Mono,monospace;font-size:10.5px}.tree .count{font-family:Ledger Mono,monospace;color:var(--ink-soft);margin-left:auto;padding-left:10px;white-space:nowrap}.tree-empty{color:var(--ink-soft);font-size:13px;padding:6px 0}.tree .branch>summary{padding-top:7px;padding-bottom:7px;cursor:pointer;list-style:none;display:flex;align-items:baseline;flex-wrap:wrap;column-gap:8px}.tree .branch>summary::-webkit-details-marker{display:none}.tree .branch>summary:before{content:"▸";display:inline-block;width:14px;flex:none;color:var(--ink-soft);font-size:10px}.tree .branch[open]>summary:before{content:"▾"}.tree .branch>summary:hover:before{color:var(--accent)}.grade-toggle{display:inline-flex;gap:4px;margin-left:10px;vertical-align:middle}.grade-btn{--grade-dot: var(--ink-soft);font-family:Ledger Mono,monospace;font-size:10px;letter-spacing:.02em;border:1px solid var(--line);background:transparent;color:var(--ink-soft);border-radius:3px;padding:2px 8px 2px 6px;display:inline-flex;align-items:center;gap:5px}.grade-btn:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--grade-dot);flex:none}.grade-btn[data-grade-level="1"]{--grade-dot: #4a8f4a}.grade-btn[data-grade-level="2"]{--grade-dot: #3d7cc9}.grade-btn[data-grade-level="3"]{--grade-dot: #b08a2e}.grade-btn[data-grade-level="4"]{--grade-dot: #9a4fb0}.grade-btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.estimate-mark{font-size:8.5px;color:#a3762c;border:1px dashed #a3762c;border-radius:2px;padding:0 3px;margin-left:2px}.estimate-note{font-size:9.5px;color:var(--ink-soft);font-style:italic;margin-left:4px}.grade-btn:hover{border-color:var(--accent)}.detail-link{font-size:10px;font-family:Ledger Mono,monospace;border:1px dashed var(--ink-soft);color:var(--ink-soft);border-radius:3px;padding:1px 6px 1px 5px;display:inline-flex;align-items:center;gap:3px}.detail-link:before{content:"↗";font-size:9px}.detail-link:hover{border-color:var(--accent);border-style:solid;color:var(--accent)}.group-wrap{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.group-head{display:flex;align-items:baseline;column-gap:8px;flex-wrap:wrap}.group-label{display:inline-flex;align-items:baseline;gap:5px;border:none;background:none;color:var(--ink);font:inherit;padding:0;cursor:pointer}.group-label:before{content:"▸";font-size:10px;color:var(--ink-soft);display:inline-block;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.group-label[aria-expanded=true]:before{transform:rotate(90deg);color:var(--accent)}.group-label:hover,.group-label:hover:before{color:var(--accent)}.disclosure{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.34,1.56,.64,1)}.disclosure.is-open{grid-template-rows:1fr}.disclosure>.inner{overflow:hidden}.member-list{display:flex;flex-wrap:wrap;gap:6px 10px;padding:10px 0 2px 18px;font-size:12.5px}.member-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:999px;padding:2px 10px;color:var(--ink-soft);background:none;font:inherit;cursor:pointer}.member-chip:hover{border-color:var(--accent);color:var(--accent)}.member-chip.active{border-color:var(--accent);color:var(--accent);font-weight:700;background:color-mix(in srgb,var(--accent) 10%,transparent)}.member-chip .dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.6}.member-chip.active .dot{opacity:1}.group-note{font-size:10.5px;color:var(--ink-soft);padding:2px 0 2px 18px;font-family:Ledger Mono,monospace}.craft-count-row{display:flex;align-items:center;gap:10px;padding:6px 4px 4px 48px;font-size:13px;color:var(--ink-soft)}.weight-row{padding:0 4px 16px 48px;font-size:12.5px;color:var(--ink-soft)}.weight-result .mono{color:var(--ink)}.weight-note{font-style:italic}.fav-empty{color:var(--ink-soft);font-size:13.5px;padding:24px 4px}.row.dragging{opacity:.4}.fav-name{display:inline-flex;align-items:baseline;gap:10px;min-width:0}.handle{color:var(--ink-soft);cursor:grab;font-family:Ledger Mono,monospace}.stepper{display:inline-flex;align-items:center;gap:8px;font-family:Ledger Mono,monospace}.stepper input{text-align:center}.stepper button{background:none;border:1px solid var(--line);border-radius:3px;width:22px;height:22px;line-height:1;color:var(--ink)}.stepper button:hover{border-color:var(--accent);color:var(--accent)}.fav-remove{background:none;border:none;color:var(--ink-soft);font-size:12px;text-decoration:underline;text-underline-offset:3px}.fav-add{background:none;border:1px solid var(--line);color:var(--ink);border-radius:3px;padding:3px 10px;font-size:12.5px}.fav-add:hover{border-color:var(--accent);color:var(--accent)}.status-line{font-size:12.5px;color:var(--ink-soft);padding:40px 4px 0;text-align:center}.disclaimer{font-size:10px;line-height:1.7;color:var(--ink-soft);opacity:.7;padding:8px 4px 0;text-align:center}.special-card>.row-head{display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:baseline;padding:14px 4px}.special-card>.row-head:before{content:attr(data-index);font-family:Ledger Mono,monospace;font-size:12px;color:var(--ink-soft)}.special-body{padding:4px 4px 20px 48px;font-size:13.5px}.special-recipe{margin:0 0 8px}.special-accessories-label{margin:0 0 14px;font-size:11.5px;color:var(--ink-soft);letter-spacing:.02em}.special-yield-group{margin:0 0 20px;padding:0 0 0 14px;border-left:2px solid var(--line)}.special-yield-group:last-child{margin-bottom:0}.special-yield{margin:0 0 8px;color:var(--ink-soft);font-size:13px}.special-accessories{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 14px}.special-accessories li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:3px 0;border-bottom:1px dotted var(--line)}
