.app-root{min-height:100vh;min-width:100vw;display:flex;flex-direction:column;background:linear-gradient(135deg,#fbeee6,#f5e1d3);font-family:Inter,sans-serif}.app-card{flex:1 1 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;width:100%;min-width:320px;max-width:540px;margin:auto;background:#fff;border-radius:18px;box-shadow:0 4px 24px #7955481f;padding:0;min-height:600px;max-height:100vh;overflow:hidden;position:relative;transition:box-shadow .2s,border-radius .3s}.app-header{width:100%;text-align:center;font-family:Pacifico,cursive,Inter,sans-serif;font-size:2.3rem;color:#795548;letter-spacing:1.5px;font-weight:700;margin:0 0 18px;padding:28px 0 10px;background:linear-gradient(90deg,#fbeee6 60%,#ffe0b2);border-top-left-radius:18px;border-top-right-radius:18px;box-shadow:0 2px 8px #e0cfc2;position:relative;z-index:2}.app-header-logo{max-width:48px;max-height:48px;object-fit:contain;border-radius:8px;background:#fff;box-shadow:0 1px 4px #e0cfc2;margin-right:4px}.app-content{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:0 28px 24px}.app-footer{flex-shrink:0;width:100%;background:#fbeee6;color:#795548;text-align:center;font-weight:600;font-size:16px;padding:12px 0;box-shadow:0 -2px 8px #e0cfc2;z-index:10;display:flex;justify-content:space-around;align-items:center;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom-left-radius:18px;border-bottom-right-radius:18px;transition:box-shadow .2s,border-radius .3s;max-width:100%;margin:0;position:relative}.main-inner-card,.main-card,.main-info-card,.main-coffee-card,.admin-inner-card{max-width:500px;width:100%;min-width:0;margin:0 auto;background:#fff;border-radius:18px;padding:32px 24px 24px;box-shadow:0 4px 24px #7955481f;position:relative;display:flex;flex-direction:column;box-sizing:border-box;overflow-x:visible;overflow:hidden}.top-stats-card,.promotion-card{width:100%;max-width:100%;box-sizing:border-box;margin:0;overflow:hidden}.top-stats-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;background:#fbeee6;border-radius:12px;box-shadow:0 2px 8px #e0cfc2;padding:16px 18px;gap:18px;width:100%;max-width:100%;margin:0;border:none;min-height:70px;position:relative;z-index:1}.top-stats-card>div{min-width:0;flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;word-break:break-word;overflow-wrap:break-word}.top-stats-card span{word-break:break-word;overflow-wrap:break-word;text-align:center;display:block}.promotion-card{width:calc(100% - 2px);max-width:100%;box-sizing:border-box;margin:0;overflow:hidden;background:#e0f2f1;color:#00695c;border-radius:10px;padding:10px 0;font-weight:600;font-size:16px;text-align:center;box-shadow:0 2px 8px #b2dfdb;display:block}.top-promotion-card{width:100%;max-width:100%;box-sizing:border-box;margin:0;overflow:hidden;background:#e0f2f1;color:#00695c;border-radius:12px;padding:16px 18px;font-weight:600;font-size:16px;text-align:center;box-shadow:0 2px 8px #b2dfdb;display:flex;align-items:center;justify-content:center}.main-inner-card.scrollable{overflow-y:auto}.card-title{font-size:1.25rem;font-weight:700;color:#795548;margin-bottom:14px;margin-top:0;letter-spacing:.5px;text-align:left;padding-left:2px;font-family:Inter,sans-serif}.message-wrap{word-break:break-word;white-space:pre-line;overflow-wrap:anywhere;max-width:100%;font-size:15px;line-height:1.5;text-align:center;color:#388e3c;font-weight:500}.admin-stats-grid{display:grid;grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(2,auto)!important;gap:18px;width:100%;box-sizing:border-box}@media (max-width: 600px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(2,auto)!important;gap:12px;padding:18px 6px}.admin-stats-grid>div{min-width:0;max-width:100%;box-sizing:border-box}}@media (min-width: 601px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(2,auto)!important}}@media (max-width: 600px){.app-card{min-width:0;max-width:100vw;border-radius:0;min-height:100vh;box-shadow:none}.app-footer{border-top-left-radius:14px;border-top-right-radius:14px;height:60px;width:100%;left:unset;bottom:unset;max-width:100vw}.app-content{padding:0 6px 12px}.app-header{font-size:1.5rem;padding:18px 0 8px;border-top-left-radius:0;border-top-right-radius:0}.main-card,.main-info-card,.main-coffee-card,.main-inner-card,.admin-inner-card{max-width:100vw;border-radius:8px;min-height:80px;margin:8px 0;padding:8px 2px;box-shadow:none;overflow-y:auto;overflow-x:visible}.top-stats-card{flex-direction:column;gap:8px;padding:8px 4px;min-height:44px}.top-stats-card>div{min-width:0;width:100%;align-items:center;justify-content:center;padding:0}.top-stats-card span{font-size:15px;padding:0 2px;word-break:break-word;overflow-wrap:break-word;text-align:center;display:block}.top-promotion-card{padding:8px 4px;border-radius:8px;font-size:15px}.message-wrap{font-size:14px;padding:0 4px}.admin-stats-grid{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(2,auto)!important;gap:12px!important;padding:18px 6px!important;max-height:none!important;height:auto!important;overflow:visible!important}.top-stats-card{min-width:0;word-break:break-word;font-size:1rem;padding:12px 8px}.top-stats-card .stat-label,.top-stats-card .stat-value{font-size:.95em;word-break:break-word;white-space:normal}}.admin-card{background:#fff;border-radius:18px;box-shadow:0 4px 24px #7955481f;max-width:500px;width:100%;margin:32px auto;padding:32px 16px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center}.admin-form{width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;gap:18px}.admin-input{width:100%;box-sizing:border-box;padding:12px 14px;border-radius:10px;border:1.5px solid #d7ccc8;font-size:16px;outline:none;background:#fbeee6;font-weight:500;color:#795548;box-shadow:0 1px 4px #fbeee6;margin-bottom:8px}.admin-btn{background:linear-gradient(90deg,#a1887f,#795548);color:#fff;border:none;border-radius:10px;padding:12px 0;font-size:17px;font-weight:700;width:100%;cursor:pointer;box-shadow:0 2px 8px #d7ccc8;transition:background .2s;letter-spacing:.5px;margin-top:8px}.admin-btn:disabled{opacity:.7;cursor:not-allowed}.admin-section-title{color:#795548;font-size:22px;font-weight:700;margin-bottom:18px;text-align:center;width:100%}.admin-link-btn{display:flex;align-items:center;width:100%;background:#fbeee6;color:#795548;border:1.5px solid #d7ccc8;border-radius:10px;font-weight:600;font-size:16px;padding:14px 18px;cursor:pointer;box-shadow:0 2px 8px #f5e1d3;transition:background .2s,border .2s;text-align:left;gap:12px;margin-bottom:0}.admin-stats-row{display:flex;gap:16px;width:100%;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap}.admin-stat-card{flex:1 1 110px;min-width:110px;background:linear-gradient(135deg,#fff7f0,#fbeee6);border-radius:16px;box-shadow:0 2px 12px #7955481a;display:flex;flex-direction:column;align-items:center;padding:18px 8px 14px;transition:box-shadow .2s}.admin-stat-card .icon{font-size:2rem;margin-bottom:4px}.admin-stat-card .number{font-size:1.7rem;font-weight:700;color:#795548;margin-bottom:2px}.admin-stat-card .label{font-size:.95rem;color:#a1887f;font-weight:500;text-align:center}.admin-stat-card.users .icon{color:#388e3c}.admin-stat-card.redemptions .icon{color:#1976d2}.admin-stat-card.pending-redemptions .icon{color:#ff9800}.admin-stat-card.pending-credits .icon{color:#d32f2f}@media (max-width: 600px){.admin-stats-row{flex-direction:column;gap:12px}.admin-stat-card{min-width:0;width:100%}}.profile-form{width:100%;max-width:400px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch;gap:16px;background:none;box-shadow:none}.profile-title{font-size:1.5rem;font-weight:700;color:#795548;text-align:center;margin-bottom:8px;font-family:Inter,sans-serif}.profile-input{width:100%;padding:12px 16px;border-radius:10px;border:1.5px solid #d7ccc8;font-size:17px;outline:none;background:#fbeee6;margin-bottom:8px;box-sizing:border-box;font-family:Inter,sans-serif}.profile-btn{background:linear-gradient(90deg,#a1887f,#795548);color:#fff;border:none;border-radius:10px;padding:12px 0;font-size:17px;font-weight:700;width:100%;margin:0 0 4px;cursor:pointer;box-shadow:0 2px 8px #d7ccc8;transition:background .2s}.profile-btn:disabled{opacity:.7;cursor:not-allowed}
