        * {
            box-sizing: border-box;
            margin: 0;
        }
        body {
            background: linear-gradient(145deg, #2b1b0e 0%, #3d2c1b 100%);
            min-height: 100vh;
            display: flex;
            justify-content: center;
            align-items: center;
            font-family: 'Segoe UI', Roboto, system-ui, sans-serif;
            padding: 16px;
            margin: 0;
        }
        .card {
            background: rgba(255, 245, 235, 0.9);
            backdrop-filter: blur(3px);
            border-radius: 2.5rem 2.5rem 2rem 2rem;
            padding: 2rem 1.5rem 2rem 1.5rem;
            box-shadow: 0 30px 40px -15px rgba(0,0,0,0.6), inset 0 1px 4px rgba(255,255,240,0.6);
            border: 1px solid #e3c9a5;
            max-width: 1100px;
            width: 100%;
        }
        h2 {
            text-align: center;
            margin-top: 0;
            margin-bottom: 1.75rem;
            font-weight: 500;
            letter-spacing: 3px;
            word-spacing: 6px;
            text-transform: uppercase;
            color: #2e1f12;
            text-shadow: 0 2px 3px #ecd9b0;
            font-size: 1.9rem;
            border-bottom: 2px dashed #b58f6b;
            padding-bottom: 0.75rem;
        }
        /* Табличная сетка */
        .drink-grid {
            display: table;
            width: 100%;
            border-collapse: separate;
            border-spacing: 16px;
            margin: 0 auto;
        }
        .row {
            display: table-row;
        }
        .cell {
            display: table-cell;
            width: 33.33%;
            background: #fef7e9;
            border-radius: 28px;
            padding: 14px 10px 18px 10px;
            box-shadow: 0 12px 18px -8px #1f140e, inset 0 0 0 1px #fff5e2, inset 0 0 0 3px #b48b5c;
            transition: transform 0.1s ease, box-shadow 0.2s;
            text-align: center;
            vertical-align: middle;
        }
        .cell:hover {
            transform: scale(1.01);
            box-shadow: 0 18px 25px -10px #0d0906, inset 0 0 0 1px #ffe9cf, inset 0 0 0 3px #c79a64;
            background: #fffbf3;
        }
        /* Изображения */
        .drink-image {
            width: 100%;
            aspect-ratio: 1 / 1;
            border-radius: 20px;
            object-fit: cover;
            border: 3px solid #cfb595;
            box-shadow: 0 6px 10px rgba(0,0,0,0.3);
            background: #34291e;
            display: block;
        }
        /* Подпись с именем файла */
        .filename-tag {
            font-family: 'Courier New', monospace;
            font-size: 0.8rem;
            color: #775e42;
            background: #e9d9c4;
            display: inline-block;
            padding: 0.3rem 1rem;
            border-radius: 40px;
            margin-top: 14px;
            letter-spacing: 0.5px;
            border: 1px solid #aa7f58;
            box-shadow: inset 0 1px 4px #ffeee0;
            font-weight: 600;
            word-break: keep-all;
        }
        /* Адаптивность */
        @media (max-width: 600px) {
            .drink-grid { border-spacing: 8px; }
            .cell { padding: 8px 5px 12px 5px; }
            .filename-tag { font-size: 0.65rem; padding: 0.2rem 0.5rem; }
        }
        @media (max-width: 440px) {
            .filename-tag { font-size: 0.5rem; }
        }
        /* Стили для рассказа */
        .story-container {
            margin-top: 2.5rem;
            background: rgba(30, 20, 12, 0.4);
            border-radius: 2rem;
            padding: 1.8rem;
            border: 1px solid #e7c99e;
            backdrop-filter: blur(2px);
        }
        .story-title {
            font-size: 1.8rem;
            font-weight: 600;
            text-align: center;
            color: #2e241a;
            margin-bottom: 1rem;
            letter-spacing: 1px;
            background: linear-gradient(135deg, #e9d7b0, #b58954);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
            text-shadow: 0 1px 2px rgba(0,0,0,0.1);
        }
        .story-text {
            font-family: 'Georgia', 'Times New Roman', serif;
            line-height: 1.6;
            font-size: 1rem;
            color: #2d241a;
            text-align: justify;
            max-height: 70vh;
            overflow-y: auto;
            padding-right: 10px;
        }
        .story-text p {
            margin-bottom: 1.2rem;
        }
        .story-text strong {
            color: #8b5a2b;
        }
        ::-webkit-scrollbar {
            width: 8px;
        }
        ::-webkit-scrollbar-track {
            background: #e2cfae;
            border-radius: 10px;
        }
        ::-webkit-scrollbar-thumb {
            background: #a77f4d;
            border-radius: 10px;
        }
        .footer-note {
            margin-top: 26px;
            text-align: center;
            font-size: 0.85rem;
            color: #4a3623;
            background: #e7cfb1;
            width: fit-content;
            margin-left: auto;
            margin-right: auto;
            padding: 0.5rem 2rem;
            border-radius: 60px;
            border: 1px solid #b58854;
            box-shadow: inset 0 0 6px #fbeacb;
        }
