:root{--purple:#5b2bbf;--purple-2:#9b7ef5;--purple-deep:#32156f;--lavender:#eee7ff;--cyan:#2e90fa;--ink:#101828;--muted:#667085;--success:#12b76a;--bg-gradient:linear-gradient(180deg,#eee7ff 0%,#f9fafb 30%,#eaf4ff 70%,#ffffff 100%)}body{background:var(--bg-gradient);background-attachment:fixed}nav{border-bottom-color:#e4e7ec}.btn{background:linear-gradient(135deg,#5b2bbf,#7544dc);box-shadow:0 8px 24px rgba(105,65,198,0.18)}.btn:hover{background:linear-gradient(135deg,#7544dc,#9a73ef)}.panel,.tp-card{border-color:#e4e7ec;box-shadow:0 4px 12px rgba(16,24,40,0.04),0 1px 2px rgba(16,24,40,0.02)}.panel:hover,.tp-card:hover{box-shadow:0 12px 32px rgba(16,24,40,0.08),0 2px 4px rgba(16,24,40,0.04)}.full{width:100%;text-align:center}.auth-shell{min-height:auto;display:grid;grid-template-columns:1fr 480px;gap:60px;align-items:center}.auth-brand h1{font-size:clamp(36px,5.5vw,68px);line-height:1.05;letter-spacing:-3px;margin:16px 0}.auth-brand h1 em{font-style:normal;background:linear-gradient(135deg,var(--purple),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.auth-brand p,.auth-tp-card>p{color:var(--muted);line-height:1.7;font-size:16px}.auth-tp-card{margin:0;padding:36px;background:#fff;border-radius:var(--radius-2xl,32px);border:1px solid #e4e7ec;box-shadow:0 20px 48px rgba(16,24,40,0.08)}.auth-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,var(--purple),var(--cyan));color:#fff;font-weight:800;font-size:21px;margin-bottom:var(--space-md)}.auth-switch{text-align:center;margin-top:20px;font-size:14px;color:var(--muted)}.auth-switch a{color:var(--purple);font-weight:700;text-decoration:none}input:focus,textarea:focus,select:focus{border-color:var(--purple-2);box-shadow:0 0 0 4px var(--lavender)}.booking-map{border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 8px 32px rgba(105,65,198,0.12);border:1px solid #e4e7ec}.quote-tp-card{background:var(--lavender);border:1px solid #e8dfff}.mobile-tabs{display:none}@media (max-width:860px){main{padding:var(--space-lg) 16px 100px}.auth-shell{display:block;min-height:auto}.auth-brand{display:none}.auth-tp-card{padding:28px;margin:8px auto;border-radius:24px}.mobile-tabs{display:flex;position:fixed;z-index:80;left:8px;right:8px;bottom:8px;height:64px;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #e4e7ec;border-radius:20px;box-shadow:0 8px 32px rgba(16,24,40,0.12);align-items:center;justify-content:space-around;padding:4px 8px}.mobile-tabs a{color:var(--muted);font-size:10px;text-decoration:none;text-align:center;font-weight:700;min-width:44px}.mobile-tabs a span{display:block;color:var(--purple);font-size:20px;margin-bottom:2px}.mobile-tabs .tab-main{margin-top:-28px}.mobile-tabs .tab-main span{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--purple),var(--purple-2));color:#fff;box-shadow:0 10px 28px rgba(105,65,198,0.35)}footer{display:none}}.tp-food-public-main{background:radial-gradient(circle at 8% 0%,rgba(117,68,220,.13),transparent 28%),radial-gradient(circle at 92% 8%,rgba(91,43,191,.10),transparent 24%),#eee7ff!important}.tp-food-subnav{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(91,43,191,.12);box-shadow:0 3px 18px rgba(50,21,111,.07)}.tp-food-hero{background:radial-gradient(circle at 85% 20%,rgba(154,115,239,.30),transparent 30%),linear-gradient(118deg,#32156f 0%,#4b1fa5 48%,#7544dc 100%);box-shadow:0 12px 32px rgba(50,21,111,.18)}.tp-food-search{box-shadow:0 8px 28px rgba(50,21,111,.14)}.tp-food-search button{background:linear-gradient(135deg,#5b2bbf,#7544dc);box-shadow:0 6px 16px rgba(91,43,191,.25)}.tp-food-filterbar,.tp-food-benefits{border:1px solid rgba(91,43,191,.10);box-shadow:0 8px 24px rgba(50,21,111,.07)}.tp-food-dish-card,.tp-food-restaurant-card,.tp-food-empty{border:1px solid rgba(91,43,191,.08);box-shadow:0 8px 24px rgba(50,21,111,.07)}.tp-food-dish-card:hover,.tp-food-restaurant-card:hover{border-color:rgba(91,43,191,.20);box-shadow:0 12px 30px rgba(50,21,111,.12);transform:translateY(-2px)}.tp-food-location span,.tp-food-section-head>div>span,.tp-food-dish-copy span,.tp-food-meta span:first-child{color:#5b2bbf}.tp-food-logo-placeholder{background:linear-gradient(135deg,#e5d9ff,#f7f4ff);border:1px solid rgba(91,43,191,.10)}