@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap";:root{--bg-page-outer: #0a0806;--bg-app-gradient: linear-gradient(180deg, #16110e 0%, #0d0a08 100%);--bg-card-glass: rgba(30, 24, 20, .55);--border-gold-glow: rgba(223, 183, 140, .22);--border-gold-soft: rgba(223, 183, 140, .12);--color-gold-light: #f5dfca;--color-gold: #dfb78c;--color-gold-dark: #c59f75;--color-gold-deep: #9d7348;--color-text-light: #ffffff;--color-text-gold: #e8d0b5;--color-text-muted: #a39082;--color-text-dark: #f0e6df;--color-green: #5c9e6e;--color-red: #cc5c5c;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif: "Playfair Display", Georgia, serif;--shadow-sm: 0 4px 10px rgba(0, 0, 0, .3);--shadow-md: 0 10px 30px rgba(0, 0, 0, .5);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .6);--shadow-gold: 0 0 15px rgba(223, 183, 140, .25);--radius-sm: 14px;--radius-md: 22px;--radius-lg: 30px}.app.light-theme{--bg-app-gradient: linear-gradient(180deg, #faf6f0 0%, #f4eae0 100%);--bg-card-glass: rgba(255, 255, 255, .82);--border-gold-glow: rgba(168, 129, 86, .28);--border-gold-soft: rgba(168, 129, 86, .16);--color-text-light: #1c140e;--color-text-gold: #835b2c;--color-text-muted: #847265;--color-text-dark: #120c08;--bg-page-outer: #f6efe6;color:#1c140e}.app.light-theme:before{opacity:.04}.app.light-theme .brand-logo,.app.light-theme .auth-logo{filter:none!important}.app.light-theme .nav{background-color:#faf6f0;border:1px solid rgba(168,129,86,.25);box-shadow:0 10px 30px #a8815626}.app.light-theme .nav button{color:#847265}.app.light-theme .nav button.active{color:#835b2c}.app.light-theme .nav .nav-lotus-btn .lotus-circle{border:4px solid #faf6f0}.app.light-theme h1,.app.light-theme h2,.app.light-theme h3,.app.light-theme h4,.app.light-theme h5,.app.light-theme h6,.app.light-theme b,.app.light-theme strong,.app.light-theme .menu-item-row span,.app.light-theme .history-list .row div b,.app.light-theme .admin-list-item b,.app.light-theme .customer-pts strong{color:#1c140e!important}.app.light-theme .dashboard-card h3,.app.light-theme .points-display .pts,.app.light-theme .progress-text,.app.light-theme .gold-text{color:#835b2c!important}.app.light-theme input,.app.light-theme select,.app.light-theme textarea{background-color:#fffffff2!important;color:#1c140e!important;border:1px solid rgba(168,129,86,.3)!important}.app.light-theme .modal-content{background-color:#faf6f0;border:1px solid rgba(168,129,86,.3);color:#1c140e}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);color:var(--color-text-light);background-color:var(--bg-page-outer);min-height:100vh;min-height:100dvh;display:flex;justify-content:center;align-items:center}.app{width:100%;max-width:430px;height:100vh;height:100dvh;background:var(--bg-app-gradient);position:relative;display:flex;flex-direction:column;box-shadow:0 30px 80px #000c;overflow:hidden;border:1px solid rgba(223,183,140,.15)}.app:before{content:"";position:absolute;top:8%;right:-90px;width:340px;height:340px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23dfb78c' stroke-width='0.4' stroke-opacity='0.08'%3E%3Cpath d='M50 15 C50 35, 30 45, 30 65 C30 80, 50 85, 50 85 C50 85, 70 80, 70 65 C70 45, 50 35, 50 15 Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;pointer-events:none;z-index:0}@media(min-width:700px){body{padding:20px 0}.app{border-radius:var(--radius-lg);height:860px;border:10px solid #1c1512}}main{padding:0 22px 110px;flex:1;overflow-y:auto;position:relative;z-index:1;-webkit-overflow-scrolling:touch}main::-webkit-scrollbar{width:4px}main::-webkit-scrollbar-thumb{background:#dfb78c33;border-radius:2px}.top{height:84px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;background-color:transparent;position:relative;z-index:10}.brand-logo{height:48px;width:auto;object-fit:contain}.brand-logo,.auth-logo{filter:invert(.9) hue-rotate(180deg) brightness(1.25) contrast(1.1) drop-shadow(0 0 10px rgba(223,183,140,.45))}.badge-admin{background:linear-gradient(135deg,#aa8156,#875f35);color:#fff;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:800;text-transform:uppercase;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-sm)}.iconbtn{border:1px solid rgba(223,183,140,.2);background-color:var(--bg-card-glass);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:50%;width:40px;height:40px;color:var(--color-gold);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .25s cubic-bezier(.4,0,.2,1)}.iconbtn:hover{background-color:var(--color-gold);color:#120e0b;transform:translateY(-2px);box-shadow:var(--shadow-gold)}.primary{width:100%;border:0;border-radius:var(--radius-sm);padding:15px 24px;background:linear-gradient(135deg,#dfb78c,#aa8156,#875f35);color:#120e0b;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:1.2px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #dfb78c33;border:1px solid rgba(255,255,255,.2)}.primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #dfb78c59}.primary:disabled{background:#3e3630;color:#7a6e64;box-shadow:none;cursor:not-allowed;border:none}.title h1{font-family:var(--font-serif);font-size:26px;font-weight:700;color:#fff}.title p{font-size:13px;color:var(--color-text-muted);margin-top:4px}.sectiontitle h2{font-family:var(--font-serif);font-size:18px;font-weight:600;color:var(--color-gold)}.hero-container{text-align:center;padding:10px 0 20px}.hero-container p{font-size:12px;color:var(--color-gold);font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.hero-container h1{font-family:var(--font-serif);font-size:26px;color:#fff;margin-top:5px}.hero-container h1 span{color:var(--color-gold);font-style:italic}.dashboard-card{background:linear-gradient(135deg,#cc9e6c,#aa8156,#6b4927);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-md);padding:24px;color:#fff;position:relative;overflow:hidden;box-shadow:var(--shadow-lg),0 5px 25px #aa815659;margin-bottom:24px}.dashboard-card:after{content:"";position:absolute;bottom:-20px;right:-20px;width:150px;height:150px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23ffffff' stroke-width='0.5' stroke-opacity='0.18'%3E%3Cpath d='M50 15 C50 35, 30 45, 30 65 C30 80, 50 85, 50 85 C50 85, 70 80, 70 65 C70 45, 50 35, 50 15 Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;pointer-events:none}.card-title{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#ffffffd9;display:block}.points-value{margin:10px 0;display:flex;align-items:baseline;gap:8px}.points-value strong{font-family:var(--font-serif);font-size:40px;font-weight:700;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.15)}.points-value span{font-size:20px;color:#fff}.tier-badge{display:inline-block;background-color:#ffffff2e;border:1px solid rgba(255,255,255,.35);color:#fff;padding:4px 12px;border-radius:12px;font-size:10px;font-weight:800;margin-bottom:20px}.progress-bar{height:5px;background-color:#ffffff26;border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-bar i{display:block;height:100%;background:#fff;border-radius:3px}.progress-text{font-size:11px;color:#fffc}.points-summary-box,.reward-card,.appointment-card,.menu-list,.admin-card,.customer-found-card{background-color:var(--bg-card-glass);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--border-gold-glow);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.points-summary-box{padding:20px;margin-bottom:22px}.points-summary-box h3{font-family:var(--font-serif);font-size:15px;color:var(--color-gold);border-bottom:1px solid var(--border-gold-soft);padding-bottom:10px;margin-bottom:12px}.summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:13px;border-bottom:1px solid rgba(223,183,140,.05)}.summary-row:last-child{border-bottom:none}.summary-row span{color:var(--color-text-muted)}.summary-row b{color:var(--color-text-light)}.points-ring{width:170px;height:170px;border-radius:50%;border:6px solid var(--border-gold-soft);border-top-color:var(--color-gold);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:10px auto 20px;background-color:var(--bg-card-glass);box-shadow:var(--shadow-md),var(--shadow-gold);animation:pulseGlow 4s infinite alternate}.points-ring span{font-size:10px;text-transform:uppercase;color:var(--color-text-muted)}.points-ring strong{font-family:var(--font-serif);font-size:36px;font-weight:700;color:#fff}@keyframes pulseGlow{0%{box-shadow:var(--shadow-md),0 0 5px #dfb78c1a}to{box-shadow:var(--shadow-md),0 0 20px #dfb78c59}}.quick-action-circle{width:50px;height:50px;border-radius:50%;background-color:var(--bg-card-glass);border:1px solid var(--border-gold-glow);box-shadow:var(--shadow-sm);display:grid;place-items:center;color:var(--color-gold);margin:0 auto;transition:all .25s cubic-bezier(.4,0,.2,1)}.quick-action-item:hover .quick-action-circle{background:linear-gradient(135deg,#dfb78c,#875f35);color:#120e0b;transform:translateY(-4px);box-shadow:var(--shadow-gold);border-color:transparent}.tab-pills{display:flex;background-color:var(--bg-card-glass);padding:5px;border-radius:22px;margin-bottom:22px;border:1px solid var(--border-gold-soft)}.tab-pill{flex:1;border:0;background:none;padding:10px;border-radius:18px;font-size:12px;font-weight:700;color:var(--color-text-muted);cursor:pointer;transition:all .2s ease}.tab-pill.active{background-color:var(--color-gold);color:#120e0b;box-shadow:var(--shadow-sm)}.admin-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 12px;margin-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab-pill{flex:0 0 auto;white-space:nowrap;border:1px solid var(--border-gold-soft);background-color:var(--bg-card-glass);color:var(--color-text-muted);padding:9px 16px;border-radius:20px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.admin-tab-pill.active{background-color:var(--color-gold);border-color:var(--color-gold);color:#120e0b;box-shadow:var(--shadow-sm)}.reward-card,.appointment-card{padding:16px;margin-bottom:14px;display:flex;align-items:center;gap:14px;transition:transform .2s ease,border-color .2s ease}.reward-card:hover,.appointment-card:hover{transform:translateY(-2px);border-color:var(--color-gold)}.reward-card img{border:1px solid var(--border-gold-soft)}.reward-card .reward-details h4,.appointment-card .appt-info h4{font-size:13px;font-weight:700;color:#fff}.reward-card .reward-details p{color:var(--color-gold)}.reward-card .reward-details small,.appointment-card .appt-info p{color:var(--color-text-muted)}.reward-card button{border:0;background:linear-gradient(135deg,#dfb78c,#aa8156);color:#120e0b;padding:8px 16px;border-radius:12px;font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer;transition:all .2s;box-shadow:0 3px 8px #dfb78c33}.reward-card button:hover{transform:scale(1.05);box-shadow:0 4px 15px #dfb78c59}.reward-card button:disabled{background:#3e3630;color:#7a6e64;box-shadow:none;cursor:not-allowed}.appointment-card .date-box{background:var(--bg-card-glass);border:1px solid var(--border-gold-glow);width:54px;height:58px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-gold)}.appointment-card .date-box b{font-size:18px;font-weight:700}.appointment-card .date-box small{font-size:9px;font-weight:800;text-transform:uppercase}.status-badge.pending{background-color:#d9770626;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.status-badge.approved{background-color:#10b98126;color:#34d399;border:1px solid rgba(52,211,153,.3)}.status-badge.cancelled{background-color:#ef444426;color:#f87171;border:1px solid rgba(248,113,113,.3)}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.time-pill{background-color:var(--bg-card-glass);border:1px solid var(--border-gold-soft);color:var(--color-text-gold);border-radius:10px;padding:10px 6px;text-align:center;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.time-pill.selected{background:var(--color-gold);color:#120e0b;border-color:var(--color-gold);box-shadow:var(--shadow-gold)}.profile-card{background-color:var(--bg-card-glass);border:1px solid var(--border-gold-glow);border-radius:var(--radius-lg);padding:24px;text-align:center;box-shadow:var(--shadow-md);margin-bottom:20px;display:flex;flex-direction:column;align-items:center}.profile-card .avatar-wrapper{background:linear-gradient(135deg,#dfb78c,#aa8156);box-shadow:var(--shadow-gold);padding:3px;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;overflow:hidden;margin-bottom:12px}.avatar.big{width:100%;height:100%;border-radius:50%;background-color:#1c1512;color:var(--color-gold);display:grid;place-items:center;font-size:24px;font-family:var(--font-serif);font-weight:700}.menu-list{background-color:var(--bg-card-glass);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--border-gold-glow);border-radius:var(--radius-md);overflow:hidden;margin-bottom:22px;box-shadow:var(--shadow-md)}.menu-item-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(223,183,140,.08);background-color:transparent;cursor:pointer;transition:background .25s ease;width:100%}.menu-item-row:hover{background-color:#dfb78c0f}.menu-item-row:last-child{border-bottom:none}.menu-item-row .label-group{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;color:var(--color-text-gold)}.menu-item-row .label-group svg{color:var(--color-gold)}.menu-item-row .chevron{color:var(--color-text-muted)}.history-list .row{background-color:var(--bg-card-glass);border:1px solid var(--border-gold-soft);box-shadow:var(--shadow-sm);border-radius:var(--radius-md)}.history-list .row .avatar{background-color:var(--bg-card-glass);color:var(--color-gold)}.history-list .row div b{color:#fff}.nav{position:absolute;bottom:20px;left:50%;transform:translate(-50%);width:90%;max-width:390px;height:68px;background-color:#0c0907;border-radius:34px;border:1px solid var(--border-gold-glow);display:grid;grid-template-columns:repeat(5,1fr);z-index:90;box-shadow:0 10px 40px #000c;padding:0 6px}.nav button{border:0;background:none;color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:all .25s ease;height:100%;outline:none}.nav button:hover{color:var(--color-gold-light)}.nav button.active{color:var(--color-gold)}.nav button small{font-size:9px;font-weight:700;letter-spacing:.2px;margin-top:2px}.nav .nav-lotus-btn{position:relative;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:none}.nav .nav-lotus-btn .lotus-circle{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#dfb78c,#aa8156,#875f35);display:grid;place-items:center;color:#120e0b;box-shadow:0 6px 20px #dfb78c66;transform:translateY(-12px);transition:all .3s cubic-bezier(.175,.885,.32,1.275);border:4px solid #0c0907}.nav .nav-lotus-btn.active .lotus-circle{background:linear-gradient(135deg,#aa8156,#2b1b12);transform:translateY(-16px) scale(1.05)}.modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0a0806d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:250;display:flex;justify-content:center;align-items:center;padding:20px}.modal-content{background-color:#15100d;border-radius:var(--radius-md);padding:26px;width:100%;max-width:360px;max-height:85vh;max-height:85dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow-lg),var(--shadow-gold);position:relative;border:1px solid var(--border-gold-glow);animation:modalFadeIn .25s cubic-bezier(.4,0,.2,1)}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(15px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header h3{color:var(--color-gold)}.qr-img{background-color:#fff;border:3px solid var(--color-gold)}.admin-card{padding:20px;margin-bottom:22px}.admin-card h3{color:var(--color-gold)}.customer-found-card{background-color:#0003;border:1px solid var(--border-gold-soft)}.customer-info-row{border-bottom:1px solid var(--border-gold-soft)}.customer-pts strong{color:var(--color-gold)}input,select{width:100%;height:48px;padding:0 16px;background-color:#0006;border:1px solid var(--border-gold-soft);color:#fff;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:14px;outline:none;box-shadow:var(--shadow-sm);transition:all .25s ease}input:focus,select:focus{border-color:var(--color-gold);box-shadow:0 0 12px #dfb78c4d;background-color:#0000008c}.danger-btn{background:linear-gradient(135deg,#a34747,#803333)}.splash-screen-container img{filter:drop-shadow(0 0 15px rgba(223,183,140,.5))}.splash-screen-container p{color:var(--color-text-gold)!important}.auth-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;padding:24px}.auth-card{width:100%;max-width:360px;background-color:var(--bg-card-glass);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:1px solid var(--border-gold-glow);border-radius:var(--radius-lg);padding:30px 24px;box-shadow:var(--shadow-lg),var(--shadow-gold);display:flex;flex-direction:column;align-items:center;text-align:center}.auth-header{margin-bottom:24px;width:100%}.auth-header p{font-size:13px;color:var(--color-text-gold);margin-top:8px;font-weight:500}.auth-logo{border-radius:20px;border:1px solid var(--border-gold-soft);box-shadow:0 4px 15px #0000004d;display:block;margin:0 auto}.auth-form{width:100%;display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.form-group{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.form-group label{font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.auth-toggle{margin-top:15px;font-size:12px;color:var(--color-text-muted)}.auth-toggle button{background:none;border:none;color:var(--color-gold);font-weight:700;cursor:pointer;text-decoration:underline;padding:0 4px}.demo-credentials{margin-top:25px;width:100%;padding:16px;background-color:#0000004d;border:1px dashed var(--border-gold-glow);border-radius:var(--radius-sm)}.demo-credentials p{font-size:11px;font-weight:700;color:var(--color-gold);text-transform:uppercase;margin-bottom:10px;letter-spacing:.5px}.demo-credentials small{font-size:10px;color:var(--color-text-muted);display:block;margin-bottom:12px}.demo-btns{display:flex;flex-direction:column;gap:8px}.demo-btns button{width:100%;padding:11px;border-radius:10px;background-color:var(--bg-card-glass);border:1px solid var(--border-gold-soft);color:var(--color-text-gold);font-size:11px;font-weight:700;cursor:pointer;transition:all .2s}.demo-btns button:hover{background-color:var(--color-gold);color:#120e0b;border-color:var(--color-gold)}.install{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-radius:16px;margin-bottom:20px;background:linear-gradient(135deg,#dfb78c26,#dfb78c0d);border:1px solid var(--border-gold-soft);gap:12px;box-shadow:var(--shadow-sm)}.install b{font-size:13px;color:var(--color-gold);display:block}.install small{font-size:11px;color:var(--color-text-muted);display:block;margin-top:2px}.install button{border:0!important;background:linear-gradient(135deg,#dfb78c,#aa8156)!important;color:#120e0b!important;padding:8px 16px;border-radius:10px;font-size:11px;font-weight:800;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .2s}.install button:hover{transform:scale(1.05)}.menu-drawer-content{background-color:#120e0c!important;border-right:1px solid var(--border-gold-glow)!important}.menu-row-btn{display:flex;align-items:center;gap:14px;background:none!important;border:0!important;width:100%;padding:12px 16px;border-radius:12px;color:var(--color-text-gold)!important;font-size:13px;font-weight:700;text-align:left;cursor:pointer;transition:all .2s;outline:none;box-shadow:none!important}.menu-row-btn:hover{background-color:#dfb78c1a!important;color:#fff!important;transform:translate(4px)}.menu-row-btn svg{color:var(--color-gold)}.error-alert{background-color:#ef444426;border:1px solid rgba(248,113,113,.3);color:#f87171}.success-alert{background-color:#10b98126;border:1px solid rgba(52,211,153,.3);color:#34d399}
