:root{--bg-color: #09090b;--card-bg: rgba(255, 255, 255, .03);--card-border: rgba(255, 255, 255, .08);--primary: #2565FF;--primary-hover: #1b4ecc;--text-main: #ffffff;--text-muted: #a1a1aa;--error: #ef4444}@font-face{font-family:Google Sans Flex;src:url(/Google_Sans_Flex/GoogleSansFlex-VariableFont_GRAD,ROND,opsz,slnt,wdth,wght.ttf) format("truetype");font-weight:100 1000;font-display:swap}*{box-sizing:border-box;margin:0;padding:0;font-family:Google Sans Flex,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background-color:var(--bg-color);color:var(--text-main);display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px}.container{width:100%;max-width:400px}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:24px;padding:32px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 25px 50px -12px #00000080;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.header{text-align:center;margin-bottom:32px}.title{font-size:28px;font-weight:700;margin-bottom:8px;letter-spacing:-.5px}.subtitle{color:var(--text-muted);font-size:15px;line-height:1.5}.form-group{margin-bottom:24px}.label{display:block;font-size:14px;font-weight:500;color:var(--text-muted);margin-bottom:8px}.input{width:100%;background:#0003;border:1px solid var(--card-border);border-radius:12px;padding:16px;color:var(--text-main);font-size:16px;transition:all .2s ease;outline:none}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #06f3}.input::placeholder{color:#52525b}.btn{width:100%;padding:16px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;display:flex;justify-content:center;align-items:center}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.btn-secondary{background:transparent;color:var(--text-muted);border:1px solid var(--card-border);margin-top:16px}.btn-secondary:hover{background:#ffffff0d;color:#fff}.btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;display:none}.btn.loading .text{display:none}.btn.loading .spinner{display:block}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:12px 16px;border-radius:12px;font-size:14px;margin-bottom:24px;display:none;animation:fadeIn .3s ease-out}.alert.error{background:#ef44441a;color:var(--error);border:1px solid rgba(239,68,68,.2);display:block}.stat-box{background:#0003;border:1px solid var(--card-border);border-radius:16px;padding:20px;margin-bottom:16px;text-align:center}.stat-label{color:var(--text-muted);font-size:13px;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.stat-value{font-size:32px;font-weight:700;color:var(--primary)}.hidden{display:none!important}.menu-container{width:100%}.menu-brand{color:#2965ff;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:8px}.menu-title{font-size:28px;font-weight:700;margin-bottom:8px;letter-spacing:-.5px}.menu-subtitle{color:var(--text-muted);font-size:14px;line-height:1.4;margin-bottom:24px}.menu-section{margin-bottom:12px}.menu-label{font-size:13px;font-weight:500;color:var(--text-main);margin-bottom:8px}.menu-card{background:#111113;border:1px solid #27272a;border-radius:8px;padding:16px;margin-bottom:12px;transition:border-color .2s}input.menu-card:focus{border-color:#2565ff}.hostel-card{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:15px}.option-card{cursor:pointer;transition:border-color .2s,background .2s}.option-card:hover{border-color:#3f3f46;background:#18181b}.option-title{font-size:16px;font-weight:600;margin-bottom:4px}.option-desc{font-size:13px;color:var(--text-muted);line-height:1.4;margin-bottom:12px}.option-action{font-size:14px;font-weight:500;color:#a9c6ff}.info-box{background:#103a5b;border:1px solid #2565FF;border-radius:8px;padding:12px 16px;font-size:13px;color:#a9c6ff;margin-top:16px}.menu-logo{width:3rem;height:auto;margin-bottom:.5rem}
