@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap";:root{color:#202938;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;font-family:Arial,Helvetica,sans-serif}html,body{min-width:320px;min-height:100vh;margin:0}body{display:block}button,input,select,textarea{font:inherit}@page{size:A4;margin:15mm}@media print{html,body{width:100%;min-width:0;min-height:0;margin:0;padding:0;background:#fff!important}body *{visibility:hidden!important}.qr-card,.qr-card *{visibility:visible!important}.qr-card{color:#202938!important;text-align:center!important;width:100%!important;min-height:0!important;box-shadow:none!important;break-inside:avoid!important;background:#fff!important;border:1px solid #d8dce2!important;border-radius:4mm!important;margin:0!important;padding:20mm 10mm!important;position:absolute!important;top:0!important;left:0!important}.qr-card h3{margin:0 0 8mm!important;font-size:22pt!important}.qr-card p{font-size:12pt!important}.qr-card svg{width:60mm!important;max-width:100%!important;height:60mm!important;margin:8mm auto!important;display:block!important}.qr-card button{display:none!important}}:root{color:#202a35;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f3f1ec;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}.app-container{background:radial-gradient(circle at 15% 15%,#e9e2d5 0,#0000 35%),linear-gradient(135deg,#f8f7f3,#eae8e1);justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.login-card{background:#fff;border:1px solid #e8e3d9;border-radius:20px;width:100%;max-width:460px;padding:42px;box-shadow:0 24px 70px #1f2a361a}.brand-icon{color:#d8bd83;background:#182838;border-radius:15px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:28px;font-family:Playfair Display,serif;font-size:28px;font-weight:700;display:flex}.eyebrow{color:#a48751;letter-spacing:2px;margin:0 0 12px;font-size:11px;font-weight:700}.login-card h1{color:#182838;margin:0;font-family:Playfair Display,serif;font-size:32px;font-weight:700;line-height:1.25}.subtitle{color:#7c8490;margin:12px 0 30px;font-size:14px;line-height:1.6}.login-card form{flex-direction:column;gap:10px;display:flex}.login-card label{color:#344253;margin-top:8px;font-size:13px;font-weight:600}.login-card input{color:#202a35;background:#fbfbfa;border:1px solid #dce0e4;border-radius:9px;outline:none;width:100%;height:48px;padding:0 14px;transition:border-color .2s,box-shadow .2s}.login-card input:focus{border-color:#a48751;box-shadow:0 0 0 3px #a487511f}.login-card input::placeholder{color:#a0a6ae}.login-card button{color:#fff;cursor:pointer;background:#182838;border:none;border-radius:9px;width:100%;min-height:49px;margin-top:18px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.login-card button:hover:not(:disabled){background:#263c50;transform:translateY(-1px)}.login-card button:disabled{opacity:.6;cursor:wait}.status-message{color:#344253;background:#f4f1e9;border-radius:8px;margin:16px 0 0;padding:12px;font-size:13px;line-height:1.5}.restaurant-list{border-top:1px solid #ece9e2;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px;padding-top:22px;display:grid}.restaurant-list div{flex-direction:column;gap:5px;display:flex}.restaurant-list span{color:#344253;font-size:12px;font-weight:600}.restaurant-list small{color:#a48751;letter-spacing:1px;font-size:11px}.footer-text{color:#a0a5ac;text-align:center;margin:25px 0 0;font-size:11px}.manager-panel h2{color:#182838;font-family:Playfair Display,serif}.manager-panel p{color:#687483;overflow-wrap:anywhere;font-size:14px}@media (width<=520px){.app-container{padding:20px 14px}.login-card{border-radius:15px;padding:28px 22px}.login-card h1{font-size:27px}}.attendance-kiosk{box-sizing:border-box;color:#172638;background:#f5f3ee;flex-direction:column;align-items:center;width:100%;min-height:100vh;padding:36px 20px;font-family:DM Sans,sans-serif;display:flex}.kiosk-header{text-align:center;width:100%;max-width:540px;margin-bottom:28px}.attendance-kiosk .brand-icon{color:#d7b36a;background:#172638;border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;margin:0 auto 18px;font-family:Playfair Display,serif;font-size:32px;display:flex}.attendance-kiosk .eyebrow{color:#a9823e;letter-spacing:3px;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:700}.kiosk-header h1{color:#172638;margin:8px 0;font-family:Playfair Display,serif;font-size:clamp(30px,5vw,40px);font-weight:600}.kiosk-header>p:last-child{color:#777d85;font-size:15px}.kiosk-panel{box-sizing:border-box;background:#fff;border:1px solid #e8e3d9;border-radius:18px;flex-direction:column;gap:13px;width:100%;max-width:480px;padding:34px;display:flex;box-shadow:0 12px 40px #17263812}.kiosk-panel h2{color:#172638;margin:0;font-family:Playfair Display,serif;font-size:27px;font-weight:600}.kiosk-panel h3{color:#172638;margin:8px 0;font-size:21px}.kiosk-panel>p{color:#777d85;margin:0;font-size:14px;line-height:1.6}.kiosk-panel label{color:#344254;margin-top:5px;font-size:13px;font-weight:600}.kiosk-panel input,.kiosk-panel select{box-sizing:border-box;color:#172638;background:#fff;border:1px solid #dedbd4;border-radius:9px;outline:none;width:100%;min-height:49px;padding:12px 14px;font-family:inherit;font-size:15px}.kiosk-panel input:focus,.kiosk-panel select:focus{border-color:#bd9956;box-shadow:0 0 0 3px #bd99561f}.kiosk-panel button{color:#fff;cursor:pointer;background:#172638;border:1px solid #172638;border-radius:9px;width:100%;min-height:49px;padding:12px 18px;font-family:inherit;font-size:14px;font-weight:600;transition:background .2s,border-color .2s}.kiosk-panel button:hover:not(:disabled){background:#263d56;border-color:#263d56}.kiosk-panel button:disabled{opacity:.55;cursor:not-allowed}.attendance-actions{grid-template-columns:1fr 1fr;gap:12px;margin:10px 0;display:grid}.attendance-actions button:first-child{color:#fff;background:#b18a48;border-color:#b18a48}.attendance-actions button:first-child:hover:not(:disabled){background:#98733a}.status-message{color:#344254;overflow-wrap:anywhere;background:#f5f3ee;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.5}.attendance-kiosk .scanner-card{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.attendance-kiosk .scanner-card video{border:5px solid #f0ece4;border-radius:14px;width:100%;max-width:420px;display:block}.kiosk-footer{color:#92918d;text-align:center;margin-top:28px;font-size:12px}@media (width<=520px){.attendance-kiosk{padding:24px 14px}.kiosk-panel{padding:24px 19px}.attendance-actions{grid-template-columns:1fr}}
