<style>
            * {
                margin: 0;
                padding: 0;
                box-sizing: border-box;
            }
            body {
                background-color: #fdfaf5;
                color: #3d2b1f;
                font-family: system-ui, -apple-system, sans-serif;
                line-height: 1.3;
                padding: 15px 12px 25px;
            }
            .container {
                max-width: 920px;
                margin: 0 auto;
            }
            header {
                text-align: center;
                padding: 24px 0 12px;
            }
            h1 {
                font-size: 3.6rem;
                font-weight: 600;
                color: #5d4037;
                letter-spacing: -0.6px;
                margin-bottom: 6px;
            }
            .tagline {
                font-size: 1.5rem;
                color: #8d6e63;
                font-style: italic;
                margin-bottom: 8px;
            }
            .updated {
                font-size: 1.2rem;
                color: #a1887f;
            }
            main {
                background: #fffef9;
                border: 1px solid #f0e4d9;
                border-radius: 10px;
                padding: 20px 22px 24px;     /* reduced top/bottom padding */
                box-shadow: 0 2px 10px rgba(139, 69, 19, 0.06);
            }
            .category {
                margin-bottom: 24px;          /* tighter between categories */
            }
            .category h2 {
                font-size: 2.4rem;
                color: #6d4c41;
                padding-bottom: 8px;
                border-bottom: 2px solid #f5e8d3;
                margin-bottom: 12px;
                font-weight: 600;
            }
            .category-grid {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 14px 24px;              /* slightly tighter vertical gap */
            }
            .item {
                display: flex;
                justify-content: space-between;
                align-items: baseline;
                padding: 6px 0;              /* reduced vertical padding per item */
                border-bottom: 1px dashed #e6d5c0;
                gap: 14px;
                font-size: 1.55rem;
                line-height: 1.28;           /* slightly tighter line height */
            }
            .item:last-child {
                border-bottom: none;
            }
            .name {
                font-weight: 600;
                color: #3d2b1f;
            }
            .portion {
                font-size: 1.25rem;
                color: #8d6e63;
                font-style: italic;
            }
            .price {
                font-weight: 700;
                color: #5d4037;
                white-space: nowrap;
                font-size: 1.55rem;
            }
            .note {
                font-size: 1.2rem;
                color: #9c7c6f;
                margin-top: 20px;
                padding: 12px 16px;
                background: #fdf8f0;
                border-radius: 8px;
                border-left: 4px solid #d7b99f;
            }
            .asterisk {
                font-size: 1.1rem;
                color: #9c7c6f;
                margin: 12px 0 8px;         /* tightened */
                font-style: italic;
                text-align: center;
            }
            footer {
                text-align: center;
                margin-top: 28px;
                color: #a1887f;
                font-size: 1.15rem;
            }

            @media print {
                body {
                    background: white;
                    padding: 0;
                    margin: 0;
                    color: black;
                }
                .container {
                    max-width: none;
                    margin: 0;
                }
                header {
                    padding: 16px 0 8px;
                }
                h1 {
                    font-size: 38pt;
                }
                .tagline {
                    font-size: 18pt;
                }
                .updated {
                    font-size: 14pt;
                }
                main {
                    box-shadow: none;
                    border: none;
                    background: white;
                    padding: 0.35in 0.45in 0.4in;   /* even tighter vertical space */
                    border-radius: 0;
                }
                .category {
                    margin-bottom: 0.35in;           /* reduced between categories */
                }
                .category h2 {
                    font-size: 26pt;
                    border-bottom: 1.5pt solid #444;
                    margin-bottom: 0.18in;
                }
                .category-grid {
                    display: grid !important;
                    grid-template-columns: repeat(2, 1fr) !important;
                    gap: 0.22in 0.45in !important;   /* tighter vertical gap */
                }
                .item {
                    padding: 0.08in 0;               /* very compact per item */
                    border-bottom: 1pt dashed #777;
                    font-size: 16pt;
                    line-height: 1.3;
                }
                .name {
                    font-weight: 700;
                }
                .portion {
                    font-size: 14pt;
                }
                .price {
                    font-size: 16pt;
                    font-weight: 800;
                }
                .note {
                    font-size: 13pt;
                    margin-top: 0.3in;
                    padding: 0.15in 0.22in;
                    border-left: 3pt solid #777;
                    background: #fff;
                    display: none !important;
                }
                .asterisk {
                    font-size: 12pt;
                    margin: 0.22in 0 0.12in;
                }
                footer {
                    display: none !important;
                }
                @page {
                    margin: 0.45in 0.4in;
                    size: letter;
                }
            }

            @media (max-width: 600px) {
                .category-grid {
                    grid-template-columns: 1fr;
                    gap: 16px;
                }
            }
        </style>
