:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#39284c;background:#f6f3fa;font-size:16px;line-height:1.55;color-scheme:light}
*{box-sizing:border-box}body{margin:0}main{max-width:760px;margin:0 auto;padding:28px 18px 40px}header{margin-bottom:22px}.eyebrow{font-size:16px;letter-spacing:.12em;color:#7c6d90;margin:0 0 6px}h1{font-size:16px;line-height:1.25;font-weight:650;margin:0 0 9px}h2{font-size:16px;margin:0 0 15px}.intro{margin:0;color:#7b6b8c;font-size:16px}.panel,.ingredient{background:#fff;border:1px solid #e6ddef;border-radius:14px;padding:18px;margin-bottom:14px}.identity{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:16px;color:#6c587f}input,select,textarea,button{font:inherit}input,select,textarea{display:block;width:100%;border:1px solid #cbb9dc;border-radius:8px;background:#fff;color:#3e2855;padding:11px 12px;min-height:46px;margin-top:6px}textarea{min-height:82px;resize:vertical;line-height:1.6}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #c4a6e2;outline-offset:2px}button{min-height:46px;border:0;border-radius:9px;background:#573275;color:#fff1b8;padding:10px 17px;cursor:pointer}button:disabled{opacity:.65;cursor:wait}.tabs{display:flex;gap:8px;margin:21px 0 14px}.tabs button{flex:1;background:#eee5f6;color:#6b4e85;white-space:nowrap;padding:9px 6px}.tabs button[aria-pressed=true]{background:#573275;color:#fff1b8}.tabs span{font-size:16px;margin-left:5px;opacity:.8}.filters{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:9px}.filters input,.filters select{margin:0}.filters select{padding:10px 7px}.list-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:10px 0}.list-meta p{font-size:16px;color:#826e96;margin:0}.text-button{background:none;color:#75489a;padding:5px 0;min-height:44px;text-align:left;font-size:16px;text-decoration:underline;text-underline-offset:3px}.category-heading{font-size:16px;font-weight:600;padding:15px 2px 9px;margin:0}.ingredient{padding:16px;margin-bottom:11px}.item-heading{display:flex;gap:10px;align-items:baseline}.number{font-variant-numeric:tabular-nums;font-size:16px;color:#8b739f;min-width:27px}.item-name{font-size:18px;font-weight:600;line-height:1.4;margin:0;overflow-wrap:anywhere}.cancelled .item-name{color:#a34532;text-decoration:line-through}.alias-block{font-size:16px;margin:13px 0 15px;color:#725d86}.alias-block summary{cursor:pointer;color:#76518e;min-height:32px}.alias-block p{margin:5px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.notice{border-left:3px solid #9673b8;background:#f0e8f8;padding:12px 14px;font-size:16px;color:#6c4c85;border-radius:6px}.submit-panel{margin-top:25px}.submit-panel>button#submit{width:100%;margin:17px 0 0}.check{display:flex;align-items:center;gap:9px}.check input{width:20px;min-height:20px;height:20px;flex:0 0 20px;margin:0;accent-color:#573275}.small{font-size:16px;color:#8a769c}.empty{text-align:center;color:#8d7b9f;padding:32px 0}#message{font-size:16px;padding:0;overflow-wrap:anywhere}#message:not(:empty){position:sticky;bottom:12px;background:#4a2c64;color:#fff1b8;border-radius:10px;padding:13px 15px;box-shadow:0 5px 18px #38204d22}footer{font-size:16px;color:#8c7d99;margin-top:30px}.logout{margin-top:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}[hidden]{display:none!important}#loginForm button{margin-top:16px;width:100%}#adminExport{display:block;margin-top:15px;color:#573275}#draftCount{font-size:16px;color:#725d86}@media(min-width:640px){main{padding-top:40px}.ingredient{padding:20px}.item-name{font-size:19px}}@media(max-width:359px){main{padding:23px 12px 30px}.filters{grid-template-columns:minmax(0,1fr) 110px}.identity{gap:9px}.tabs span{margin-left:2px}}

#adminExport a{display:block;margin-top:12px;color:#573275}




/* Light champagne and grey-purple palette approved by the user. */
:root{background:#f2ede5;color:#000;font-size:16px;color-scheme:light}
body{min-height:100vh;background:linear-gradient(135deg,#f4ede1 0%,#ece5e2 43%,#e6e5ed 100%);background-attachment:fixed}
.panel,.ingredient{background:#fffdfa;border-color:#c6bec8;box-shadow:0 4px 14px #5145530a}
h1,h2,.item-name,.eyebrow,.intro,label,.list-meta p,.number,.alias-block,.alias-block summary,.small,.empty,footer,#draftCount,.text-button,#adminExport,#adminExport a{color:#000}
input,select,textarea{background:#fff;border-color:#aca0b0;color:#000}
input::placeholder,textarea::placeholder{color:#000;opacity:.6}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-color:#8a7b92}
button,button:not(.text-button){background:#6b5c70;color:#fff}
.tabs button,.tabs button[aria-pressed=false]{background:#eee8f1;color:#000;border:1px solid #b3a8b8}
.tabs button[aria-pressed=true]{background:#6b5c70;color:#fff;border-color:#6b5c70}
.text-button{background:transparent;color:#000}
.notice{background:#f1e7d4;border-left-color:#a68d69;color:#000}
.cancelled .item-name{color:#000;text-decoration-color:#b83843;text-decoration-thickness:2px}
#message:not(:empty){background:#6b5c70;color:#fff;border:1px solid #6b5c70}
a{color:#000}.check input{accent-color:#6b5c70}
@media(max-width:479px){.filters{grid-template-columns:1fr}.tabs button{white-space:normal}.list-meta{align-items:flex-start}}

/* Reading sizes: 16px on phones, 18px on wider screens; item names keep their existing sizes. */
@media(min-width:640px){
 :root{font-size:18px}
 .eyebrow,h1,h2,.intro,label,.tabs span,.list-meta p,.text-button,.category-heading,.number,.alias-block,.notice,.small,#message,footer,#draftCount{font-size:18px}
 .item-name{font-size:19px}
}

/* Administrator: read-only three-store comparison. */
#adminPanel{margin-top:24px}#adminPanel .item-name{font-size:18px}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-heading h2{margin:0}.store-summary{display:grid;gap:12px;margin-top:18px}.store-summary .panel{margin:0}.store-summary p{margin:8px 0}.declarations{margin-top:12px}.declarations summary{cursor:pointer}.summary-filters{display:grid;gap:12px}.summary-check{margin-top:16px}.opinions-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0 12px}.opinions-table th,.opinions-table td{padding:16px;vertical-align:top;text-align:left;overflow-wrap:anywhere;background:#fffdfa;border-top:1px solid #c6bec8;border-bottom:1px solid #c6bec8;font-weight:400}.opinions-table thead th{background:#6b5c70;color:#fff}.opinions-table th:first-child{border-left:1px solid #c6bec8;border-radius:12px 0 0 12px}.opinions-table td:last-child,.opinions-table thead th:last-child{border-right:1px solid #c6bec8;border-radius:0 12px 12px 0}.opinions-table p{margin:0 0 9px}.opinions-table .alias-block{margin-bottom:0}.summary-cancelled{text-decoration:line-through;text-decoration-color:#b83843;text-decoration-thickness:2px}.submitted-opinion+.submitted-opinion{margin-top:18px;padding-top:12px;border-top:1px solid #c6bec8}.opinion-text{white-space:pre-wrap}.admin-downloads{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px}
@media(min-width:640px){.store-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-filters{grid-template-columns:2fr 1fr 1fr}#adminPanel .item-name{font-size:19px}}
@media(min-width:1100px){body:has(#adminPanel:not([hidden])) main{max-width:1400px}}
@media(max-width:899px){.opinions-table,.opinions-table tbody,.opinions-table tr,.opinions-table th,.opinions-table td{display:block;width:100%}.opinions-table thead{display:none}.opinions-table tr{margin-bottom:16px;border:1px solid #c6bec8;border-radius:12px;overflow:hidden;background:#fffdfa}.opinions-table th,.opinions-table td{border:0!important;border-radius:0!important}.opinions-table td{border-top:1px solid #c6bec8!important}.opinions-table td::before{content:attr(data-store);display:block;font-weight:650;margin-bottom:12px}.opinions-table .small{margin-bottom:8px}}
