body{font-family:Arial,sans-serif;margin:0;background:#f7f7f7}
.top-bar{background:#333;color:#fff;padding:10px 20px;display:flex;justify-content:space-between}
.main-nav{background:#555;padding:8px 20px;white-space:nowrap;overflow-x:auto}
.main-nav a{color:#fff;margin-right:15px;text-decoration:none}
.main-nav a:hover{text-decoration:underline}
.content{padding:20px}
.footer{padding:10px 20px;background:#eee;text-align:center}
.table{width:100%;border-collapse:collapse;margin-top:10px;background:#fff}
.table th,.table td{border:1px solid #ccc;padding:6px}
.table th{background:#eee}
.btn{display:inline-block;padding:6px 12px;background:#007bff;color:#fff;text-decoration:none;border-radius:3px;margin:5px 0;border:none;cursor:pointer}
.btn-secondary{display:inline-block;padding:6px 12px;background:#777;color:#fff;text-decoration:none;border-radius:3px;margin:5px 0}
.form label{display:block;margin-top:10px}
.form input[type=text],.form input[type=number],.form input[type=date],.form input[type=password],.form select,.form textarea{width:100%;padding:6px;box-sizing:border-box}
.login-body{display:flex;align-items:center;justify-content:center;height:100vh;background:#222}
.login-box{background:#fff;padding:20px;border-radius:4px;width:320px}
.login-box h2{margin-top:0}
.error{background:#f8d7da;padding:8px;margin-bottom:10px;color:#721c24}
.dashboard-grid{display:flex;flex-wrap:wrap;gap:15px;margin:15px 0}
.card{background:#fff;padding:15px;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.kpi-card{min-width:220px;flex:1 1 220px}
.kpi-card h3{margin-top:0;font-size:16px;color:#555}
.kpi-value{font-size:26px;font-weight:bold;margin:5px 0;color:#222}
.kpi-subtitle{font-size:12px;color:#777}
.room-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
.room-tile{width:140px;padding:8px;border-radius:4px;color:#fff;box-sizing:border-box;box-shadow:0 1px 3px rgba(0,0,0,.2);font-size:12px}
.room-tile .room-number{font-size:18px;font-weight:bold}
.room-tile .room-type{font-size:11px}
.room-tile .room-status{font-weight:bold;margin-top:3px}
.room-tile .room-notes{font-size:11px;margin-top:4px}
.room-tile .room-actions{margin-top:5px;font-size:11px}
.room-tile.available{background:#28a745}
.room-tile.occupied{background:#007bff}
.room-tile.dirty{background:#ffc107;color:#333}
.room-tile.maintenance{background:#dc3545}
.rg-badge{display:inline-block;padding:2px 6px;border-radius:3px;font-size:11px;color:#fff;margin-right:5px}
.rg-badge.available{background:#28a745}
.rg-badge.occupied{background:#007bff}
.rg-badge.dirty{background:#ffc107;color:#333}
.rg-badge.maintenance{background:#dc3545}


/* POS UI (Walk-in POS) */
.pos-layout{display:flex;gap:14px;align-items:flex-start}
.pos-left{flex:1 1 65%}
.pos-right{flex:1 1 35%;max-width:420px;position:sticky;top:10px}
.pos-card{background:#fff;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:12px;margin-bottom:12px}
.pos-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.pos-toolbar input[type=text]{flex:1 1 240px}
.pos-cats{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.pos-chip{background:#eee;border:1px solid #ddd;border-radius:20px;padding:6px 10px;cursor:pointer;font-size:12px}
.pos-chip.active{background:#333;color:#fff;border-color:#333}
.pos-menu{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:10px}
.pos-item{border:1px solid #e1e1e1;border-radius:4px;padding:10px;cursor:pointer}
.pos-item:hover{border-color:#007bff}
.pos-item-name{font-weight:bold;font-size:13px;margin-bottom:4px}
.pos-item-cat{font-size:11px;color:#666}
.pos-item-price{font-size:14px;margin-top:6px;font-weight:bold}
.cart-table td{border-bottom:1px dashed #ddd;padding:6px 0}
.cart-table input{width:70px}
.cart-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cart-total{font-size:18px;font-weight:bold}
.modal-backdrop{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);align-items:center;justify-content:center;z-index:999}
.modal{background:#fff;border-radius:6px;width:520px;max-width:92vw;padding:14px;box-shadow:0 6px 30px rgba(0,0,0,.25)}
.modal h3{margin:0 0 10px 0}
.modal .row{display:flex;gap:10px}
.modal .row > div{flex:1}
.modal .footer{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}
.kbd-hint{font-size:11px;color:#777}


/* =========================
   COMTECH PNG Branding Theme
   ========================= */
:root{
  --cp-black:#111111;
  --cp-red:#E30613;
  --cp-gold:#F2C100;
  --cp-bg:#F5F5F5;
}

body{background:var(--cp-bg);}
.top-bar{background:var(--cp-black);}
.main-nav{background:#1b1b1b;}
.main-nav a{padding:8px 10px;border-radius:4px;display:inline-block}
.main-nav a:hover{background:rgba(242,193,0,.18);color:#fff}
.main-nav a.active{background:var(--cp-red);}

.btn{background:var(--cp-red);}
.btn:hover{filter:brightness(0.95)}
.btn-secondary{background:#444;}
.btn-secondary:hover{background:#333}

.card{border-radius:8px;}
.kpi-card{border-left:4px solid var(--cp-red);}

.brand{display:flex;gap:10px;align-items:center}
.brand-logo{width:34px;height:34px;object-fit:contain}
.brand-title{font-weight:bold}
.brand-sep{opacity:.7;margin:0 6px}
.brand-version{background:rgba(242,193,0,.18);padding:2px 6px;border-radius:999px;font-size:12px;margin-left:6px}
.brand-sub{font-size:12px;opacity:.85}

.footer{font-size:12px;color:#222}
.footer-sep{margin:0 8px;opacity:.6}

.login-body{background:var(--cp-black);}
.login-box{border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.35)}
.login-brand{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.login-logo{width:48px;height:48px;object-fit:contain}
.login-title{font-size:18px;font-weight:bold;color:#111}
.login-sub{font-size:12px;color:#666;margin-top:2px}

/* POS emphasis */
.pos-chip.active{background:var(--cp-red);border-color:var(--cp-red)}
.pos-item:hover{border-color:var(--cp-red)}

.tenant-pill{color:#fff;background:rgba(242,193,0,.18);padding:6px 10px;border-radius:999px;font-size:12px;margin-left:12px;align-self:center}
