/* Public discovery UI; independent from the import/discovery admin module. */
.nf-discovery-actions .nf-saved-entry{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid #cad6cc;border-radius:8px;background:#fff;color:#205b32;font-size:13px;text-decoration:none;flex:1;box-sizing:border-box}
.nf-discovery-actions .nf-saved-entry:focus-visible{outline:3px solid #21853a;outline-offset:3px}
.nf-recent-entry{min-height:44px;padding:10px 12px;border:1px solid #dce3dd;border-radius:8px;background:#fff;color:#205b32;font:inherit;font-size:14px;line-height:1.5;text-align:left;cursor:pointer;box-sizing:border-box}
.nf-recent-entry--sidebar{display:block;width:100%;margin:12px 0}
.nf-recent-entry--menu{display:block;width:100%;margin:0;border:0;border-radius:0;padding:13px 14px;font-weight:700}
.nf-recent-entry[hidden],.nf-furusato-menu-button[data-nf-recent-only][hidden]{display:none!important}
.nf-recent-entry:focus-visible{outline:3px solid #21853a;outline-offset:2px}
/* Keep this entry with the desktop/tablet sidebar. It moves out of the sidebar
   only when the compact mobile layout begins. */
@media(max-width:820px){.nf-recent-entry--sidebar{display:none!important}}
.nf-discovery-toolbar,.nf-discovery-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.nf-discovery-toolbar button,.nf-discovery-actions button,#nf-discovery-dialog button{min-height:44px;padding:8px 12px;border:1px solid #cad6cc;border-radius:8px;background:#fff;color:#205b32;font:inherit;cursor:pointer}
.nf-discovery-actions{margin-top:10px}.nf-discovery-actions button{flex:1;font-size:13px}.nf-discovery-actions [aria-pressed=true]{background:#e9f5ec;border-color:#21853a}
.nf-discovery-toolbar button:focus-visible,.nf-discovery-actions button:focus-visible,#nf-discovery-dialog :focus-visible{outline:3px solid #21853a;outline-offset:3px}
.nf-discovery-notice:not(:empty){position:fixed;z-index:100100;bottom:24px;left:50%;transform:translateX(-50%);width:min(90vw,600px);padding:14px;background:#173f24;color:white;border-radius:10px;box-shadow:0 4px 18px #0003}
#nf-discovery-dialog{width:min(1100px,94vw);max-width:94vw;max-height:88vh;padding:20px;border:0;border-radius:14px;color:#243429;background:#fff;box-sizing:border-box}
#nf-discovery-dialog::backdrop{background:#0007}.nf-discovery-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px;position:sticky;top:-20px;background:white;z-index:1}.nf-discovery-dialog-head h2{margin:12px 0}
#nf-discovery-dialog{font-size:14px;line-height:1.6}
#nf-discovery-dialog .nf-discovery-dialog-head h2{font-size:22px;line-height:1.4;min-width:0}
#nf-discovery-dialog [data-nf-close]{flex-shrink:0;white-space:nowrap}
#nf-discovery-dialog .nf-saved-grid p{margin:8px 0}
#nf-discovery-dialog .nf-saved-grid a{font-size:14px;line-height:1.6}
@media(max-width:600px){#nf-discovery-dialog{padding:14px}#nf-discovery-dialog .nf-discovery-dialog-head{top:-14px;gap:8px}#nf-discovery-dialog .nf-discovery-dialog-head h2{font-size:18px}}
.nf-saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.nf-saved-grid article{border:1px solid #dde4df;border-radius:10px;padding:12px;overflow-wrap:anywhere}.nf-saved-grid img{display:block;width:100%;height:160px;object-fit:contain}.nf-saved-grid a{color:#205b32}
.nf-comparison-scroll{overflow-x:auto;margin-bottom:20px}.nf-comparison-scroll table{border-collapse:collapse;min-width:620px;width:100%;table-layout:fixed}.nf-comparison-scroll th,.nf-comparison-scroll td{padding:12px;border:1px solid #dae3dc;text-align:left;vertical-align:top;overflow-wrap:anywhere}.nf-comparison-scroll th:first-child{width:110px}.nf-comparison-scroll tbody th{background:#f1f6f2}.nf-comparison-scroll a{color:#205b32}
.nf-discovery-filter{display:inline-flex;flex-direction:column;gap:5px;width:calc(50% - 12px);margin:8px 6px 0 0;vertical-align:top}.nf-discovery-filter select{min-height:44px;max-width:100%;font:inherit;padding:8px;background:#fff;border:1px solid #d5ddd7;border-radius:7px}.nf-discovery-help{font-size:12px;color:#637168;margin:8px 0}
.nf-discovery-collections{margin:16px 0}.nf-discovery-collections>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.nf-discovery-collections a{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dae3dc;border-radius:10px;background:#fff;color:#205b32;text-decoration:none}.nf-discovery-collections img{width:100%;aspect-ratio:1.82;object-fit:cover}.nf-discovery-collections span{padding:12px;font-weight:700}
.nf-catalog-error{padding:12px;border:1px solid #c42d38;background:#fff4f4;color:#8b1b24}.nf-catalog-page [hidden]{display:none!important}
.nf-filter-pending{display:none}.nf-filter-pending[hidden]{display:none!important}
.nf-filter-pending:not([hidden]){display:flex;align-items:center;gap:8px;position:fixed;right:16px;bottom:16px;z-index:1000;padding:12px;background:#fff;border:1px solid #ccd6ce;box-shadow:0 3px 18px #0002;border-radius:8px}.nf-filter-pending button{min-height:44px;padding:8px 12px;background:#fff;border:1px solid #21853a;border-radius:7px;color:#205b32}
.nf-collection-term-list{max-height:150px;overflow:auto;border:1px solid #ccd6ce;padding:8px;background:#fff}.nf-collection-fields .nf-collection-term-list label{display:flex;flex-direction:row;align-items:center;padding:5px}.nf-collection-fields .nf-collection-term-list input{width:18px;min-height:18px}.nf-collection-term-list [hidden]{display:none!important}
@media(max-width:820px){.nf-filter-pending:not([hidden]){display:flex;align-items:center;gap:6px;position:fixed;bottom:0;left:0;right:0;z-index:1000;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:white;box-shadow:0 -3px 18px #0002}.nf-filter-pending span{font-size:12px;flex:1}.nf-filter-pending button{min-height:44px;border:1px solid #21853a;border-radius:7px;padding:8px;color:#205b32;background:white}.nf-filter-pending .nf-pending-apply{background:#21853a;color:white}}
.nf-discovery-admin{max-width:1000px}.nf-discovery-setting{display:inline-block;margin:8px 18px 8px 0}.nf-discovery-admin details{margin:18px 0;padding:16px;background:#fff;border:1px solid #d7ded9;border-radius:8px}.nf-discovery-admin summary{cursor:pointer;font-weight:700}.nf-discovery-admin .nf-collection-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.nf-collection-fields label{display:flex;flex-direction:column;gap:5px}.nf-collection-fields input,.nf-collection-fields select{width:100%;min-height:36px}.nf-collection-actions{display:flex;gap:8px;flex-wrap:wrap}.nf-collection-image img{max-width:240px;max-height:100px;object-fit:contain}
@media(max-width:820px){.nf-catalog-filter-actions{position:sticky;bottom:0;z-index:8;background:#fff;padding:12px 4px!important;box-shadow:0 -4px 12px #0001}.nf-discovery-toolbar button{font-size:13px;flex:1}.nf-discovery-actions button{font-size:12px;padding:7px 5px}.nf-discovery-admin .nf-collection-fields{grid-template-columns:1fr}.nf-saved-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nf-saved-grid img{height:130px}}
@media(prefers-reduced-motion:reduce){.nf-discovery-toolbar *,.nf-discovery-actions *{transition:none!important}}
/* Recent history cards and dialog: keep theme heading styles outside. */
html.nf-history-open{overflow:hidden}
body #nf-discovery-dialog{position:fixed;inset:0;margin:auto;width:min(1000px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 40px);overflow:auto;padding:24px;color:var(--nf-text,#303830)}
body #nf-discovery-dialog .nf-discovery-dialog-head{top:-24px;padding:8px 0;border-bottom:1px solid #e1e4e1}
body #nf-discovery-dialog .nf-saved-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}
body #nf-discovery-dialog .nf-saved-grid article{display:flex;flex-direction:column;min-width:0;margin:0;padding:12px;background:#fff}
body #nf-discovery-dialog .nf-saved-product{display:block;text-decoration:none;color:inherit}
body #nf-discovery-dialog .nf-saved-product img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:6px}
body #nf-discovery-dialog .nf-saved-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.5em;margin:12px 0 0;padding:0;background:none;border:0;font-size:15px;line-height:1.5;color:inherit}
body #nf-discovery-dialog .nf-saved-title::before,body #nf-discovery-dialog .nf-saved-title::after{display:none}
body #nf-discovery-dialog .nf-saved-price{font-size:17px;font-weight:700}
body #nf-discovery-dialog .nf-saved-remove{margin-top:auto;width:100%;color:var(--nf-accent-dark,#333)}
body #nf-discovery-dialog .nf-saved-no-image{display:grid;place-items:center;aspect-ratio:1;background:#f5f5f5}
@media(max-width:820px){body #nf-discovery-dialog{padding:16px}body #nf-discovery-dialog .nf-discovery-dialog-head{top:-16px}body #nf-discovery-dialog .nf-saved-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body #nf-discovery-dialog .nf-saved-grid article{padding:8px}body #nf-discovery-dialog .nf-saved-title{font-size:14px}body #nf-discovery-dialog .nf-saved-price{font-size:15px}}
