:root{color-scheme:light;font-family:Trebuchet MS,Segoe UI,sans-serif;background:#0f172a;color:#f8fafc;line-height:1.6;font-size:16px}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;scrollbar-width:none;-ms-overflow-style:none}body::-webkit-scrollbar,html::-webkit-scrollbar{display:none}body{background:radial-gradient(circle at top,rgba(56,189,248,.18),transparent 34%),radial-gradient(circle at 85% 12%,rgba(251,191,36,.14),transparent 22%),linear-gradient(160deg,#020617,#081120 44%,#0f172a);padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}a{color:inherit;text-decoration:none}button,input{font:inherit}.site-header{width:min(1200px,calc(100% - 32px));margin:0 auto;padding:18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:18px;gap:18px;background:linear-gradient(135deg,rgba(15,23,42,.9),rgba(30,41,59,.76)),radial-gradient(circle at top right,rgba(56,189,248,.16),transparent 38%);border:1px solid rgba(148,163,184,.14);border-radius:26px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 45px rgba(2,6,23,.22)}.site-brand{display:inline-flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.site-brand-copy{display:grid;grid-gap:2px;gap:2px}.site-brand-mark{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:16px;background:linear-gradient(180deg,rgba(125,211,252,.28),rgba(14,165,233,.1));border:1px solid rgba(125,211,252,.24);color:#e0f2fe;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.22),0 16px 26px rgba(14,165,233,.18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.site-brand-mark svg:last-child{position:absolute;top:8px;right:7px;color:#fde68a}.site-brand-title{display:block;font-size:1.02rem}.site-brand-subtitle{font-size:.7rem;color:#7dd3fc;letter-spacing:.16em}.site-nav,.site-user{display:flex;align-items:center;gap:12px}.site-nav{justify-content:center;color:#cbd5e1;flex-wrap:wrap}.header-login,.header-logout,.site-nav a{border:1px solid rgba(148,163,184,.18);border-radius:999px;background:rgba(15,23,42,.58);color:#f8fafc;padding:9px 14px;cursor:pointer}.site-user{justify-content:flex-end;color:#cbd5e1}.site-user span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-user-badge{display:grid;grid-template-columns:auto 1fr;grid-gap:2px;gap:2px;min-width:0;padding:10px 14px;border-radius:18px;background:linear-gradient(180deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,.03));border:1px solid rgba(148,163,184,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.site-user-icon{grid-row:span 2;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:10px;border-radius:12px;background:rgba(56,189,248,.12);color:#7dd3fc}.site-user-name{color:#f8fafc;font-weight:700}.site-user-role{color:#94a3b8;font-size:.78rem}.guest-badge{max-width:260px}.site-user form{margin:0}.header-logout{color:#fecaca}.mobile-bottom-nav{display:none}.page-shell{width:min(1200px,calc(100% - 32px));margin:0 auto;padding:28px 0 60px}.eyebrow{color:#38bdf8;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;margin-bottom:12px}.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(15,23,42,.74),rgba(15,23,42,.88));border:1px solid rgba(148,163,184,.12);border-radius:28px;padding:36px;display:grid;grid-gap:24px;gap:24px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 24px 60px rgba(2,6,23,.34);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.hero.simple-hero{padding:48px 36px;margin-bottom:40px}.hero h1{margin:0;font-size:clamp(2.25rem,5vw,3.5rem);line-height:1.05}.hero p{max-width:52ch;color:#cbd5e1}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:1px solid transparent;border-radius:999px;padding:14px 22px;font-weight:700;line-height:1.2;text-align:center;white-space:nowrap;transition:transform .15s ease,background-color .15s ease,color .15s ease}.button span{display:inline-block;text-align:center}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button.primary{background:#38bdf8;color:#0f172a}.button.outline{background:hsla(0,0%,100%,.04);color:#f8fafc;border-color:rgba(148,163,184,.35);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-layered:before{content:"";position:absolute;inset:1px;border-radius:27px;background:linear-gradient(145deg,hsla(0,0%,100%,.08),transparent 30%,transparent 70%,rgba(56,189,248,.06));pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);grid-gap:24px;gap:24px;align-items:stretch}.hero-panel{align-self:stretch;padding:24px;border-radius:24px;background:linear-gradient(180deg,rgba(8,15,28,.64),rgba(15,23,42,.36));border:1px solid rgba(125,211,252,.14);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 16px 40px rgba(2,6,23,.22);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hero-panel h2{margin:14px 0 10px}.hero-panel p{margin:0}.hero-panel-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;color:#bae6fd;background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.16)}.hero-orb{position:absolute;border-radius:999px;filter:blur(10px);opacity:.85;pointer-events:none}.hero-orb-left{width:220px;height:220px;top:-88px;left:-54px;background:radial-gradient(circle,rgba(34,211,238,.34),rgba(34,211,238,.02) 70%)}.hero-orb-right{width:180px;height:180px;right:42px;bottom:-72px;background:radial-gradient(circle,rgba(251,191,36,.24),rgba(251,191,36,.02) 72%)}.icon-pack-strip{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.install-app-wrap{display:grid;grid-gap:12px;gap:12px;margin-top:20px;max-width:520px}.install-app-button{width:-moz-fit-content;width:fit-content;background:linear-gradient(180deg,rgba(251,191,36,.92),rgba(245,158,11,.92));color:#111827;box-shadow:0 18px 35px rgba(245,158,11,.18)}.install-app-button:disabled{background:hsla(0,0%,100%,.06);color:#cbd5e1;border-color:rgba(148,163,184,.22);box-shadow:none}.install-app-caption,.install-ios-hint{display:inline-flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:12px 14px;border-radius:18px;background:hsla(0,0%,100%,.05);border:1px solid rgba(148,163,184,.14);color:#cbd5e1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.install-app-caption{font-size:.92rem}.pwa-status-stack{position:fixed;right:16px;bottom:16px;z-index:90;display:grid;grid-gap:10px;gap:10px;width:min(420px,calc(100vw - 32px))}.pwa-status-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:20px;background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(15,23,42,.94)),radial-gradient(circle at top right,rgba(56,189,248,.1),transparent 32%);border:1px solid rgba(148,163,184,.14);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 18px 36px rgba(2,6,23,.3);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.pwa-status-banner.offline{border-color:rgba(251,191,36,.18)}.pwa-status-banner strong{display:block;margin-bottom:4px}.pwa-status-banner p{margin:0;color:#cbd5e1;font-size:.92rem}.pwa-status-icon{width:38px;height:38px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(251,191,36,.12);color:#fde68a}.icon-pack-chip{gap:10px;padding:10px 14px;border-radius:999px;background:hsla(0,0%,100%,.05);border:1px solid rgba(148,163,184,.14);color:#dbeafe;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.icon-pack-chip,.icon-pack-chip-mark{display:inline-flex;align-items:center}.icon-pack-chip-mark{justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(56,189,248,.12);color:#7dd3fc}.filter-row{display:grid;grid-gap:16px;gap:16px;margin-bottom:24px}.mobile-sticky-categories,.mobile-sticky-filters{position:relative}.filter-input{width:100%;padding:14px 18px;border-radius:18px;border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.9);color:#f8fafc}.category-list{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;touch-action:pan-x;padding-bottom:6px;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.category-list::-webkit-scrollbar{display:none}.category-button{flex:0 0 auto;border:1px solid rgba(148,163,184,.16);border-radius:999px;padding:10px 16px;background:hsla(0,0%,100%,.04);color:#f8fafc;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.category-button:hover{transform:translateY(-1px)}.category-button.active{background:#38bdf8;color:#0f172a;border-color:transparent}.quiz-category-list{margin-bottom:20px}.result-text{margin:0 0 16px;color:#cbd5e1}.intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:32px}.intro-grid article{background:rgba(15,23,42,.88);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:24px}.feature-card{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(15,23,42,.76),rgba(15,23,42,.92)),radial-gradient(circle at top right,rgba(125,211,252,.14),transparent 34%);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 18px 40px rgba(2,6,23,.2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.feature-card-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;margin-bottom:16px;border-radius:16px;background:linear-gradient(180deg,rgba(56,189,248,.2),rgba(56,189,248,.08));color:#7dd3fc;border:1px solid rgba(56,189,248,.14)}.intro-grid h2{margin-top:0}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px}.card{background:rgba(15,23,42,.88);border:1px solid rgba(148,163,184,.12);border-radius:24px;padding:22px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 18px 38px rgba(2,6,23,.18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.card h2{margin:14px 0 18px}.card p{color:#cbd5e1}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.knowledge-card{scroll-margin-top:140px}.knowledge-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.knowledge-card-tools{display:inline-flex;align-items:center;gap:8px}.knowledge-drill-button,.knowledge-learned-button{width:34px;height:34px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(56,189,248,.08);border:1px solid rgba(56,189,248,.16);color:#7dd3fc;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06);transition:transform .15s ease,background-color .15s ease,color .15s ease}.knowledge-learned-button{cursor:pointer}.knowledge-learned-button.active{background:rgba(34,197,94,.16);border-color:rgba(34,197,94,.24);color:#bbf7d0}.knowledge-learned-button:disabled{opacity:.65;cursor:progress}.knowledge-drill-button:hover,.knowledge-learned-button:hover{transform:translateY(-1px);background:rgba(56,189,248,.14);color:#e0f2fe}.category-badge{display:inline-flex;align-items:center;justify-content:center;justify-self:center;align-self:center;max-width:100%;padding:8px 14px;border-radius:999px;background:color-mix(in srgb,var(--category-color,#818cf8) 18%,transparent);border:1px solid color-mix(in srgb,var(--category-color,#818cf8) 28%,transparent);color:color-mix(in srgb,var(--category-color,#c7d2fe) 74%,#fff);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:1.25;text-align:center}.category-chai{background:rgba(245,158,11,.16);color:#fcd34d}.category-limonady{background:rgba(34,197,94,.16);color:#bbf7d0}.category-koktejli-ba{background:rgba(14,165,233,.16);color:#7dd3fc}.category-molochnye-koktejli{background:rgba(236,72,153,.16);color:#f9a8d4}.category-alko-koktejli{background:rgba(239,68,68,.18);color:#fca5a5}.details{margin-bottom:16px}.wine-details{display:grid;grid-gap:10px;gap:10px;margin:0}.wine-details div{display:grid;grid-template-columns:96px minmax(0,1fr);grid-gap:12px;gap:12px;padding:10px 0;border-top:1px solid rgba(148,163,184,.14)}.wine-details dt{color:#94a3b8;font-weight:700}.wine-details dd{margin:0;color:#f8fafc}.auth-card{background:rgba(15,23,42,.92);border:1px solid rgba(148,163,184,.12);border-radius:28px;padding:28px;max-width:520px;margin-bottom:24px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 18px 38px rgba(2,6,23,.18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.centered-shell{display:grid;place-items:center;min-height:calc(100vh - 80px)}.auth-form{display:grid;grid-gap:16px;gap:16px;margin-top:18px}.auth-form label{display:grid;grid-gap:10px;gap:10px;color:#cbd5e1}.auth-form input{width:100%;border-radius:16px;border:1px solid rgba(148,163,184,.2);background:rgba(15,23,42,.95);color:#f8fafc;padding:12px 14px}.checkbox-label{display:flex;align-items:center;gap:12px;color:#cbd5e1}.form-error{color:#fda4af;margin:0}.auth-footnote{margin-top:14px;color:#cbd5e1}.auth-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;align-items:center}.profile-grid{grid-template-columns:minmax(0,320px) minmax(0,1fr)}.admin-grid,.profile-grid{display:grid;grid-gap:20px;gap:20px}.admin-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.admin-tabs button{min-height:42px;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:hsla(0,0%,100%,.04);color:#cbd5e1;padding:10px 16px;font-weight:800;cursor:pointer}.admin-tabs button.active{border-color:rgba(56,189,248,.42);background:rgba(56,189,248,.14);color:#e0f2fe}.pull-refresh{position:fixed;top:max(10px,env(safe-area-inset-top,0px));left:50%;z-index:140;min-width:116px;padding:10px 14px;border-radius:999px;border:1px solid rgba(125,211,252,.22);background:rgba(15,23,42,.9);color:#e0f2fe;font-size:.82rem;font-weight:800;text-align:center;opacity:0;pointer-events:none;box-shadow:0 16px 38px rgba(2,6,23,.28);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:opacity .12s ease}.pull-refresh.visible{opacity:1}.admin-upload-form,.admin-user-form{display:grid;grid-gap:12px;gap:12px}.admin-upload-form{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-user-form{align-items:start}.admin-file-tools,.admin-upload-form{margin-bottom:18px}.admin-file-tools{display:grid;grid-gap:18px;gap:18px}.admin-upload-form input,.admin-user-form input,.builder-field input,.builder-field select,.builder-ingredient-row input,.category-editor-row input[type=text]{width:100%;border-radius:16px;border:1px solid rgba(148,163,184,.2);background:rgba(15,23,42,.95);color:#f8fafc;padding:12px 14px}.category-editor-row{grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,opacity .16s ease}.category-save-footer{margin-bottom:16px;justify-content:flex-start}.category-editor-row.dragging{opacity:.62;border-color:rgba(56,189,248,.36)}.category-drag-handle{display:inline-grid;place-items:center;gap:3px;width:32px;height:42px;border:0;border-radius:0;background:transparent;cursor:-webkit-grab;cursor:grab;padding:0}.category-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.category-drag-handle span{display:block;width:18px;height:2px;border-radius:999px;background:#cbd5e1}.category-color-preview{width:28px;height:28px;border-radius:999px;border:1px solid hsla(0,0%,100%,.24);box-shadow:0 0 0 5px hsla(0,0%,100%,.04)}.category-editor-row input[type=color]{width:52px;height:42px;border:1px solid rgba(148,163,184,.2);border-radius:14px;background:rgba(15,23,42,.95);padding:4px}.admin-item,.admin-list{display:grid;grid-gap:14px;gap:14px}.admin-item{padding:18px;border-radius:18px;background:hsla(0,0%,100%,.03);border:1px solid rgba(148,163,184,.12)}.admin-item p,.admin-user-header p{margin:6px 0 0;color:#cbd5e1}.admin-item-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.admin-item-actions .button,.admin-upload-form .button,.admin-user-form .button,.auth-actions .button,.section-header .button,.toggle-label{min-height:42px;padding:10px 16px}.admin-user-item{gap:18px}.toggle-label{display:inline-flex;align-items:center;gap:10px;color:#cbd5e1;min-height:42px;padding:8px 12px;border-radius:999px;background:hsla(0,0%,100%,.04);border:1px solid rgba(148,163,184,.12);line-height:1.2}.toggle-label input[type=checkbox],.toggle-label input[type=radio]{width:16px;height:16px;margin:0;flex:0 0 auto;accent-color:#38bdf8;transform:translateY(-.5px)}.toggle-label span{display:inline-flex;align-items:center;min-height:16px}.admin-message{color:#7dd3fc}.danger-button{color:#fecaca}.editor-header-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.builder-section-head .button,.editor-footer .button,.editor-header-actions .button,.editor-item-actions .button{width:auto;min-height:42px;padding:10px 16px;justify-content:center}.json-editor-form{display:grid;grid-gap:16px;gap:16px}.editor-builder-card,.editor-items-card{margin-bottom:20px}.menu-builder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:18px}.builder-field{display:grid;grid-gap:10px;gap:10px;color:#cbd5e1}.builder-ingredients{display:grid;grid-gap:12px;gap:12px}.builder-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.builder-ingredients-list{display:grid;grid-gap:10px;gap:10px}.builder-ingredient-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center}.compact-button{padding:8px 12px;min-height:38px}.editor-item-card,.editor-item-list{display:grid;grid-gap:14px;gap:14px}.editor-item-card{padding:18px;border-radius:20px;border:1px solid rgba(148,163,184,.12);background:hsla(0,0%,100%,.03)}.editor-item-card.editing{border-color:rgba(56,189,248,.34);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 0 0 1px rgba(56,189,248,.12)}.editor-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.editor-item-head p{margin:6px 0 0;color:#94a3b8}.editor-item-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.editor-item-meta{display:flex;flex-wrap:wrap;gap:12px;color:#94a3b8;font-size:.92rem}.editor-item-ingredients{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}.editor-item-ingredients li{padding:8px 12px;border-radius:999px;background:rgba(56,189,248,.1);color:#bae6fd;border:1px solid rgba(56,189,248,.16)}.editor-status{padding:14px 16px;border-radius:18px;border:1px solid rgba(148,163,184,.18);background:hsla(0,0%,100%,.04)}.editor-status p{margin:0}.editor-status.valid{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.1);color:#bbf7d0}.editor-status.invalid{border-color:hsla(0,91%,71%,.28);background:hsla(0,91%,71%,.1);color:#fecaca}.json-editor{width:100%;min-height:60vh;padding:18px;border-radius:24px;border:1px solid rgba(148,163,184,.18);background:rgba(2,6,23,.92);color:#e2e8f0;font:500 .95rem/1.6 Consolas,SFMono-Regular,Courier New,monospace;resize:vertical;outline:none}.json-editor:focus{border-color:rgba(56,189,248,.45);box-shadow:0 0 0 1px rgba(56,189,248,.22)}.editor-footer{display:flex;justify-content:flex-start;align-items:center;gap:12px;flex-wrap:wrap}.result-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:12px;gap:12px}.result-item{background:rgba(15,23,42,.88);border:1px solid rgba(148,163,184,.12);border-radius:18px;padding:16px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 12px 24px rgba(2,6,23,.12)}.result-meta{color:#94a3b8;font-size:.92rem;margin-top:6px}.loading-text{color:#cbd5e1;margin-bottom:24px}.loading-shell{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:24px}.loading-card{width:min(520px,100%);background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(15,23,42,.94)),radial-gradient(circle at top right,rgba(56,189,248,.12),transparent 34%);border:1px solid rgba(148,163,184,.12);border-radius:28px;padding:32px 28px;text-align:center;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 22px 50px rgba(2,6,23,.28);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.loading-spinner{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;border:4px solid rgba(56,189,248,.18);border-top-color:#38bdf8;animation:spin .85s linear infinite}.loading-card h1{margin:0 0 10px;font-size:clamp(1.6rem,4vw,2.2rem)}.loading-card p{margin:0;color:#cbd5e1}.offline-card{display:grid;grid-gap:16px;gap:16px;justify-items:center}.offline-icon{width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;border-radius:22px;color:#fde68a;background:linear-gradient(180deg,rgba(251,191,36,.16),rgba(245,158,11,.08));border:1px solid rgba(251,191,36,.18)}.boot-splash{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,rgba(56,189,248,.18),transparent 34%),radial-gradient(circle at 80% 15%,rgba(251,191,36,.12),transparent 20%),linear-gradient(160deg,rgba(2,6,23,.98),rgba(8,17,32,.97),rgba(15,23,42,.98));transition:opacity .35s ease,visibility .35s ease}.boot-splash.hidden{opacity:0;visibility:hidden;pointer-events:none}.boot-splash.visible{opacity:1;visibility:visible}.boot-splash-panel{width:min(460px,100%);padding:34px 28px;border-radius:32px;text-align:center;background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(15,23,42,.92)),radial-gradient(circle at top right,rgba(56,189,248,.14),transparent 32%);border:1px solid rgba(148,163,184,.12);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 24px 70px rgba(2,6,23,.34);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.boot-splash-panel h1{margin:0 0 10px;font-size:clamp(1.8rem,5vw,2.5rem)}.boot-splash-panel p:last-of-type{margin:0;color:#cbd5e1}.boot-splash-mark{width:82px;height:82px;margin:0 auto 18px;border-radius:26px;display:grid;place-items:center;font-size:1.8rem;font-weight:800;letter-spacing:.08em;color:#e0f2fe;background:linear-gradient(180deg,rgba(56,189,248,.26),rgba(14,165,233,.08));border:1px solid rgba(125,211,252,.24);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.14),0 18px 36px rgba(14,165,233,.18)}.boot-splash-bar{width:100%;height:8px;margin-top:18px;overflow:hidden;border-radius:999px;background:hsla(0,0%,100%,.06)}.boot-splash-bar span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#fbbf24);animation:boot-splash-progress 1.15s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes boot-splash-progress{0%{transform:translateX(-120%)}to{transform:translateX(320%)}}.details ol,.details ul{padding-left:20px;margin:8px 0 0}.quiz-form{display:grid;grid-gap:18px;gap:18px}.quiz-card{background:rgba(15,23,42,.88);border:1px solid rgba(148,163,184,.12);border-radius:22px;padding:20px}.quiz-card-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.quiz-card h2{margin:0;font-size:1.05rem}.options-grid{display:grid;grid-gap:12px;gap:12px;margin-top:16px}.option-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:hsla(0,0%,100%,.04);border:1px solid transparent;cursor:pointer}.option-item input{accent-color:#38bdf8}.option-item.correct-selected{background:rgba(34,197,94,.18);border-color:rgba(34,197,94,.45);color:#dcfce7}.option-item.wrong-selected{background:hsla(0,91%,71%,.18);border-color:hsla(0,91%,71%,.45);color:#fee2e2}.option-item.missed-correct{background:rgba(250,204,21,.18);border-color:rgba(250,204,21,.45);color:#fef3c7}.option-item.hinted-correct{background:rgba(148,163,184,.2);border-color:rgba(148,163,184,.45);color:#e2e8f0}.option-item:has(input:disabled){cursor:default}.ingredient-options{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-count{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#7dd3fc;padding:8px 12px;font-weight:700;white-space:nowrap}.hint-button,.quiz-count{background:rgba(56,189,248,.12)}.hint-button{color:#38bdf8;border:1px solid rgba(56,189,248,.18);border-radius:999px;padding:10px 16px;cursor:pointer}.hint-text{background:hsla(0,0%,100%,.05);border:1px dashed rgba(148,163,184,.3);border-radius:16px;padding:14px;margin-top:14px}.quiz-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:18px;background:rgba(15,23,42,.9);border:1px solid rgba(148,163,184,.12);border-radius:22px}.result-box{padding:18px;background:rgba(56,189,248,.08);border-left:4px solid #38bdf8;border-radius:18px}@media (max-width:900px){.cards-grid,.intro-grid,.menu-builder-grid,.profile-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start}.site-header{grid-template-columns:1fr;align-items:stretch;gap:14px}.site-user{justify-content:space-between;gap:10px;flex-wrap:nowrap}.site-user span{max-width:none;min-width:0}}@media (max-width:640px){.site-header{width:min(100%,calc(100% - 24px));margin-top:max(12px,env(safe-area-inset-top,0px));padding:14px;border-radius:22px}.site-brand-title{font-size:.95rem}.site-brand-subtitle{font-size:.66rem;letter-spacing:.12em}.page-shell{width:min(100%,calc(100% - 24px));padding:20px 0 110px}.site-nav{display:none}.site-user{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.site-user-badge{padding:10px 12px}.site-user-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-logout{padding:10px 12px}.mobile-bottom-nav{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom,0px));z-index:60;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:8px;gap:8px;padding:10px;border-radius:24px;background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(2,6,23,.9));border:1px solid rgba(148,163,184,.14);box-shadow:0 22px 45px rgba(2,6,23,.42);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.mobile-bottom-link{display:grid;place-items:center;grid-gap:6px;gap:6px;min-height:54px;padding:8px 10px;border-radius:18px;color:#94a3b8;font-size:.74rem;font-weight:700;letter-spacing:.02em;text-align:center;background:linear-gradient(180deg,hsla(0,0%,100%,.02),hsla(0,0%,100%,0));transition:background-color .15s ease,color .15s ease,transform .15s ease}.mobile-bottom-link.active{background:linear-gradient(180deg,rgba(56,189,248,.16),rgba(56,189,248,.08));color:#e0f2fe}.mobile-bottom-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:12px;background:hsla(0,0%,100%,.04);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08)}.mobile-bottom-link.active .mobile-bottom-icon{background:rgba(224,242,254,.12)}.mobile-sticky-filters{margin:max(6px,env(safe-area-inset-top,0px)) 0 24px;border-radius:22px;background:linear-gradient(180deg,rgba(8,15,28,.82),rgba(15,23,42,.78)),radial-gradient(circle at top right,rgba(56,189,248,.08),transparent 42%);border:1px solid rgba(148,163,184,.14);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 16px 30px rgba(2,6,23,.22);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-sticky-categories,.mobile-sticky-filters{position:-webkit-sticky;position:sticky;top:max(10px,env(safe-area-inset-top,0px));z-index:20;padding:14px}.mobile-sticky-categories{margin-bottom:20px;border-radius:22px;background:rgba(2,6,23,.88);border:1px solid rgba(148,163,184,.12);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.card,.hero,.intro-grid article,.quiz-card,.quiz-summary{padding:18px}.hero-grid{grid-template-columns:1fr}.hero-panel{padding:20px}.hero-actions{flex-direction:column;align-items:stretch}.install-app-button,.install-app-caption,.install-ios-hint{width:100%;justify-content:center}.pwa-status-stack{left:12px;right:12px;bottom:84px;width:auto}.pwa-status-banner{align-items:flex-start}.ingredient-options{grid-template-columns:1fr}.button{width:100%;justify-content:center}.admin-item-actions,.auth-actions{align-items:stretch}.admin-upload-form,.admin-user-form{grid-template-columns:1fr}.editor-footer,.editor-header-actions{width:100%}.builder-ingredient-row .button,.builder-section-head .button,.editor-footer .button,.editor-header-actions .button,.editor-item-actions .button{width:auto}.builder-ingredient-row,.editor-item-head{grid-template-columns:1fr}.editor-item-head{display:grid}.editor-item-actions{justify-content:flex-start}}