@font-face{font-family:DM Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url('/assets/fonts/dm-sans-latin-variable.woff2') format('woff2')}
@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/instrument-serif-latin-regular.woff2') format('woff2')}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url('/assets/fonts/instrument-serif-latin-italic.woff2') format('woff2')}
:root{--bg:#141211;--surface:#1e1b19;--surface-2:#282321;--paper:#f1e9df;--muted:#b6aaa0;--line:#443c36;--accent:#f27763;--accent-dark:#e65a43;--gold:#e5b768;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans','PingFang SC','Microsoft YaHei',sans-serif;--page:min(1184px,calc(100% - 80px))}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--paper);font:16px/1.6 var(--sans)}body:has(dialog[open]){overflow:hidden}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation}button,input,select,textarea{color:inherit}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button,a,input,textarea,select{transition:background-color .16s,color .16s,border-color .16s}p,h1,h2,h3{margin:0}button .icon{flex-shrink:0}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:20px;top:-100px;background:var(--paper);color:var(--bg);padding:10px 20px;z-index:10}.skip-link:focus{top:10px}.page-nav{width:var(--page);margin:auto;display:flex;align-items:center;justify-content:space-between;height:100px;border-bottom:1px solid var(--line);gap:20px}.wordmark{font:italic 35px var(--serif);letter-spacing:-1px;min-height:44px;display:flex;align-items:center}.nav-current{font-size:11px;letter-spacing:1.7px;color:var(--muted)}.nav-current span{font-size:12px;letter-spacing:1px;margin-left:12px}.back-home{font-size:13px;min-height:44px;display:flex;align-items:center;gap:20px}.back-home:hover{color:var(--accent)}.page-shell{width:var(--page);margin:auto}.food-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;padding:74px 0 76px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:500}.small-line{width:24px;height:1px;background:var(--accent)}h1{font:clamp(72px,7.5vw,108px)/.93 var(--serif);letter-spacing:-3px;margin:27px 0 29px}h1 em{font-weight:400;color:var(--accent)}.hero-intro{font-size:21px;font-weight:500;letter-spacing:1px;line-height:1.7}.hero-detail{font-size:13px;color:var(--muted);line-height:1.9;margin:12px 0 26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 23px;font-size:14px;font-weight:600;border-radius:6px}.primary{color:#241411;background:var(--accent)}.primary:hover{background:#ff947f}.secondary{border:1px solid var(--line);background:transparent;color:var(--paper)}.secondary:hover{background:var(--surface-2);border-color:var(--muted)}.hero-note{display:inline-block;font-size:11px;color:var(--muted);margin-left:16px}.mobile-break{display:none}.table-art{aspect-ratio:1/1;position:relative;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(0deg,transparent,transparent 47px,#c7b39812 47px,#c7b39812 48px),repeating-linear-gradient(90deg,transparent,transparent 47px,#c7b39812 47px,#c7b39812 48px),#211c18;border:1px solid #524334;max-width:520px;transform:rotate(2deg);border-radius:3px}.plate{width:73%;aspect-ratio:1;border-radius:50%;background:#e7ded0;color:#3d3126;box-shadow:8px 15px 25px #0004,inset 0 0 0 10px #e1d5c3,inset 0 0 0 11px #b8a58c;display:grid;place-items:center;transform:rotate(-8deg)}.plate-inner{height:77%;width:77%;border-radius:50%;border:1px solid #b4a087;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:inset 1px 3px 12px #846a501a}.plate-kicker{font-size:8px;letter-spacing:2.8px;margin-bottom:19px}.plate p{font:clamp(28px,3.35vw,47px)/1.07 var(--serif);text-align:center;letter-spacing:-1px}.plate p em{color:#b54230}.plate-stars{font-size:14px;letter-spacing:12px;margin:20px 0 0 12px;color:#b54230}.plate-stars span{font-size:23px}.art-caption{position:absolute;top:20px;left:24px;font-size:9px;letter-spacing:1.3px;line-height:1.4;color:#c8b295}.art-caption span{position:absolute;left:330px;top:0;white-space:nowrap;font-size:9px}.art-bottom{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:3px;color:#c8b295}.red-label{position:absolute;right:17px;bottom:24px;width:99px;height:99px;display:grid;place-content:center;transform:rotate(9deg);background:#b94832;color:#fff0df;font-size:17px;letter-spacing:3px;line-height:1.8;box-shadow:4px 5px 0 #110c093b;border:1px solid #ec8f6980}.fork{position:absolute;left:25px;top:35%;height:37%;width:17px;border-radius:0 0 7px 7px;background:linear-gradient(90deg,#ab9580,#e6cfb4,#a38971);clip-path:polygon(0 0,13% 0,13% 23%,35% 23%,35% 0,47% 0,47% 23%,67% 23%,67% 0,80% 0,80% 23%,100% 23%,100% 0,100% 33%,66% 42%,69% 100%,31% 100%,34% 42%,0 33%)}.knife{position:absolute;right:26px;top:32%;height:39%;width:15px;background:linear-gradient(90deg,#ad9075,#e4c6a7,#b99a7c);border-radius:90% 3px 3px 5px;clip-path:polygon(0 0,100% 0,100% 100%,40% 100%,40% 43%,0 43%)}.collection{border-top:1px solid var(--line);padding-top:38px;min-height:480px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2{font-size:26px;font-weight:500;letter-spacing:1px}.total-count{font:16px var(--sans);color:var(--muted);margin-left:14px;vertical-align:middle;border-left:1px solid var(--line);padding-left:14px}.list-caption{font-size:12px;color:var(--muted);line-height:1.9;text-align:right}.list-toolbar{display:flex;gap:20px;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.board-filters{display:flex;gap:4px}.filter{background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:8px;padding:10px 17px;min-height:44px;border-radius:4px;font-size:13px;white-space:nowrap;border:1px solid transparent}.filter span{font-size:11px;opacity:.8}.filter:hover{background:var(--surface)}.filter.active{background:var(--paper);color:var(--bg)}.filter[data-board=red].active{background:#e4756026;border-color:#ce786362;color:#ff9b85}.filter[data-board=black].active{background:#514944;color:#f5eee5;border-color:#74665b}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.red-dot{background:var(--accent)}.black-dot{background:#b3a99c;box-shadow:inset 0 0 0 2px #4a433d}.list-tools{display:flex;align-items:center;gap:12px}.search-wrap{display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:0 11px;color:var(--muted)}.search-wrap .icon{width:17px;height:17px}.search-wrap input{background:none;border:0;width:163px;height:43px;font-size:12px;min-width:0;outline-offset:0}input::placeholder,textarea::placeholder{color:#a89c91}select{min-height:44px;background:var(--surface);border:1px solid var(--line);padding:0 25px 0 12px;border-radius:4px;font-size:12px;color:var(--muted);max-width:100%}.results-note{margin:17px 0;font-size:12px;color:var(--muted);min-height:20px}.entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.entry-card{background:var(--surface);border:1px solid var(--line);border-radius:7px;overflow:hidden;position:relative}.entry-image{width:100%;height:240px;display:block;object-fit:cover;background:var(--surface-2)}.entry-body{padding:23px}.entry-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.board-badge{display:inline-flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.5px;color:var(--accent);background:#f2776312;padding:4px 9px;border:1px solid #e2765f38;border-radius:3px}.board-badge.black{color:#d8cabb;background:#bba48d0d;border-color:#bba48d40}.entry-date{font-size:11px;color:var(--muted)}.entry-card h3{margin:16px 0 12px;font-size:21px;line-height:1.45;font-weight:500;overflow-wrap:anywhere}.entry-meta{display:flex;align-items:center;gap:15px;margin-bottom:20px}.entry-method{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:5px}.entry-method .icon{width:14px;height:14px}.entry-rating{display:flex;gap:3px;color:var(--gold);align-items:center}.entry-rating .icon{width:14px;height:14px}.entry-rating .filled{fill:currentColor}.entry-rating .unfilled{color:#746859}.entry-rating span{font-size:11px;margin-left:5px}.entry-notes{font-size:14px;line-height:1.9;color:#d9cdc1;white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid var(--line);padding-top:16px}.entry-notes.collapsed{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.read-more{color:var(--accent);background:none;min-height:44px;padding:10px 0 0;font-size:12px}.empty-state{text-align:center;border:1px dashed var(--line);border-radius:6px;padding:42px 20px 44px;background:radial-gradient(ellipse at 50% 20%,#5b3c271b,transparent 65%)}.empty-plate{display:grid;place-items:center;border:1px solid #6d5846;outline:1px solid #6d58464d;outline-offset:5px;border-radius:50%;width:65px;height:65px;margin:0 auto 25px;color:#caaf91}.empty-plate .icon{width:26px;height:26px}.empty-kicker{font-size:9px;letter-spacing:2.5px;color:var(--muted);margin-bottom:9px}.empty-state h3{font-size:22px;font-weight:500;letter-spacing:1px}.empty-state>p:not(.empty-kicker){font-size:13px;color:var(--muted);margin:12px 0 23px}.empty-state .button{font-size:12px}.load-error{text-align:center;padding:50px 20px;color:var(--muted);border:1px dashed var(--line)}.load-error .button{margin-top:20px}.load-more-wrap{text-align:center;margin-top:25px}.sharing-note{display:flex;align-items:center;gap:22px;padding:26px 0;margin:26px 0 35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sharing-note>.icon{color:var(--accent);width:28px;height:28px}.sharing-note p{font-size:12px;color:var(--muted);max-width:720px}.sharing-note strong{color:var(--paper);font-weight:500;display:block;margin-bottom:5px}.text-button{color:var(--paper);background:none;padding:10px 0;min-height:44px;font-size:12px;white-space:nowrap}.sharing-note .text-button{margin-left:auto}.text-button:hover{color:var(--accent)}.page-footer{width:var(--page);margin:0 auto;display:flex;gap:24px;align-items:center;padding:0 0 35px}.page-footer .wordmark{font-size:28px}.page-footer p{font:italic 20px var(--serif);color:var(--muted)}.page-footer>a:last-child{font-size:11px;color:var(--muted);margin-left:auto;padding:12px 0}.page-footer>a:hover{color:var(--accent)}dialog{color:var(--paper);background:var(--surface);border:1px solid #665348;border-radius:10px;padding:30px;width:min(590px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;scrollbar-color:#6c5748 var(--surface)}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dialog-heading .eyebrow{font-size:9px}.dialog-heading h2{font-size:24px;font-weight:500;margin-top:7px}.icon-button{display:grid;place-items:center;width:44px;height:44px;background:var(--surface-2);border-radius:50%}.icon-button:hover{background:var(--line)}.form-intro{font-size:12px;color:var(--muted);margin:12px 0 24px}.field{padding:0;margin:0 0 20px;border:0;min-width:0}.field>label,.field legend{font-size:13px;display:block;margin-bottom:9px;width:100%}.required{color:var(--accent);margin-left:3px}.field input[type=text],.field input:not([type]),.field textarea{width:100%;background:var(--bg);border:1px solid #69584a;border-radius:5px;padding:11px 13px;font-size:14px;min-height:46px}.field textarea{resize:vertical;min-height:115px;line-height:1.7}.field-hint{font-size:11px;float:right;color:var(--muted)}.board-options,.method-options{display:flex;gap:12px}.choice-card{position:relative;display:flex;align-items:center;padding:14px;min-width:0;flex:1;border:1px solid #69584a;border-radius:5px;background:var(--bg);cursor:pointer;gap:10px}.choice-card input,.star-picker input{position:absolute;width:1px;height:1px;opacity:0}.choice-card strong{font-size:14px;font-weight:500;display:flex;align-items:center;gap:7px}.choice-card small{display:block;font-size:11px;margin-top:3px;color:var(--muted)}.choice-check{margin-left:auto;opacity:0;width:18px;height:18px}.choice-card:has(input:checked){border-color:var(--accent);background:#f277630c}.black-choice:has(input:checked){border-color:#d2bda4;background:#dbc4ac09}.choice-card:has(input:checked) .choice-check{opacity:1}.choice-card:has(input:focus-visible),.star-picker label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.method-choice{flex:1;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #69584a;border-radius:5px;min-height:48px;cursor:pointer;font-size:13px}.method-choice input{accent-color:var(--accent);width:15px;height:15px;margin:0}.method-choice .icon{width:17px;height:17px}.method-choice:has(input:checked){border-color:var(--accent);background:#f277630c}.rating-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.star-picker{display:flex;gap:3px}.star-picker label{display:grid;place-items:center;position:relative;width:44px;height:44px;cursor:pointer;border-radius:4px}.star-icon{width:31px;height:31px;fill:none;stroke:#9b826a;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.star-picker label.lit .star-icon{fill:var(--gold);stroke:var(--gold)}.star-picker label:hover{background:#e5b7680e}.rating-row output{font-size:12px;color:var(--muted)}.optional{font-size:11px;color:var(--muted);margin-left:7px}.upload-area{position:relative;border:1px dashed #8d7562;display:flex;align-items:center;justify-content:center;gap:16px;padding:20px 16px;background:var(--bg);border-radius:5px;text-align:left}.upload-area .icon{width:28px;height:28px;color:var(--muted)}.upload-area strong{font-size:13px;font-weight:500}.upload-area p{font-size:10px;color:var(--muted);margin-top:3px}.upload-area input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.upload-area:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.field-help{font-size:10px;color:var(--muted);margin-top:6px}.image-preview{display:flex;gap:20px;align-items:center;margin-top:14px}.image-preview img{width:100px;height:80px;object-fit:cover;border-radius:4px}.field-error{color:#ffb19f;font-size:12px;line-height:1.6}.field-error:not(:empty){margin-top:7px}.field [aria-invalid=true]{border-color:var(--accent)}.form-error{border:1px solid #a85947;background:#9d403618;padding:12px;color:#ffb19f;font-size:12px;margin-bottom:20px;border-radius:5px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:20px}.form-bottom p{font-size:10px;color:var(--muted);line-height:1.8}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:15px 22px;display:flex;gap:12px;align-items:center;background:var(--paper);color:var(--bg);box-shadow:0 8px 40px #0006;border-radius:6px;font-size:13px;z-index:50;max-width:calc(100% - 32px);width:max-content}.toast .icon{color:#49734a}
@media(min-width:1600px){.food-hero{padding:84px 0}.table-art{margin-left:auto;width:100%}}@media(max-width:1100px){:root{--page:calc(100% - 56px)}.food-hero{gap:38px;padding:65px 0}.art-caption span{display:none}.hero-note{display:block;margin:12px 0 0}.red-label{width:78px;height:78px;font-size:14px;right:9px}.fork{left:15px;width:13px}.knife{right:17px;width:12px}.plate-kicker{font-size:6px;margin-bottom:12px}.plate-stars{margin-top:12px}.list-tools{gap:8px}.search-wrap input{width:130px}.filter{padding:10px 12px}.list-caption{font-size:11px}}@media(max-width:760px){:root{--page:calc(100% - 40px)}.page-nav{height:78px}.nav-current{font-size:9px;letter-spacing:1px}.nav-current span{display:none}.back-home{font-size:11px;gap:8px}.wordmark{font-size:30px}.food-hero{grid-template-columns:1fr 1fr;gap:18px;padding:50px 0}.hero-copy .eyebrow{font-size:7px;letter-spacing:1px}.small-line{width:14px}h1{font-size:68px;letter-spacing:-2px;margin:23px 0}.hero-intro{font-size:17px}.hero-detail{font-size:11px}.hero-detail br{display:none}.hero-note{font-size:10px}.plate p{font-size:27px}.art-caption{font-size:7px;top:12px;left:14px}.table-art{margin-top:20px}.plate-kicker{font-size:5px;letter-spacing:1px}.plate-stars{font-size:8px;margin-left:7px;letter-spacing:5px;margin-top:8px}.plate-stars span{font-size:15px}.red-label{height:58px;width:58px;font-size:11px;bottom:16px;right:3px;letter-spacing:1px}.art-bottom{font-size:5px;bottom:12px;letter-spacing:1.4px}.fork{left:10px;width:10px}.knife{right:11px;width:9px}.plate{box-shadow:5px 9px 16px #0004,inset 0 0 0 6px #e1d5c3,inset 0 0 0 7px #b8a58c}.section-heading h2{font-size:22px}.list-toolbar{flex-wrap:wrap;gap:16px}.list-tools{width:100%}.search-wrap{flex:1}.search-wrap input{width:100%}.search-wrap .icon{flex-shrink:0}.entries{gap:15px}.entry-image{height:185px}.entry-body{padding:17px}.entry-card h3{font-size:18px}.entry-meta{gap:9px;flex-wrap:wrap}.entry-notes{font-size:13px}.entry-rating .icon{width:12px;height:12px}.entry-date{font-size:9px}.sharing-note{align-items:flex-start;gap:14px}.sharing-note .text-button{display:none}.page-footer p{font-size:17px}}@media(max-width:540px){:root{--page:calc(100% - 36px)}.food-hero{display:block;position:relative;padding:46px 0 36px;overflow:hidden}.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.6px}h1{font-size:79px;margin:24px 0}.hero-intro{font-size:18px;letter-spacing:.5px}.mobile-break{display:block}.hero-detail{font-size:12px;max-width:230px;margin-top:12px;margin-bottom:23px}.hero-detail br{display:block}.hero-note{font-size:10px;margin-top:11px}.table-art{position:absolute;right:-110px;bottom:37px;width:235px;opacity:.65;transform:rotate(10deg);z-index:0}.table-art .red-label{right:60px;bottom:10px}.table-art .art-caption,.table-art .art-bottom,.table-art .knife{display:none}.table-art .plate p{font-size:23px}.table-art .fork{left:12px}.hero-copy{pointer-events:none}.hero-copy button{pointer-events:auto}.section-heading{align-items:flex-start;margin-bottom:22px}.list-caption{display:none}.section-heading h2{font-size:22px}.total-count{font-size:13px}.collection{padding-top:27px;min-height:440px}.filter{padding:10px 16px;font-size:13px;gap:8px}.board-filters{width:100%;justify-content:space-between}.list-tools{gap:8px}.search-wrap{min-width:0}.list-tools select{max-width:130px;font-size:11px}.results-note{font-size:11px}.entries{grid-template-columns:1fr;gap:20px}.entry-image{height:230px}.entry-body{padding:21px}.entry-top{gap:8px}.entry-card h3{font-size:21px}.entry-rating .icon{width:14px;height:14px}.entry-date{font-size:10px}.entry-notes{font-size:14px}.entry-meta{gap:16px}.empty-state{padding:34px 18px}.empty-state h3{font-size:19px}.empty-state>p:not(.empty-kicker){font-size:12px}.sharing-note p{font-size:11px}.page-footer{flex-wrap:wrap;gap:12px}.page-footer p{font-size:15px}.page-footer>a:last-child{font-size:10px}dialog{padding:23px 18px;width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:9px}.dialog-heading h2{font-size:22px}.form-intro{font-size:11px}.choice-card{padding:12px}.choice-card small{font-size:10px}.board-options{gap:10px}.rating-row{gap:12px}.star-picker{gap:0}.star-picker label{width:43px;height:44px}.rating-row output{font-size:11px}.field input:not([type]),.field textarea{font-size:16px}.field textarea{font-size:14px}.form-bottom{gap:10px}.form-bottom .button{padding:12px 15px;font-size:13px}.form-bottom p{font-size:9px}.toast{font-size:12px;padding:13px 16px;bottom:max(16px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
