@font-face{font-family:UniversityRomanBold;src:url(../static/UniversityRomanBold.otf)format("opentype")}:root{--bg:#09090b;--surface:#18181b;--surface-hover:#27272a;--primary:#4ade80;--primary-glow:#4ade804d;--text:#f4f4f5;--text-dim:#a1a1aa;--border:#27272a;--danger:#ef4444}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}.auth-container{background:radial-gradient(circle at 50% 0%, #1a1a2e 0%, var(--bg) 100%);flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:20px;display:flex}.auth-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center;background:#18181bb3;border:1px solid #ffffff14;border-radius:24px;width:100%;max-width:400px;padding:35px 25px;animation:.4s ease-out fadeInScale;box-shadow:0 25px 50px -12px #00000080}.auth-card h1{background:linear-gradient(135deg,#fff 0%,#a1a1aa 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:12px;font-size:26px;font-weight:700}.auth-card p{color:var(--text-dim);margin-bottom:30px;font-size:15px;line-height:1.5}.auth-input{color:#fff;background:#0000004d;border:1px solid #ffffff1a;border-radius:16px;outline:none;width:100%;margin-bottom:20px;padding:16px 20px;font-size:16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.auth-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-glow);background:#00000080}.btn{background-color:var(--primary);color:#000;cursor:pointer;width:100%;box-shadow:0 8px 20px var(--primary-glow);border:none;border-radius:16px;padding:16px;font-size:16px;font-weight:700;transition:all .2s}.btn:active{transform:scale(.96)}.app-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;border-bottom:1px solid var(--border);background:#18181bd9;padding:20px 24px;position:sticky;top:0}.app-header h2{margin-bottom:4px;font-size:22px;font-weight:700}.app-header p{color:var(--text-dim);align-items:center;gap:6px;font-size:14px;display:flex}#lang-toggle{display:inline-block}#lang-toggle button{cursor:pointer;-webkit-backdrop-filter:blur(14px);color:#fff6;letter-spacing:.05em;-webkit-user-select:none;user-select:none;background:#ffffff0f;border:1px solid #ffffff24;border-radius:20px;align-items:center;gap:4px;padding:6px 14px;font-family:inherit;font-size:11px;font-weight:700;transition:all .25s;display:inline-flex}#lang-toggle button:hover{background:#ffffff1f;transform:translateY(-2px);box-shadow:0 4px 14px #00000040}#lang-toggle button span{transition:color .25s}#lang-toggle button span.active{color:#c4b5fd;font-weight:800}#lang-toggle .lang-divider{opacity:.3;color:#ffffff80;margin:0 1px;font-size:10px;font-weight:400}.btn-logout{color:#d4d4d8;cursor:pointer;-webkit-backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff26;border-radius:14px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s}.btn-logout:hover{color:#ffe4e6;background:#f43f5e26;border-color:#f43f5e59;transform:translateY(-2px)}.category-tabs{background:var(--bg);z-index:99;gap:10px;padding:16px 24px;display:flex;position:sticky;top:79px;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.cat-tab{-webkit-backdrop-filter:blur(12px);white-space:nowrap;letter-spacing:.03em;cursor:pointer;-webkit-user-select:none;user-select:none;color:#ffffffb3;background:#ffffff0f;border:1px solid #ffffff24;border-radius:16px;padding:10px 22px;font-size:14px;font-weight:700;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #00000040}.cat-tab:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000059}.cat-tab:active{transform:scale(.95)}.cat-tab.theme-0{color:#ffe4e6;background:#f43f5e26;border:1px solid #f43f5e59}.cat-tab.theme-0.active{color:#fff;background:#f43f5e59;border-color:#f43f5eb3;box-shadow:0 0 18px #f43f5e73}.cat-tab.theme-1{color:#d1fae5;background:#10b98126;border:1px solid #10b98159}.cat-tab.theme-1.active{color:#fff;background:#10b98159;border-color:#10b981b3;box-shadow:0 0 18px #10b98173}.cat-tab.theme-2{color:#f3e8ff;background:#a855f726;border:1px solid #a855f759}.cat-tab.theme-2.active{color:#fff;background:#a855f759;border-color:#a855f7b3;box-shadow:0 0 18px #a855f773}.cat-tab.theme-3{color:#fef3c7;background:#f59e0b26;border:1px solid #f59e0b59}.cat-tab.theme-3.active{color:#fff;background:#f59e0b59;border-color:#f59e0bb3;box-shadow:0 0 18px #f59e0b73}.cat-tab.theme-4{color:#e0f2fe;background:#38bdf826;border:1px solid #38bdf859}.cat-tab.theme-4.active{color:#fff;background:#38bdf859;border-color:#38bdf8b3;box-shadow:0 0 18px #38bdf873}.menu-grid{grid-template-columns:repeat(2,1fr);gap:16px;padding:16px 24px 120px;display:grid}.menu-item{background:var(--surface);border:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;flex-direction:column;justify-content:space-between;padding:16px;transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s,border-color .2s,box-shadow .2s;display:flex}.menu-item:hover{background:var(--surface-hover);border-color:#ffffff24;box-shadow:0 4px 16px #00000059}.menu-item:active{background:var(--surface-hover);transform:scale(.97)}.item-name{margin-bottom:8px;font-size:15px;font-weight:600;line-height:1.3}.item-desc{color:var(--text-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:12px;display:-webkit-box;overflow:hidden}.item-bottom{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.item-price{color:var(--primary);font-size:15px;font-weight:700}.add-btn{background:var(--primary-glow);color:var(--primary);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:all .2s;display:flex}.cart-fab{background:var(--primary);color:#000;box-shadow:0 12px 30px var(--primary-glow);z-index:200;cursor:pointer;border-radius:20px;justify-content:space-between;align-items:center;padding:16px 24px;font-weight:700;animation:.4s cubic-bezier(.175,.885,.32,1.275) slideUp;display:flex;position:fixed;bottom:24px;left:24px;right:24px}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:300;background:#0009;flex-direction:column;justify-content:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.bottom-sheet{background:var(--surface);border-top:1px solid var(--border);border-radius:32px 32px 0 0;max-height:85vh;padding:30px 24px 40px;animation:.3s cubic-bezier(.175,.885,.32,1.1) slideUp;overflow-y:auto;box-shadow:0 -10px 40px #00000080}.sheet-handle{background:var(--border);border-radius:5px;width:40px;height:5px;margin:-15px auto 20px}.sheet-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.sheet-header h3{font-size:20px;font-weight:700}.portion-option{border:1px solid var(--border);background:#ffffff08;border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px 20px;transition:all .2s;display:flex}.portion-option:active{background:#ffffff0f;transform:scale(.98)}.portion-name{font-size:16px;font-weight:600}.portion-price{color:var(--primary);font-weight:700}.cart-item{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:16px 0;display:flex}.cart-item:last-child{border-bottom:none}.cart-item-info h4{margin-bottom:4px;font-size:16px}.cart-item-info p{color:var(--primary);font-weight:700}.qty-controls{border:1px solid var(--border);background:#0000004d;border-radius:12px;align-items:center;gap:16px;padding:6px;display:flex}.qty-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:flex}.qty-btn:active{background:#ffffff1a}.cart-total{justify-content:space-between;margin:30px 0 20px;font-size:22px;font-weight:700;display:flex}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.success-screen{text-align:center;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:20px;display:flex}.success-icon{color:var(--primary);width:80px;height:80px;margin-bottom:24px;animation:.5s cubic-bezier(.175,.885,.32,1.275) fadeInScale}.ingredients-section{border-top:1px solid #ffffff0d;margin-top:20px;padding-top:15px}.ingredients-section h4{color:var(--text-dim);margin-bottom:12px;font-size:14px;font-weight:600}.ingredients-list{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.ingredient-chip{cursor:pointer;border:1px solid #0000;border-radius:100px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.ingredient-chip.selected{color:var(--primary);background:#4ade8026;border-color:#4ade804d}.ingredient-chip.unselected{color:var(--text-dim);opacity:.7;background:#ffffff0d;text-decoration:line-through}.ingredient-chip:active{transform:scale(.95)}.tracking-container{background:radial-gradient(circle at 50% 0%, #1a1a2e 0%, var(--bg) 100%);flex-direction:column;height:100vh;padding:24px;display:flex}.tracking-header{text-align:center;margin-top:40px;margin-bottom:40px}.tracking-header h2{margin-bottom:8px;font-size:24px}.tracking-header p{color:var(--text-dim)}.status-timeline{flex-direction:column;gap:20px;padding-left:20px;display:flex;position:relative}.status-timeline:before{content:"";background:var(--border);z-index:0;width:2px;position:absolute;top:10px;bottom:30px;left:31px}.status-step{z-index:1;opacity:.4;align-items:flex-start;gap:20px;transition:opacity .3s;display:flex;position:relative}.status-step.active,.status-step.completed{opacity:1}.step-icon{background:var(--surface);border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .3s;display:flex}.status-step.completed .step-icon{background:var(--primary);border-color:var(--primary)}.status-step.active .step-icon{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-glow)}.step-content h4{margin-bottom:4px;font-size:16px}.step-content p{color:var(--text-dim);font-size:13px}.back-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;position:absolute;top:1.5rem;left:1rem}.back-btn:hover{color:var(--text)}.btn-call-waiter{color:#fef08a;cursor:pointer;-webkit-backdrop-filter:blur(10px);-webkit-user-select:none;user-select:none;white-space:nowrap;background:linear-gradient(135deg,#eab3082e 0%,#f59e0b47 100%);border:1px solid #f59e0b80;border-radius:14px;align-items:center;gap:7px;padding:7px 14px;font-size:13px;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 2px 10px #eab30826}.btn-call-waiter:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#eab30859 0%,#f59e0b80 100%);border-color:#f59e0bd9;transform:translateY(-2px);box-shadow:0 4px 16px #eab30859}.btn-call-waiter:active:not(:disabled){transform:scale(.96)}.btn-call-waiter:disabled{color:#71717a;cursor:not-allowed;box-shadow:none;background:#ffffff0d;border-color:#ffffff1a;transform:none}.btn-call-waiter.cooldown{color:#eab308;background:#eab30814;border-color:#eab30840}.toast-notice{color:#f4f4f5;z-index:1000;-webkit-backdrop-filter:blur(16px);text-align:center;background:#18181bf2;border:1px solid #4ade8066;border-radius:16px;align-items:center;gap:10px;max-width:90vw;padding:12px 20px;font-size:13px;font-weight:600;animation:.3s cubic-bezier(.16,1,.3,1) slideDownFade;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0009,0 0 15px #4ade8033}@keyframes slideDownFade{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}
