:root{color-scheme:light;--paper:#faf8f3;--ink:#283b32;--muted:#73766c;--line:#e2e1d6;--accent:#536c53}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.6}
.eyebrow{font-size:10px;font-weight:700;letter-spacing:3px}
h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.2}
h1{font-size:46px;margin:14px 0;overflow-wrap:anywhere}
h2{font-size:29px}
h3{font-size:19px;margin:0}
.restaurant{text-align:center;padding:55px 24px 25px;background:#e9ecdf}
.restaurant p{font-size:13px;color:#58634f;margin:15px 0 22px}
.ornament{font-size:23px;color:#8e9677}
nav{display:flex;gap:23px;padding:17px 22px;overflow-x:auto;position:sticky;top:0;background:var(--paper);border-bottom:1px solid var(--line);z-index:1}
nav a{font-size:12px;white-space:nowrap;color:var(--ink);text-decoration:none}
.menu-content{max-width:680px;margin:auto;padding:0 24px}
.section-intro{text-align:center;padding:37px 0 12px}
.section-intro h2{font-size:36px;margin:12px 0}
section{scroll-margin-top:75px;margin-bottom:42px}
section>h2{border-bottom:1px solid var(--line);padding-bottom:15px;text-align:center}
article{padding:10px 0 18px}
.dish-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.price{font-size:14px;white-space:nowrap}
article p{color:var(--muted);font-size:13px;line-height:1.65;max-width:85%;margin:9px 0 0}
footer{text-align:center;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding:27px 0 40px}
.admin{min-height:100vh;display:grid;place-items:center;padding:30px 22px;background:#e9ecdf}
.panel{width:100%;max-width:440px;background:var(--paper);padding:35px 28px;border-radius:16px;box-shadow:0 15px 60px #283b3210}
.panel h1{font-size:36px}
.intro{color:var(--muted);font-size:14px;margin:18px 0 29px}
label{display:block;font-size:13px;font-weight:700;margin:20px 0 7px}
input,textarea{font:inherit;width:100%;border:1px solid #babfad;background:#fff;padding:13px;border-radius:7px;min-height:49px;color:var(--ink)}
textarea{resize:vertical;line-height:1.35}
button{font:inherit;font-size:14px;font-weight:700;width:100%;border:0;border-radius:7px;padding:15px;background:var(--ink);color:#fff;margin-top:23px;cursor:pointer;min-height:49px}
input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #aa8245;outline-offset:4px}
.preview,.password-link{display:block;text-align:center;color:var(--ink);margin-top:23px}
.password-link{font-size:13px;margin-top:16px}
.hint{font-size:12px;color:var(--muted);text-align:center;overflow-wrap:anywhere}
.secondary{background:transparent;color:var(--muted);font-weight:400;margin-top:5px}
.message{background:#e4ecdc;padding:13px;border-radius:6px;font-size:13px}
.error{background:#f8e0d9;color:#792e19}
.admin.logged{display:block;padding:30px 22px}.admin.logged .panel{max-width:1040px;margin:0 auto}.menu-editor{margin-top:48px;border-top:1px solid var(--line);padding-top:30px}.menu-editor>h2{margin-bottom:5px}.editor-hint{color:var(--muted);font-size:13px;margin-top:0}.dish-editor{margin:32px 0 44px;scroll-margin-top:20px}.dish-editor h3{font-size:24px;margin-bottom:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;table-layout:fixed}th{text-align:left;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:8px}td{vertical-align:top;padding:8px;border-top:1px solid var(--line)}th:nth-child(1){width:25%}th:nth-child(2){width:45%}th:nth-child(3){width:15%}th:nth-child(4){width:15%}.dish-editor input,.dish-editor textarea{font-size:13px;padding:10px;min-height:43px}.price-input{text-align:right}.compact{margin:0;padding:10px 8px;min-height:43px}.danger{background:#8a3d2d}.new-dish td{background:#f2f2ea}.new-dish input,.new-dish textarea{background:#fff}.add{background:var(--accent)}.save-table{max-width:210px;margin-top:14px}.admin.logged>.panel>.preview{margin-top:34px}
@media(max-width:699px){.admin.logged{padding:16px 10px}.admin.logged .panel{padding:28px 18px}.menu-editor{margin-top:38px}.dish-editor{margin-bottom:48px}table,thead,tbody,tr,th,td{display:block}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}tr{border:1px solid var(--line);border-radius:9px;margin:0 0 14px;padding:8px;background:#fff}td{border:0;padding:6px}td::before{content:attr(data-label);display:block;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px}.compact,.save-table{max-width:none}.new-dish{background:#f2f2ea}}
@media(min-width:700px){nav{justify-content:center}.restaurant{padding-top:70px}h1{font-size:58px}}
