.header-right{gap:9px}.journal-launch{display:flex;align-items:center;gap:6px}.journal-launch span{font-size:10px;color:var(--gold)}.journal-launch:disabled{opacity:.45;cursor:wait}.open-sign{margin-right:8px}
dialog.journal{width:min(660px,calc(100% - 28px));max-width:660px;height:min(720px,calc(94dvh / var(--ui-scale,1)));max-height:calc(94dvh / var(--ui-scale,1));padding:0;overflow:hidden;border:1px solid #a68d65;border-radius:12px;box-shadow:0 24px 90px #0008}
.journal-layout{height:100%;display:flex;flex-direction:column;min-height:0;padding:20px}.journal-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.journal-header h2{font-size:23px;margin:0;letter-spacing:2px}.journal-close{width:36px;height:36px;border:1px solid var(--line);background:none;color:var(--cream);font-size:24px;cursor:pointer}.journal-tabs{display:flex;border-bottom:1px solid var(--line);margin-top:16px;gap:20px}.journal-tabs button{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:14px 'Noto Sans TC',sans-serif;padding:10px 2px;cursor:pointer}.journal-tabs [aria-selected=true]{color:#f0d19b;border-bottom-color:var(--gold)}.journal-summary{font-size:13px;color:var(--gold);margin:14px 0 5px}.journal-rule{font-size:12px;color:var(--muted);margin:0 0 13px;line-height:1.6}.journal-body{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#68745c transparent}.journal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.journal-card{display:flex;align-items:center;flex-direction:column;min-width:0;background:#152019;border:1px solid #3b4838;border-radius:8px;padding:10px;color:var(--cream);font-family:inherit;cursor:pointer}.journal-card:hover{border-color:#b99b69}.journal-card.collected{border-color:#927e53;background:radial-gradient(ellipse at 50% 25%,#b69d6122,transparent 80%),#18231b}.journal-glass{display:block;width:90px;height:94px}.journal-card strong{font-size:14px;font-weight:500;margin:4px 0}.journal-card>span{font-size:11px;color:var(--muted);line-height:1.5}.journal-card.collected>span{color:#ddc28d}.journal-pager{display:flex;align-items:center;justify-content:center;gap:20px;padding-top:14px}.journal-pager button,.journal-back{background:none;border:1px solid var(--line);color:var(--cream);font:12px 'Noto Sans TC',sans-serif;padding:7px 12px;cursor:pointer}.journal-pager button:disabled{opacity:.3;cursor:default}.journal-pager>span{font:13px Georgia,serif;color:var(--gold)}.journal-storage{font-size:10px;line-height:1.5;color:var(--muted);margin:12px 0 0;text-align:center}.journal-back{margin-left:auto}.journal-back[hidden],.journal-pager[hidden]{display:none}.achievement-list{display:flex;flex-direction:column;gap:10px}.achievement{display:flex;gap:12px;padding:13px;border:1px solid var(--line);border-radius:8px;background:#152019}.achievement>div{flex:1;min-width:0}.achievement-icon{width:40px;height:40px;flex:none;border:1px solid #56624c;border-radius:50%;display:grid;place-items:center;font:20px 'Noto Serif TC',serif;color:#8e9986}.achievement.unlocked{border-color:#9c8355;background:#342e1c55}.achievement.unlocked .achievement-icon{border-color:var(--gold);color:#f1d69c;background:#8a6e3033}.achievement h3{font-size:14px;font-weight:500;margin:0;display:flex;justify-content:space-between;gap:8px}.achievement h3 small{font-size:10px;color:var(--muted);font-weight:400;white-space:nowrap}.achievement.unlocked h3 small{color:#f1d69c}.achievement p{font-size:11px;color:var(--muted);line-height:1.6;margin:5px 0 7px}.achievement-progress{display:flex;gap:10px;align-items:center}.achievement-progress progress{width:100%;height:5px;border:0;appearance:none;background:#34412f;border-radius:4px}.achievement-progress progress::-webkit-progress-bar{background:#34412f;border-radius:4px}.achievement-progress progress::-webkit-progress-value{background:var(--gold);border-radius:4px}.achievement-progress progress::-moz-progress-bar{background:var(--gold);border-radius:4px}.achievement-progress>span{font-size:10px;color:var(--gold);white-space:nowrap}.recipe-detail{text-align:center;padding:8px 12px}.recipe-detail .journal-glass{margin:auto;width:120px;height:125px}.recipe-detail h3{font:23px 'Noto Serif TC',serif;margin:5px 0 10px}.recipe-detail p{font-size:12px;line-height:1.8;color:var(--muted);margin:8px 0}.collection-seal{display:inline-block;border:1px solid var(--gold);color:#f1d69c;padding:5px 12px;border-radius:20px;font-size:12px;margin:8px}.collection-seal.locked{color:var(--muted);border-color:var(--line)}.detail-ingredients{max-width:320px;margin:16px auto}.detail-ingredients>div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.detail-ingredients b{color:var(--gold);font-weight:500}.collection-toast{position:fixed;z-index:40;top:max(57px,env(safe-area-inset-top));right:16px;max-width:calc(100% - 32px);padding:11px 16px;border:1px solid var(--gold);border-radius:7px;background:#302d21;color:#ffe2aa;box-shadow:0 8px 30px #0005;font-size:13px;pointer-events:none;opacity:0;transform:translateY(-7px);transition:opacity .2s,transform .2s}.collection-toast.visible{opacity:1;transform:none}.finish-journal{display:block;margin:5px auto 0;font-size:12px;padding:8px}
@media(max-width:540px){.journal-layout{padding:15px}.journal-header h2{font-size:21px}.journal-grid{gap:9px}.journal-card{padding:7px}.journal-glass{width:74px;height:78px}.journal-card strong{font-size:13px}.journal-card>span{font-size:10px}.journal-summary{margin-top:10px}.journal-rule{font-size:11px;margin-bottom:10px}.journal-tabs{margin-top:10px}.achievement{padding:10px;gap:9px}.achievement-icon{width:33px;height:33px;font-size:17px}.journal-launch{font-size:11px;padding:6px 8px}.journal-launch span{font-size:9px}.journal-storage{font-size:9px;margin-top:9px}.journal-pager{padding-top:10px}.achievement h3{font-size:13px}}
@media(prefers-reduced-motion:reduce){.collection-toast{transition:none}}
#sound.icon{width:34px;height:34px;min-width:34px;padding:6px;display:grid;place-items:center;flex:none}#sound svg{display:block;width:20px;height:20px}
.journal-more{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 0 8px;color:var(--muted);font-size:11px}.journal-more-button{width:100%;min-height:43px;background:#302d21;border:1px solid var(--gold);border-radius:7px;color:#f3d5a4;font:13px 'Noto Sans TC',sans-serif;cursor:pointer}.journal-more-button:hover{background:#423a27}.journal-all{color:var(--gold);padding:8px}.journal-body{scroll-behavior:auto}

.journal-filters{display:flex;gap:8px;margin:0 0 12px}.journal-filters[hidden]{display:none}.journal-filters select{min-width:0;flex:1;background:#152019;color:var(--cream);border:1px solid #59634d;border-radius:5px;padding:8px;font:12px sans-serif;color-scheme:dark}.flavor-label{font-size:11px;color:var(--gold);letter-spacing:1px}.journal-card .flavor-label{margin:0 0 5px}.recipe-tip{max-width:320px;margin:14px auto;padding:12px;text-align:left;background:#b69d6110;border-left:2px solid var(--gold)}.recipe-tip b{font-size:12px;color:var(--gold);font-weight:500}.recipe-tip p{margin:5px 0 0}.recipe-flavor{color:var(--cream)!important}.journal-empty{font-size:13px;line-height:1.8;padding:24px 8px;color:var(--muted)}

.feedback-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap;flex:none}.header-right{flex-shrink:0}@media(max-width:420px){header .brand{font-size:18px;letter-spacing:1px;gap:5px}header .brand-mark{font-size:24px}.header-right{gap:5px}.feedback-link{font-size:11px;padding:6px}.journal-launch{gap:4px;padding:6px}#sound.icon{width:30px;min-width:30px;padding:5px}}
