.ynp-memory-head{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 16px}.ynp-memory-head>div{padding:17px;border-radius:20px;background:var(--ynp-control-bg);box-shadow:0 8px 24px rgba(42,57,82,.07)}.ynp-memory-head b{display:block;font-size:26px;color:var(--ynp-control-text)}.ynp-memory-head span{font-size:12px;color:var(--ynp-placeholder)}
.ynp-memory-toolbar{display:flex;gap:8px;overflow-x:auto;padding:0 0 14px;scrollbar-width:none}.ynp-memory-toolbar::-webkit-scrollbar{display:none}.ynp-memory-toolbar button,.ynp-memory-actions button,.ynp-memory-dialog button,.ynp-memory-export button{border:0;border-radius:14px;padding:10px 13px;background:var(--ynp-assist-bg);color:var(--ynp-control-text);font:inherit;white-space:nowrap}.ynp-memory-list{display:grid;gap:12px}.ynp-memory-card{position:relative;padding:18px;border-radius:22px;background:var(--ynp-control-bg);box-shadow:0 9px 26px rgba(42,57,82,.07)}.ynp-memory-card h3{font-size:16px;line-height:1.65;margin:8px 0;color:var(--ynp-control-text)}.ynp-memory-card pre{font:inherit;white-space:pre-wrap;line-height:1.65;color:var(--ynp-placeholder);margin:0 0 12px}.ynp-memory-time{font-size:12px;color:var(--ynp-placeholder)}.ynp-memory-select{float:right;font-size:12px;color:var(--ynp-placeholder)}.ynp-memory-actions{display:flex;gap:7px}.ynp-memory-actions button{padding:7px 10px;font-size:12px}.ynp-memory-actions button:disabled{opacity:.4}.ynp-memory-empty{padding:44px 20px;text-align:center;border-radius:22px;background:var(--ynp-control-bg);color:var(--ynp-placeholder)}
.ynp-memory-modal{position:absolute;inset:0;z-index:70;display:flex;align-items:flex-end;background:var(--ynp-overlay-bg);padding:18px}.ynp-memory-dialog{width:100%;max-height:82%;overflow:auto;border-radius:26px;background:var(--ynp-page-bg);padding:18px;box-shadow:0 20px 60px rgba(24,34,52,.22)}.ynp-memory-dialog-head{position:sticky;top:-18px;z-index:1;display:flex;align-items:center;justify-content:space-between;margin:-18px -18px 14px;padding:18px;background:var(--ynp-page-bg)}.ynp-memory-dialog-head b{font-size:18px;color:var(--ynp-control-text)}.ynp-memory-dialog-head button{font-size:24px;padding:2px 10px}.ynp-memory-dialog label{display:block;margin:12px 0 6px;font-size:13px;color:var(--ynp-placeholder)}.ynp-memory-dialog input:not([type=checkbox]),.ynp-memory-dialog textarea{box-sizing:border-box;width:100%;border:0;border-radius:14px;background:var(--ynp-control-bg-soft);color:var(--ynp-control-text);font:inherit;padding:12px}.ynp-memory-dialog textarea{min-height:78px;resize:vertical}.ynp-memory-dialog-actions{position:sticky;bottom:-18px;display:flex;justify-content:flex-end;gap:8px;margin:14px -18px -18px;padding:14px 18px 18px;background:var(--ynp-page-bg)}.ynp-memory-dialog-actions button[data-save]{background:#89a9d1;color:#fff}.ynp-memory-export{display:flex;gap:8px}.ynp-memory-check{display:flex!important;gap:8px;align-items:center}
.ynp-commercial-setting-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,1.25fr);align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid color-mix(in srgb,var(--ynp-placeholder) 18%,transparent)}.ynp-commercial-setting-row:last-child{border-bottom:0}.ynp-commercial-setting-row label{color:var(--ynp-placeholder)}.ynp-commercial-setting-row input,.ynp-commercial-setting-row select{min-width:0;width:100%;box-sizing:border-box;border:0;border-radius:12px;background:var(--ynp-control-bg-soft);color:var(--ynp-control-text);padding:10px;font:inherit}.ynp-commercial-setting-row.dual>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ynp-commercial-switch{justify-self:end;width:auto!important;transform:scale(1.15)}

/* 半糖屋自定义饮品：沿用原页面视觉，只补表单结构。 */
.ynp-mt-custom{padding:16px 14px 110px}.ynp-mt-custom label{display:block;margin:0 0 15px;color:var(--ynp-placeholder);font-size:13px;font-weight:650}.ynp-mt-custom input,.ynp-mt-custom textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid color-mix(in srgb,var(--ynp-placeholder) 24%,transparent);border-radius:14px;background:var(--ynp-control-bg-soft);color:var(--ynp-control-text);font:inherit;padding:12px}.ynp-mt-custom textarea{min-height:72px;resize:vertical}.ynp-mt-custom-title{display:flex;align-items:center;justify-content:space-between;margin:18px 0 9px}.ynp-mt-custom-title button,.ynp-mt-top-row button,.ynp-mt-custom-photo{border:0;border-radius:12px;background:var(--ynp-assist-bg);color:var(--ynp-control-text);padding:9px 12px}.ynp-mt-top-row{display:grid;grid-template-columns:minmax(0,1fr) 86px auto auto;gap:6px;align-items:center;margin-bottom:8px}.ynp-mt-top-row input{margin:0}.ynp-mt-top-row [data-remove]{width:38px;padding:9px}.ynp-mt-top-row [data-remove] svg{width:17px;height:17px}.ynp-mt-custom-photo{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;margin:16px 0}.ynp-mt-custom-photo svg{width:22px}.ynp-mt-none{color:var(--ynp-placeholder);font-size:13px}.ynp-mt-img{object-fit:cover}
.ynp-mt-top-img{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;margin-right:5px;border-radius:8px;overflow:hidden;vertical-align:middle;color:var(--ynp-placeholder)}.ynp-mt-top-img svg{width:15px;height:15px}.ynp-mt-top-img img{width:100%;height:100%;object-fit:cover}
.ynp-memory-mode{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:15px 16px;border-radius:18px;background:var(--ynp-control-bg);border:1px solid var(--ynp-divider)}.ynp-memory-mode>div{min-width:0}.ynp-memory-mode b{display:block;color:var(--ynp-control-text);font-size:14px}.ynp-memory-mode span{display:block;margin-top:4px;color:var(--ynp-placeholder);font-size:11px;line-height:1.5}.ynp-memory-mode button,.ynp-memory-fetch-models{flex:none;border:0;border-radius:13px;padding:9px 12px;background:var(--ynp-assist-bg);color:var(--ynp-control-text);font:inherit}.ynp-memory-mode.ai{border-color:rgba(117,151,198,.3)}.ynp-memory-mode.manual{border-color:rgba(194,153,112,.28)}.ynp-memory-meta{display:flex;align-items:center;gap:7px;min-width:0}.ynp-memory-source{padding:3px 7px;border-radius:999px;font-size:10px;white-space:nowrap}.ynp-memory-source.ai{color:#5479a8;background:rgba(137,169,209,.16)}.ynp-memory-source.manual{color:#966d46;background:rgba(205,166,120,.15)}.ynp-memory-setting-note{margin:0 0 14px;padding:11px 12px;border-radius:13px;background:var(--ynp-control-bg-soft);color:var(--ynp-placeholder);font-size:12px;line-height:1.55}.ynp-memory-fetch-models{width:100%;margin-top:10px}.ynp-memory-fetch-models:disabled{opacity:.55}.ynp-memory-model-status{min-height:18px;margin-top:7px;color:var(--ynp-placeholder);font-size:11px;line-height:1.5}
.ynp-memory-failure{margin:0 0 10px;padding:14px 16px;border:1px solid rgba(194,103,93,.28);border-radius:18px;background:color-mix(in srgb,var(--ynp-control-bg) 88%,#c96d61 12%)}.ynp-memory-failure b{display:block;color:var(--ynp-control-text);font-size:14px}.ynp-memory-failure span,.ynp-memory-failure p{display:block;margin:4px 0 0;color:var(--ynp-placeholder);font-size:11px;line-height:1.55}.ynp-memory-failure details{margin-top:9px;color:var(--ynp-placeholder);font-size:11px}.ynp-memory-failure pre{max-height:140px;overflow:auto;padding:9px;border-radius:10px;background:var(--ynp-control-bg-soft);white-space:pre-wrap;word-break:break-word}.ynp-memory-failure button{width:100%;margin-top:10px;border:0;border-radius:13px;padding:9px 12px;background:var(--ynp-assist-bg);color:var(--ynp-control-text);font:inherit}
.ynp-memory-progress{margin:0 0 10px;padding:14px 16px;border:1px solid var(--ynp-divider);border-radius:18px;background:var(--ynp-control-bg);box-shadow:0 8px 24px rgba(42,57,82,.05)}.ynp-memory-progress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ynp-memory-progress-head>div{min-width:0}.ynp-memory-progress b{display:block;color:var(--ynp-control-text);font-size:13px}.ynp-memory-progress span{display:block;margin-top:4px;color:var(--ynp-placeholder);font-size:11px;line-height:1.5}.ynp-memory-progress strong{flex:none;color:#6f91bd;font-size:13px;font-variant-numeric:tabular-nums}.ynp-memory-progress-track{height:6px;margin-top:12px;overflow:hidden;border-radius:999px;background:var(--ynp-control-bg-soft)}.ynp-memory-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#89a9d1,#b8cde5);transition:width .36s cubic-bezier(.22,1,.36,1)}.ynp-memory-progress[data-status=failed] strong{color:#bd6f67}.ynp-memory-progress[data-status=failed] .ynp-memory-progress-track i{background:#bd7770}.ynp-memory-progress[data-status=success] strong{color:#668f7c}.ynp-memory-progress[data-status=success] .ynp-memory-progress-track i{background:#78a791}@media(prefers-reduced-motion:reduce){.ynp-memory-progress-track i{transition:none}}

/* 回忆：统计、AI 进度与人工整理采用紧凑分组，避免状态文字散落。 */
#ynp-phone .ynp-memory-page{background:linear-gradient(180deg,color-mix(in srgb,var(--ynp-page-bg) 92%,#dbe8f8 8%),var(--ynp-page-bg) 48%)}
#ynp-phone .ynp-memory-page .ynp-navbar{border-bottom:0;background:color-mix(in srgb,var(--ynp-page-bg) 86%,transparent);backdrop-filter:blur(18px) saturate(150%)}
#ynp-phone .ynp-memory-body{box-sizing:border-box;padding:14px 16px 36px}
#ynp-phone .ynp-memory-head{gap:10px;margin:2px 0 12px}
#ynp-phone .ynp-memory-head>div{padding:14px 16px;border:1px solid var(--ynp-divider);border-radius:20px;background:var(--ynp-control-bg);box-shadow:0 10px 28px rgba(50,70,101,.06)}
#ynp-phone .ynp-memory-head b{font-size:25px;line-height:1.08;letter-spacing:-.035em}
#ynp-phone .ynp-memory-head span{display:block;margin-top:7px;font-size:11px;letter-spacing:.01em}
#ynp-phone .ynp-memory-cluster{margin-bottom:12px;padding:13px;border:1px solid var(--ynp-divider);border-radius:24px;background:var(--ynp-control-bg);box-shadow:0 12px 32px rgba(50,70,101,.065)}
#ynp-phone .ynp-memory-mode{margin:0;padding:2px;border:0;background:transparent}
#ynp-phone .ynp-memory-mode>div{display:grid;min-width:0;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}
#ynp-phone .ynp-memory-mode em{grid-column:1;padding:3px 7px;border-radius:999px;background:rgba(137,169,209,.16);color:#587ba7;font-size:9px;font-style:normal;font-weight:750;letter-spacing:.04em;white-space:nowrap}
#ynp-phone .ynp-memory-mode.manual em{background:rgba(205,166,120,.16);color:#8d694a}
#ynp-phone .ynp-memory-mode b{grid-column:2;font-size:14px;line-height:1.25}
#ynp-phone .ynp-memory-mode span{grid-column:1/-1;margin-top:7px;font-size:10px}
#ynp-phone .ynp-memory-mode button{min-width:76px;padding:10px 12px;border-radius:13px;background:#86a7d0;color:#fff;font-size:12px;font-weight:720;box-shadow:0 7px 16px rgba(87,122,167,.17)}
#ynp-phone .ynp-memory-cluster.manual .ynp-memory-mode button{background:#2f3b4e;box-shadow:0 7px 16px rgba(34,46,64,.14)}
#ynp-phone .ynp-memory-mode button:active,#ynp-phone .ynp-memory-toolbar button:active{transform:scale(.97)}
#ynp-phone .ynp-memory-progress{margin:12px 0 0;padding:12px 13px;border:0;border-radius:16px;background:var(--ynp-control-bg-soft);box-shadow:none}
#ynp-phone .ynp-memory-progress b{font-size:11px}
#ynp-phone .ynp-memory-progress span{margin-top:3px;font-size:9px;line-height:1.45}
#ynp-phone .ynp-memory-progress strong{font-size:11px}
#ynp-phone .ynp-memory-progress-track{height:4px;margin-top:9px;background:color-mix(in srgb,var(--ynp-placeholder) 14%,transparent)}
#ynp-phone .ynp-memory-failure{margin:10px 0 0}
#ynp-phone .ynp-memory-toolbar{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:7px;margin-top:12px;padding:10px 0 0;border-top:1px solid var(--ynp-divider);overflow:visible}
#ynp-phone .ynp-memory-toolbar button{width:100%;padding:9px 8px;border-radius:12px;background:var(--ynp-control-bg-soft);font-size:11px;transition:transform .1s ease-out}
#ynp-phone .ynp-memory-library-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:18px 2px 9px}
#ynp-phone .ynp-memory-library-head b{color:var(--ynp-control-text);font-size:17px;letter-spacing:-.02em}
#ynp-phone .ynp-memory-library-head span{color:var(--ynp-placeholder);font-size:9px;text-align:right}
#ynp-phone .ynp-memory-list{gap:10px}
#ynp-phone .ynp-memory-card{padding:16px;border:1px solid var(--ynp-divider);border-radius:20px;background:var(--ynp-control-bg);box-shadow:0 9px 25px rgba(50,70,101,.055)}
#ynp-phone .ynp-memory-empty{display:flex;min-height:132px;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:24px 26px;border:1px dashed color-mix(in srgb,var(--ynp-placeholder) 24%,transparent);border-radius:22px;background:color-mix(in srgb,var(--ynp-control-bg) 80%,transparent);line-height:1.55}
#ynp-phone .ynp-memory-empty b{color:var(--ynp-control-text);font-size:15px}
#ynp-phone .ynp-memory-empty span{max-width:260px;color:var(--ynp-placeholder);font-size:10px}
@media(max-width:390px){#ynp-phone .ynp-memory-body{padding-inline:13px}#ynp-phone .ynp-memory-mode button{min-width:70px;padding-inline:10px}#ynp-phone .ynp-memory-library-head span{max-width:145px}}
@media(prefers-reduced-motion:reduce){#ynp-phone .ynp-memory-mode button,#ynp-phone .ynp-memory-toolbar button{transition:none}}
