*{box-sizing:border-box;margin:0;padding:0}body{color:#fff;-webkit-font-smoothing:antialiased;background:#0a0a0a;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif}body:before{content:"";z-index:-1;background:url(/bg.png) 50%/cover no-repeat;width:100%;height:100%;position:fixed;top:0;left:0}.app{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0ae0;max-width:440px;min-height:100vh;margin:0 auto;padding:24px 20px}header{text-align:center;padding:16px 0 8px}.logo{width:160px;height:auto}.card-container{justify-content:center;padding:20px 0;display:flex}.card{perspective:1200px;cursor:pointer;width:100%;max-width:300px;height:160px}.card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.card-inner.flipped{transform:rotateY(180deg)}.card.flipping .card-inner{animation:.4s ease-out quickFlip}.card.final-spin .card-inner{animation:.15s linear infinite spinFast}.card-front,.card-back{backface-visibility:hidden;border:1px solid #ffffff14;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute}.card-front{-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);background:#ffffff0a}.card-prompt{color:#fff6;letter-spacing:.5px;font-size:1rem;font-weight:500}.card-back{-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);background:#ffffff0f;padding:24px;transform:rotateY(180deg)}.card-cuisine{text-transform:uppercase;letter-spacing:2px;color:#fff6;margin-bottom:8px;font-size:.7rem}.card-food{text-align:center;margin-bottom:12px;font-size:1.8rem;font-weight:700;line-height:1.2}.card-meal{color:#f37021;letter-spacing:1px;text-transform:uppercase;font-size:.75rem;font-weight:600}@keyframes quickFlip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(180deg)}}@keyframes spinFast{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.final-btn-wrap{text-align:center;margin-bottom:24px}.final-btn{color:#fff;cursor:pointer;letter-spacing:.5px;background:linear-gradient(135deg,#f37021,#e85d10);border:none;border-radius:40px;padding:14px 40px;font-size:.9rem;font-weight:700;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 24px #f370214d}.final-btn:active{transform:scale(.96)}.final-hint{color:#ffffff4d;margin-top:8px;font-size:.7rem}.countdown{background:#ffffff0d;border-radius:20px;justify-content:center;align-items:center;max-width:300px;height:36px;margin:0 auto 24px;display:flex;position:relative;overflow:hidden}.countdown-bar{opacity:.3;background:linear-gradient(90deg,#f37021,#e85d10);border-radius:20px;height:100%;transition:width 1s linear;position:absolute;top:0;left:0}.countdown-text{letter-spacing:1px;font-size:.8rem;font-weight:700;position:relative}.meals{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:24px;display:flex}.meal-btn{color:#ffffff80;cursor:pointer;letter-spacing:.3px;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:24px;padding:8px 18px;font-size:.75rem;font-weight:600;transition:all .2s}.meal-btn.active{color:#f37021;background:#f3702126;border-color:#f370214d}.meal-btn.halal.active{color:#10b981;background:#10b98126;border-color:#10b9814d}.nearby{margin-top:8px}.nearby-title{text-transform:uppercase;letter-spacing:2px;color:#ffffff4d;margin-bottom:12px;font-size:.75rem;font-weight:600}.resto{cursor:pointer;background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;align-items:center;gap:12px;margin-bottom:8px;padding:14px 16px;transition:all .2s;display:flex}.resto:hover{background:#ffffff0f;border-color:#f3702133;transform:translate(4px)}.resto-rank{color:#f37021;min-width:24px;font-size:.7rem;font-weight:700}.resto-info{flex:1}.resto-name{font-size:.85rem;font-weight:600;display:block}.resto-dist{color:#ffffff59;font-size:.7rem}.resto-nav{color:#fff3;width:18px;height:18px}.nearby-empty,.nearby-loading{text-align:center;color:#ffffff4d;margin-top:16px;font-size:.8rem}.loc-btn{color:#ffffff59;cursor:pointer;border:1px dashed #ffffff1a;border-radius:16px;justify-content:center;align-items:center;gap:8px;margin-top:20px;padding:12px;font-size:.8rem;transition:all .2s;display:flex}.loc-btn:hover{color:#f37021;border-color:#f370214d}.loc-icon{width:16px;height:16px}.actions{gap:10px;margin-top:20px;display:flex}.action-btn{color:#fff9;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.action-btn:hover{color:#fff;background:#ffffff14}.action-btn svg{width:16px;height:16px}.tag-btn:hover{color:#10b981;border-color:#10b9814d}.buddy-btn:hover{color:#f37021;border-color:#f370214d}.panel{background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;margin-top:16px;padding:16px}.panel h3{color:#ffffffb3;margin-bottom:12px;font-size:.85rem}.input{color:#fff;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;outline:none;width:100%;margin-bottom:8px;padding:10px 14px;font-size:.8rem}.input:focus{border-color:#f3702166}.panel-btns{gap:8px;display:flex}.panel-btn{color:#f37021;cursor:pointer;background:#f3702126;border:1px solid #f370214d;border-radius:10px;padding:8px 16px;font-size:.75rem;font-weight:600}.error{color:#ef4444;margin-top:6px;font-size:.7rem}.msg{color:#10b981;margin-top:6px;font-size:.7rem}.buddy-item{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:8px 0;font-size:.8rem;display:flex}.remove-btn{color:#ef4444;cursor:pointer;background:0 0;border:none;font-size:1.2rem}.add-buddy-form{gap:8px;margin-top:10px;display:flex}.add-buddy-form .input{flex:1;margin-bottom:0}.tag-toast{color:#fff;z-index:99;background:#10b981;border-radius:20px;padding:10px 20px;font-size:.8rem;font-weight:600;animation:.3s fadeIn;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.ad-container{border-radius:12px;min-height:50px;margin:16px 0;overflow:hidden}.card:active{transform:scale(.96)}
