@charset "UTF-8";body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.sidebar{background:linear-gradient(180deg,#ff6b35,#f7931e);box-shadow:2px 0 10px #0000001a;color:#fff;display:flex;flex-direction:column;left:0;min-height:100vh;position:fixed;top:0;transition:width .3s ease;width:250px;z-index:1000}.sidebar.collapsed{width:70px}.sidebar-header{border-bottom:1px solid #fff3;min-height:70px;padding:20px}.sidebar-header h2{font-size:20px;font-weight:700;white-space:nowrap}.toggle-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:30px;justify-content:center;transition:background-color .2s;width:30px}.toggle-button:hover{background:#ffffff4d}.sidebar-nav{flex:1 1;padding:20px 0}.nav-item{align-items:center;border-left:4px solid #0000;color:#fff;cursor:pointer;display:flex;padding:15px 20px;text-decoration:none;transition:background-color .2s}.nav-item:hover{background-color:#ffffff1a}.nav-item.active{background-color:#fff3;border-left-color:#fff}.nav-icon{align-items:center;display:flex;font-size:24px;justify-content:center;min-width:30px}.nav-label{font-size:16px;font-weight:500;margin-left:15px;white-space:nowrap}.sidebar.collapsed .nav-item{justify-content:center;padding:15px 0}.sidebar.collapsed .sidebar-header{justify-content:center;padding:20px 10px}.nav-badge{animation:pulse 2s infinite;background-color:#dc2626;border-radius:10px;color:#fff;font-size:11px;font-weight:700;margin-left:auto;min-width:20px;padding:2px 7px;text-align:center}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.sidebar.collapsed .nav-badge{font-size:10px;margin-left:0;min-width:16px;padding:1px 5px;position:absolute;right:8px;top:8px}.sidebar.collapsed .nav-item{position:relative}@media (max-width:768px){.sidebar{width:70px}.sidebar-header h2{display:none}.sidebar-header{justify-content:center}.nav-label{display:none}.nav-item{justify-content:center;position:relative}.nav-badge{font-size:10px;margin-left:0;min-width:16px;padding:1px 5px;position:absolute;right:8px;top:8px}}.chat-assistant-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50px;bottom:30px;box-shadow:0 4px 20px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;padding:16px 24px;position:fixed;right:30px;transition:all .3s ease;z-index:1000}.chat-assistant-button:hover{box-shadow:0 6px 30px #667eea99;transform:translateY(-2px)}.chat-icon{font-size:20px}.chat-label{font-size:15px}.chat-assistant-container{background:#fff;border-radius:16px;bottom:30px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;max-height:650px;overflow:hidden;position:fixed;right:30px;transition:all .3s ease;width:420px;z-index:1000}.chat-assistant-container.minimized{max-height:60px}.chat-assistant-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.chat-header-title{align-items:center;display:flex;font-size:16px;font-weight:600;gap:10px}.chat-header-actions{display:flex;gap:8px}.chat-header-button{align-items:center;background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;transition:background .2s ease;width:28px}.chat-header-button:hover{background:#ffffff4d}.chat-assistant-messages{background:#f8f9fa;display:flex;flex:1 1;flex-direction:column;gap:16px;max-height:480px;overflow-y:auto;padding:20px}.chat-error-banner{align-items:center;background:#fee;border-radius:8px;color:#c33;display:flex;font-size:14px;justify-content:space-between;padding:12px}.retry-button{background:#c33;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.retry-button:hover{background:#a22}.chat-message{animation:fadeIn .3s ease;display:flex;flex-direction:column;gap:6px}.chat-message.user{align-items:flex-end}.chat-message.assistant{align-items:flex-start}.message-role{color:#666;font-size:11px;font-weight:600;letter-spacing:.5px;padding:0 4px;text-transform:uppercase}.message-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;line-height:1.5;max-width:85%;padding:12px 16px}.chat-message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.chat-message.assistant .message-content{background:#fff;color:#333}.chat-message.error .message-content{background:#fee;border:1px solid #fcc;color:#c33}.message-content p{word-wrap:break-word;margin:0}.message-content code{background:#0000000d;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:2px 6px}.chat-message.user .message-content code{background:#fff3}.message-content pre{background:#f5f5f5;border-radius:6px;margin:8px 0;overflow-x:auto;padding:12px}.message-content pre code{background:none;padding:0}.message-content ol,.message-content ul{margin:8px 0;padding-left:24px}.message-content li{margin:4px 0}.message-timestamp{color:#999;font-size:10px;padding:0 4px}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{animation:bounce 1.4s ease-in-out infinite;background:#667eea;border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.chat-assistant-input{background:#fff;border-radius:0 0 16px 16px;border-top:1px solid #e0e0e0;display:flex;gap:12px;padding:16px 20px}.chat-assistant-input textarea{border:2px solid #e0e0e0;border-radius:12px;flex:1 1;font-family:inherit;font-size:14px;max-height:120px;min-height:44px;outline:none;padding:12px 16px;resize:none;transition:border-color .2s ease}.chat-assistant-input textarea:focus{border-color:#667eea}.chat-assistant-input textarea:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:44px;justify-content:center;transition:all .2s ease;width:44px}.send-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.send-button:disabled{cursor:not-allowed;opacity:.5}.chat-assistant-messages::-webkit-scrollbar{width:6px}.chat-assistant-messages::-webkit-scrollbar-track{background:#0000}.chat-assistant-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.chat-assistant-messages::-webkit-scrollbar-thumb:hover{background:#aaa}@media (max-width:768px){.chat-assistant-container{max-width:420px;width:calc(100vw - 40px)}.chat-assistant-button{bottom:20px;right:20px}}.layout{background-color:#f5f5f5}.layout,.layout-main{display:flex;min-height:100vh}.layout-main{flex:1 1;flex-direction:column;margin-left:250px;transition:margin-left .3s ease}.sidebar.collapsed~.layout-main{margin-left:70px}.layout-header{background:#fff;box-shadow:0 2px 4px #0000001a;padding:20px 40px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.header-left{gap:15px}.header-logo{height:auto;max-width:50px}.header-content h1{color:#333;font-size:24px;margin:0}.header-actions{align-items:center;gap:20px}.current-user{color:#666;font-size:14px}.logout-button{background-color:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.logout-button:hover{background-color:#e55a2b}.layout-content{flex:1 1;margin:0 auto;max-width:1400px;padding:40px;width:100%}@media (max-width:768px){.layout-main{margin-left:70px}.layout-header{padding:15px 20px}.header-content h1{font-size:18px}.layout-content{padding:20px}.header-actions{gap:10px}.current-user{display:none}}.login-container{align-items:center;background:linear-gradient(135deg,#ff6b35,#f7931e);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:450px;padding:40px;width:100%}.login-logo{margin-bottom:25px;text-align:center}.login-logo img{height:auto;max-width:150px}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:#ff6b35;font-size:32px;font-weight:700;margin:0 0 10px}.login-header p{color:#666;font-size:16px;margin:0}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33}.error-message,.info-message{font-size:14px;margin-bottom:20px;padding:12px}.info-message{background-color:#e3f2fd;border:1px solid #90caf9;border-radius:6px;color:#1565c0}.info-message p{margin:0}.password-requirements{background-color:#f5f5f5;border-radius:6px;font-size:13px;margin-bottom:10px;padding:12px}.password-requirements p{color:#555;font-weight:600;margin:0 0 8px}.password-requirements ul{margin:0;padding-left:20px}.password-requirements li{color:#666;margin-bottom:4px}.login-form{display:flex;flex-direction:column;gap:20px}.form-group input{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;padding:12px 16px}.login-button{background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6}.login-footer{border-top:1px solid #e0e0e0;margin-top:30px;padding-top:20px;text-align:center}.login-footer p{color:#999;font-size:13px;margin:0}.list-users-container{width:100%}.content-header h3{color:#333;font-size:20px;font-weight:600;margin:0}.users-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table thead{background-color:#f8f9fa}.users-table th{border-bottom:2px solid #e0e0e0;color:#555;font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.users-table td{border-bottom:1px solid #f0f0f0;color:#333;font-size:14px;padding:16px}.users-table tbody tr:hover{background-color:#fafafa}.username-cell{color:#ff6b35;font-weight:600}.status-disabled{background-color:#f8d7da;color:#721c24}.status-pending{background-color:#fff3cd}.verified-badge{color:#28a745;font-weight:600}.unverified-badge{color:#dc3545;font-weight:600}.users-count{color:#666;font-size:14px;margin-top:10px;text-align:right}.credits-badge,.credits-cell{font-weight:600}.credits-badge{background-color:#fff3cd;border-radius:12px;color:#856404;display:inline-block;font-size:13px;padding:6px 12px}.action-button{border:none;border-radius:6px;font-size:13px;padding:8px 16px;transition:all .2s}.action-buttons{display:flex;flex-wrap:wrap;gap:8px}.edit-btn{background-color:#6c757d;color:#fff}.edit-btn:hover{background-color:#5a6268;transform:translateY(-1px)}.adjust-credits-btn{background-color:#17a2b8;color:#fff}.adjust-credits-btn:hover{background-color:#138496;transform:translateY(-1px)}.notify-btn{background-color:#7952b3;color:#fff}.notify-btn:hover{background-color:#6741a5;transform:translateY(-1px)}.nickname-cell{color:#555;font-style:italic}.nickname-text{color:#6f42c1;font-weight:500}.no-nickname{color:#ccc}.vip-badge{background:linear-gradient(135deg,gold,#ffed4e);color:#856404}.regular-badge,.vip-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.regular-badge{background-color:#e2e3e5;color:#6c757d}.quick-actions{margin-bottom:24px}.quick-actions h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.quick-buttons{display:flex;flex-wrap:wrap;gap:8px}.quick-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:16px;font-weight:700;min-width:80px;padding:12px;transition:all .2s}.quick-btn:disabled{cursor:not-allowed;opacity:.5}.add-btn{background-color:#28a745;color:#fff}.add-btn:hover:not(:disabled){background-color:#218838;box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.subtract-btn{background-color:#dc3545;color:#fff}.subtract-btn:hover:not(:disabled){background-color:#c82333;box-shadow:0 4px 12px #dc35454d;transform:translateY(-2px)}.custom-adjustment{border-top:1px solid #e0e0e0;padding-top:20px}.custom-adjustment h4{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.form-group input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#ff6b35;outline:none}.form-group input:disabled{background-color:#f5f5f5}.form-group textarea{box-sizing:border-box;padding:10px 12px;width:100%}.submit-button{border-radius:8px;font-size:16px;padding:12px;width:100%}.submit-button:hover:not(:disabled){background-color:#e55a2b;box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.attributes-form{padding:10px 0}@media (max-width:768px){.page-header-section h2{font-size:24px}.content-header{align-items:flex-start;flex-direction:column;gap:15px}.users-table-container{overflow-x:auto}.users-table{min-width:800px}.modal-content{width:95%}.quick-buttons{flex-direction:column}.quick-btn{min-width:100%}}.valet-container{width:100%}.page-header-section{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.generate-new-button{background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:transform .2s,box-shadow .2s}.generate-new-button:hover{box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.generate-new-button:active{transform:translateY(0)}.codes-list-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}.filter-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.filter-group{gap:10px}.filter-group label{color:#555;font-weight:600}.filter-actions{align-items:center;display:flex;gap:15px;margin-left:auto}.refresh-button{background-color:#ff6b35}.refresh-button:hover:not(:disabled){background-color:#e55a2b}.auto-refresh-toggle{align-items:center;display:flex;gap:10px}.toggle-label{color:#555;font-size:14px;font-weight:600;white-space:nowrap}.switch{display:inline-block;height:26px;position:relative;width:50px}.switch input{height:0;opacity:0;width:0}.slider{background-color:#ccc;border-radius:26px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:20px;left:3px;width:20px}input:checked+.slider{background:linear-gradient(135deg,#ff6b35,#f7931e)}input:checked+.slider:before{transform:translateX(24px)}input:focus+.slider{box-shadow:0 0 1px #ff6b35}.date-input,.status-select{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:8px 12px;transition:border-color .2s}.date-input:focus,.status-select:focus{border-color:#ff6b35;outline:none}.loading-spinner{color:#666}.no-codes{color:#999;padding:40px;text-align:center}.codes-table-container{overflow-x:auto}.codes-table{border-collapse:collapse;margin-bottom:15px;width:100%}.codes-table thead{background-color:#f8f9fa}.codes-table th{border-bottom:2px solid #e0e0e0;color:#555;font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px;text-align:left;text-transform:uppercase}.codes-table td{border-bottom:1px solid #f0f0f0;color:#333;font-size:14px;padding:12px}.codes-table tbody tr:hover{background-color:#fafafa}.code-id{color:#ff6b35;font-family:monospace;font-weight:600}.status-badge.claimed{background-color:#d4edda;color:#155724}.status-badge.claimed,.status-badge.unclaimed{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.status-badge.unclaimed{background-color:#fff3cd;color:#856404}.codes-count{color:#666;font-size:14px;text-align:right}.valet-generate-section{align-items:center;display:flex;justify-content:center;min-height:400px}.generate-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-width:500px;padding:60px 40px;text-align:center;width:100%}.generate-icon{font-size:80px;margin-bottom:20px}.generate-card h3{color:#333;font-size:24px;font-weight:700;margin:0 0 15px}.generate-card p{color:#666;font-size:16px;line-height:1.6;margin:0 0 30px}.generate-button{background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:16px 40px;transition:transform .2s,box-shadow .2s}.generate-button:hover:not(:disabled){box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.generate-button:active:not(:disabled){transform:translateY(0)}.generate-button:disabled{cursor:not-allowed;opacity:.6}.valet-code-display{display:flex;justify-content:center;margin-top:20px}.code-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-width:600px;padding:40px;width:100%}.code-card h3{color:#333;font-size:24px;font-weight:700;margin:0 0 30px;text-align:center}.qr-code-container{align-items:center;background:#f9f9f9;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin-bottom:30px;padding:20px}.qr-helper-text{color:#666;font-size:13px;font-weight:500;margin-top:12px;text-align:center}.code-details{background:#f5f5f5;border-radius:8px;margin-bottom:30px;padding:20px}.code-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:12px 0}.code-item:last-child{border-bottom:none}.code-label{color:#555;font-size:14px;font-weight:600}.code-value{background:#fff;border-radius:4px;color:#333;font-family:monospace;font-size:14px;padding:4px 8px}.code-url{font-size:12px;max-width:400px;text-align:right;word-break:break-all}.code-actions{display:flex;justify-content:center}.new-code-button{background-color:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 30px;transition:background-color .2s}.new-code-button:hover{background-color:#e55a2b}.modal-overlay{animation:fadeIn .2s ease-in-out;background-color:#0009}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease-out;border-radius:16px;padding:40px;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-close{background:#0000;height:40px;position:absolute;right:15px;top:15px;transition:background-color .2s,color .2s;width:40px}.modal-generate-section{padding:20px 0;text-align:center}.modal-code-display{padding-top:10px}.modal-code-display h3{color:#333;font-size:22px;font-weight:700;margin:0 0 30px;text-align:center}@media (max-width:768px){.code-card,.generate-card{padding:30px 20px}.qr-code-container svg{height:200px;width:200px}.code-item{align-items:flex-start;flex-direction:column;gap:8px}.modal-content{padding:30px 20px;width:95%}.page-header-section{align-items:flex-start;flex-direction:column}.generate-new-button{width:100%}.filter-controls{align-items:stretch;flex-direction:column}.filter-actions{justify-content:space-between;margin-left:0}}.description-cell{max-width:300px;min-width:200px}.description-display{align-items:center;display:flex;gap:8px;padding:4px 0}.description-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description-display .edit-btn{background:none;border:none;cursor:pointer;font-size:16px;opacity:.5;padding:4px;transition:opacity .2s}.description-display .edit-btn:hover{opacity:1}.edit-description-container{align-items:center;display:flex;gap:8px}.description-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-family:inherit;font-size:14px;padding:6px 10px}.description-input:focus{border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b351a;outline:none}.edit-actions{display:flex;gap:4px}.cancel-btn,.save-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:4px 8px;transition:background-color .2s}.save-btn{color:#22c55e}.save-btn:hover{background-color:#22c55e1a}.cancel-btn{color:#ef4444}.cancel-btn:hover{background-color:#ef44441a}.modal-generate-section .form-group{margin:20px 0;text-align:left}.modal-generate-section .form-group label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.modal-generate-section .form-group .description-input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.modal-generate-section .form-group .description-input:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;outline:none}.modal-generate-section .form-group .help-text{color:#666;display:block;font-size:12px;margin-top:6px}.requested-queue-section{background:linear-gradient(135deg,#fff5f0,#fff);border:2px solid #ff6b35;border-radius:12px;box-shadow:0 2px 8px #ff6b3526;margin-bottom:30px;padding:24px}.requested-queue-section .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.requested-queue-section .section-header h3{color:#333;font-size:20px;font-weight:600;margin:0}.requested-queue-section .refresh-button.small{font-size:13px;padding:6px 14px}.no-requests{color:#888;font-style:italic;padding:30px;text-align:center}.requested-queue-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.requested-card{background:#fff;border-left:4px solid #ff6b35;border-radius:10px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:12px;padding:20px;transition:transform .2s,box-shadow .2s}.requested-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.queue-position{background:#fff5f0;border-radius:12px;color:#ff6b35;display:inline-block;font-size:14px;font-weight:700;padding:4px 10px;width:-webkit-fit-content;width:fit-content}.requested-info{display:flex;flex-direction:column;gap:6px}.requested-info .valet-code{color:#333;font-family:monospace;font-size:16px;font-weight:600}.requested-info .vehicle-description{color:#666;font-size:14px;font-style:italic}.requested-info .customer-info{color:#555;font-size:13px}.requested-info .requested-time{color:#888;font-size:12px}.mark-ready-button{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:auto;padding:12px 20px;transition:transform .2s,box-shadow .2s}.mark-ready-button:hover:not(:disabled){box-shadow:0 4px 12px #22c55e4d;transform:translateY(-1px)}.mark-ready-button:active:not(:disabled){transform:translateY(0)}.mark-ready-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.requested-queue-grid{grid-template-columns:1fr}}.announcements-container{max-width:1200px;padding:24px}.announcements-container h1{color:#1a1a1a;font-size:28px;margin:0 0 8px}.page-description{margin:0 0 32px}.announcement-form-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:24px}.announcement-form-section h2{color:#1a1a1a;font-size:20px;margin:0 0 20px}.announcement-form{display:flex;flex-direction:column;gap:20px}.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:12px;transition:border-color .2s}.form-group textarea:focus{border-color:#ff6b35;outline:none}.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.character-count{color:#999;font-size:12px;text-align:right}.form-group input[type=number]{border:1px solid #ddd;border-radius:6px;font-size:14px;max-width:150px;padding:10px 12px;transition:border-color .2s}.form-group input[type=number]:focus{border-color:#ff6b35;outline:none}.form-group input[type=number]:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-primary{background-color:#ff6b35}.btn-primary:hover:not(:disabled){background-color:#e55a28}.announcements-list-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px}.list-header{margin-bottom:20px}.list-header h2{color:#1a1a1a;font-size:20px}.empty-state small{font-size:14px}.announcements-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.announcement-card{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:16px;transition:box-shadow .2s}.announcement-card:hover{box-shadow:0 2px 8px #0000001a}.announcement-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.status-badge.active{background-color:#e8f5e9;color:#2e7d32}.status-badge.inactive{background-color:#fce4ec;color:#c2185b}.announcement-date{color:#999;font-size:12px}.announcement-message{color:#333;font-size:14px;line-height:1.5;margin-bottom:12px}.announcement-actions{border-top:1px solid #e0e0e0;display:flex;gap:8px;justify-content:flex-end;padding-top:12px}.btn-delete{background-color:#f44336;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s}.btn-delete:hover:not(:disabled){background-color:#d32f2f}.btn-delete:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.announcements-container{padding:16px}.announcements-grid{grid-template-columns:1fr}.list-header{align-items:flex-start;flex-direction:column;gap:12px}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{-webkit-appearance:button;appearance:button;cursor:pointer;overflow:visible;text-transform:none}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:column;height:100%}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :after,.rbc-calendar :before{box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0}.rbc-ellipsis,.rbc-event-label,.rbc-row-segment .rbc-event-content,.rbc-show-more{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{border-bottom:1px solid #ddd;flex:1 0;font-size:90%;font-weight:700;min-height:0;overflow:hidden;padding:0 3px;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{background:none;border:none;color:inherit;cursor:pointer;margin:0;padding:0;-webkit-user-select:text;user-select:text}.rbc-row-content{position:relative;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:flex;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{-ms-overflow-style:none;height:100%;overflow-y:scroll;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{align-items:center;display:flex;flex-wrap:wrap;font-size:16px;justify-content:center;margin-bottom:10px}.rbc-toolbar .rbc-toolbar-label{flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{background:none;background-image:none;border:1px solid #ccc;border-radius:4px;color:#373a3c;display:inline-block;line-height:normal;margin:0;padding:.375rem 1rem;text-align:center;vertical-align:middle;white-space:nowrap}.rbc-toolbar button.rbc-active,.rbc-toolbar button:active{background-color:#e6e6e6;background-image:none;border-color:#adadad;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.rbc-toolbar button.rbc-active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button:active:hover{background-color:#d4d4d4;border-color:#8c8c8c;color:#373a3c}.rbc-toolbar button:focus,.rbc-toolbar button:hover{background-color:#e6e6e6;border-color:#adadad;color:#373a3c}.rbc-toolbar button:hover{cursor:pointer}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:4px;border-bottom-left-radius:0;border-top-left-radius:0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px;border-bottom-right-radius:0;border-top-right-radius:0}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width:767px){.rbc-toolbar{flex-direction:column}}.rbc-day-slot .rbc-background-event,.rbc-event{background-color:#3174ad;border:none;border-radius:5px;box-shadow:none;box-sizing:border-box;color:#fff;cursor:pointer;margin:0;padding:2px 5px;text-align:left;width:100%}.rbc-day-slot .rbc-slot-selecting .rbc-background-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-slot-selecting .rbc-event{cursor:inherit;pointer-events:none}.rbc-day-slot .rbc-selected.rbc-background-event,.rbc-event.rbc-selected{background-color:#265985}.rbc-day-slot .rbc-background-event:focus,.rbc-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px 0 #33333380}.rbc-event-continues-prior{border-bottom-left-radius:0;border-top-left-radius:0}.rbc-event-continues-after{border-bottom-right-radius:0;border-top-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:flex;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;color:#3174ad;font-size:85%;font-weight:700;height:auto;line-height:normal;z-index:4}.rbc-show-more:focus,.rbc-show-more:hover{color:#265985}.rbc-month-view{border:1px solid #ddd;display:flex;flex:1 0;flex-direction:column;height:100%;position:relative;user-select:none;-webkit-user-select:none;width:100%}.rbc-month-header{display:flex;flex-direction:row}.rbc-month-row{display:flex;flex:1 0;flex-basis:0px;flex-direction:column;height:100%;overflow:hidden;position:relative}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{flex:1 1;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:flex;flex:1 0;flex-direction:row;overflow:hidden;right:1px}.rbc-day-bg{flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{background-color:#fff;border:1px solid #e5e5e5;box-shadow:0 5px 15px #00000040;padding:10px;position:absolute;z-index:5}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:flex;flex:1 0;flex-direction:column;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{border:1px solid #ddd;border-collapse:collapse;border-spacing:0;width:100%}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{border-bottom:1px solid #ddd;padding:3px 5px;text-align:left}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:flex;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{flex:1 1}.rbc-timeslot-group{border-bottom:1px solid #ddd;display:flex;flex-flow:column nowrap;min-height:40px}.rbc-header-gutter,.rbc-time-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;margin-right:10px;position:absolute;right:0;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-event{align-items:flex-start;border:1px solid #265985;display:flex;flex-flow:column wrap;max-height:100%;min-height:20px;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{word-wrap:break-word;flex:1 1;height:100%;line-height:1;min-height:1em;width:100%}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{background-color:#fff;border-right:1px solid #ddd;left:0;margin-right:-1px;position:-webkit-sticky;position:sticky;z-index:10}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{flex:1 0;flex-basis:0px;min-width:auto}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-day-bg,.rbc-time-view-resources .rbc-header{flex:1 1;flex-basis:0 px;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{background-color:#00000080;color:#fff;font-size:75%;padding:3px;position:absolute;width:100%;z-index:10}.rbc-slot-selecting{cursor:move}.rbc-time-view{border:1px solid #ddd;display:flex;flex:1 1;flex-direction:column;min-height:0;width:100%}.rbc-time-view .rbc-time-gutter{text-align:right;white-space:nowrap}.rbc-time-view .rbc-allday-cell{box-sizing:initial;height:100%;position:relative;width:100%}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{display:flex;flex:0 0 auto;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-left:1px solid #ddd;border-right-width:0}.rbc-time-header>.rbc-row.rbc-row-resource,.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{border-left:1px solid #ddd;display:flex;flex:1 1;flex-direction:column;min-width:0}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{align-items:flex-start;border-top:2px solid #ddd;display:flex;flex:1 0;overflow-y:auto;position:relative;width:100%}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{user-select:none;-webkit-user-select:none;width:100%}.rbc-current-time-indicator{background-color:#74ad31;height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:3}.rbc-resource-grouping.rbc-time-header-content{display:flex;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.event-calendar-container{max-width:1400px;padding:24px}.event-calendar-container h1{color:#1a1a1a;font-size:28px;margin:0 0 8px}.calendar-wrapper{box-shadow:0 1px 3px #0000001a;padding:24px}.rbc-event{background-color:#f97316;border-radius:5px;font-size:13px}.rbc-event:hover{background-color:#ea580c}.rbc-selected{background-color:#c2410c}.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button:active:hover{background-color:#ea580c;border-color:#ea580c}.modal-header h2{font-size:22px}.modal-close{font-size:32px}.event-form{display:flex;flex-direction:column;gap:20px;padding:24px}.form-group input[type=date],.form-group input[type=text],.form-group input[type=time],.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .2s}.form-group input[type=date]:focus,.form-group input[type=text]:focus,.form-group input[type=time]:focus,.form-group textarea:focus{border-color:#f97316;outline:none}.form-group input:disabled,.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group input[type=file]{border:1px dashed #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px}.image-preview{border:1px solid #ddd;margin-top:12px;max-width:400px}.alert{border-radius:6px}.btn-primary:hover:not(:disabled){background-color:#ea580c}.btn-danger{background-color:#dc2626}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.modal-actions{align-items:center;border-top:1px solid #e0e0e0;justify-content:space-between;padding-top:20px}.modal-actions-right{display:flex;gap:12px}@media (max-width:768px){.event-calendar-container{padding:16px}.modal-content{max-width:100%}.modal-overlay{padding:10px}.form-row{grid-template-columns:1fr}.modal-actions{align-items:stretch;flex-direction:column-reverse}.modal-actions-right{flex-direction:column}.calendar-wrapper{padding:12px}.rbc-toolbar{flex-wrap:wrap;gap:8px}.rbc-toolbar button{font-size:12px;padding:6px 12px}}.spinner{border-top-color:#f97316}.checkbox-group{align-items:center;gap:10px}.checkbox-group input[type=checkbox]{cursor:pointer;width:auto}.checkbox-group label{cursor:pointer;font-weight:400;margin:0}.modal-large{max-width:900px}.rsvp-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:30px}.stat-card{background:#f8f9fa;border:1px solid #dee2e6}.stat-card h4{color:#6c757d;font-size:14px;font-weight:500;margin:0 0 10px;text-transform:uppercase}.stat-number{color:#212529;font-size:32px;font-weight:700;margin:0}.stat-number.confirmed{color:#28a745}.stat-number.waitlist{color:#ffc107}.stat-number.cancelled{color:#dc3545}.stat-number.available{color:#007bff}.rsvp-list{overflow-x:auto}.rsvp-table{border-collapse:collapse;margin-bottom:20px;width:100%}.rsvp-table td,.rsvp-table th{border-bottom:1px solid #dee2e6;padding:12px;text-align:left}.rsvp-table th{color:#495057;font-size:14px;font-weight:600;text-transform:uppercase}.rsvp-table tbody tr:hover,.rsvp-table th{background:#f8f9fa}.status-confirmed{background:#d4edda;color:#155724}.status-waitlist{background:#fff3cd;color:#856404}.status-cancelled{background:#f8d7da;color:#721c24}.btn-sm{font-size:14px}.empty-state{color:#6c757d}.empty-state p{font-size:16px;margin:0}@media (max-width:768px){.rsvp-stats{grid-template-columns:repeat(2,1fr)}.rsvp-table{font-size:14px}.rsvp-table td,.rsvp-table th{padding:8px}.notes-cell{max-width:100px}}.tab-navigation{border-bottom:2px solid #e0e0e0;display:flex;gap:0;margin-bottom:24px}.tab-button{background:#0000;border-bottom:2px solid #0000;color:#666;font-size:15px;margin-bottom:-2px;padding:12px 24px}.tab-button:hover{background-color:#f5f5f5;color:#333}.tab-button.active{border-bottom-color:#f97316;color:#f97316}.tab-button .badge{background-color:#f97316;border-radius:10px;color:#fff;font-size:11px;font-weight:600;padding:2px 8px}.requests-wrapper{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px}.filter-bar{align-items:center;border-bottom:1px solid #eee;display:flex;gap:12px;margin-bottom:24px;padding-bottom:16px}.filter-bar label{color:#333;font-weight:500}.filter-bar select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px}.filter-bar select:focus{border-color:#f97316;outline:none}.requests-list{gap:16px}.request-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:20px;transition:all .2s}.request-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.request-card.request-pending{border-left:4px solid #ffc107}.request-card.request-approved{border-left:4px solid #28a745}.request-card.request-rejected{border-left:4px solid #dc3545}.request-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.request-type-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.request-type-badge.public{background:#e3f2fd;color:#1976d2}.request-type-badge.private{background:#f3e5f5;color:#7b1fa2}.request-card h3{color:#333;font-size:18px;margin:0 0 12px}.request-card-meta{color:#666;display:flex;flex-wrap:wrap;font-size:14px;gap:16px;margin-bottom:12px}.request-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:14px;line-height:1.5;margin:0 0 12px;overflow:hidden}.request-card-footer{align-items:center;border-top:1px solid #eee;color:#999;display:flex;font-size:13px;justify-content:space-between;padding-top:12px}.request-date{font-style:italic}.status-pending{background:#fff3cd;color:#856404}.request-detail-content{padding:24px}.status-banner{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px}.status-banner.status-pending{background:#fff3cd}.status-banner.status-approved{background:#d4edda}.status-banner.status-rejected{background:#f8d7da}.request-detail-section{margin-bottom:24px}.request-detail-section h3{color:#333;font-size:22px;margin:0 0 16px}.request-detail-section h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item.full-width{grid-column:1/-1}.detail-item label{color:#666;font-size:12px;font-weight:600;text-transform:uppercase}.detail-item p,.detail-item span{color:#333;font-size:15px}.description-text{line-height:1.6;margin:0;white-space:pre-wrap}.request-detail-section textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:12px;resize:vertical;width:100%}.request-detail-section textarea:focus{border-color:#f97316;outline:none}.request-detail-section textarea:disabled{background:#f5f5f5;cursor:not-allowed}.request-actions{border-top:1px solid #e0e0e0;margin-top:24px;padding-top:24px}.btn-success{background-color:#28a745}.btn-success:hover:not(:disabled){background-color:#218838}.btn-warning{background-color:#f59e0b;color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.loading{color:#666;padding:40px;text-align:center}@media (max-width:768px){.tab-navigation{overflow-x:auto}.tab-button{font-size:14px;padding:10px 16px;white-space:nowrap}.filter-bar{align-items:flex-start;flex-direction:column}.filter-bar select{width:100%}.request-card-footer,.request-card-meta{flex-direction:column;gap:8px}.request-card-footer{align-items:flex-start}.detail-grid{grid-template-columns:1fr}.request-actions{flex-direction:column-reverse}}.schedule-section{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.schedule-section.has-conflict{background:#fff5f5;border-color:#feb2b2}.schedule-section h4{align-items:center;display:flex;gap:8px;margin:0 0 16px}.conflict-warning{color:#dc2626;font-weight:600}.no-schedule{color:#28a745;font-style:italic;margin:0;padding:8px 0}.schedule-list{gap:16px}.schedule-group,.schedule-list{display:flex;flex-direction:column}.schedule-group{gap:8px}.schedule-group>label{color:#666;font-size:12px;font-weight:600;margin-bottom:4px;text-transform:uppercase}.schedule-item{align-items:flex-start;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;gap:12px;padding:12px}.schedule-item.conflicting{background:#fee2e2;border-color:#fca5a5}.schedule-color{border-radius:4px;flex-shrink:0;height:100%;min-height:40px;width:8px}.schedule-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.schedule-info strong{color:#333;font-size:14px}.schedule-time{color:#666;font-size:13px}.room-badge{background:#e9ecef;color:#495057;font-size:12px}.conflict-badge,.room-badge{border-radius:4px;display:inline-block;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.conflict-badge{background:#dc2626;color:#fff;font-size:11px;font-weight:600;text-transform:uppercase}@media (max-width:768px){.schedule-section{padding:12px}.schedule-item{padding:10px}}.reservations-container{max-width:1400px;padding:24px}.page-header h1{color:#1a1a1a}.page-description{font-size:14px;margin:0 0 24px}.alert{font-size:14px}.alert-error{background-color:#fef2f2;color:#dc2626}.alert-success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:4px;margin-bottom:24px;padding-bottom:0}.tab{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:12px 24px;transition:all .2s}.tab.active,.tab:hover{color:#f97316}.tab.active{border-bottom-color:#f97316}.tab-content{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px}.calendar-toolbar,.list-toolbar,.tables-toolbar{justify-content:space-between;margin-bottom:20px}.calendar-toolbar,.list-toolbar,.tables-toolbar,.toolbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.toolbar-right{display:flex;gap:12px}.date-picker-group,.filter-group{align-items:center;display:flex;gap:8px}.date-picker-group label,.filter-group label{color:#555;font-size:14px;font-weight:500}.date-picker-group input,.filter-group select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px}.btn{padding:10px 16px}.btn-primary{background-color:#f97316}.btn-primary:hover{background-color:#ea580c}.btn-primary:disabled{background-color:#fdba74}.btn-secondary{background-color:#f3f4f6;border:1px solid #d1d5db}.btn-secondary:hover{background-color:#e5e7eb}.stats-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.stat-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;min-width:100px;padding:16px 24px}.stat-value{color:#1f2937;font-size:28px;font-weight:600}.stat-label{color:#6b7280}.stat-confirmed{border-left:4px solid #3b82f6}.stat-seated{border-left:4px solid #22c55e}.stat-completed{border-left:4px solid #9ca3af}.stat-covers{border-left:4px solid #f97316}.reservations-table-wrapper{overflow-x:auto}.reservations-table{border-collapse:collapse;width:100%}.reservations-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.reservations-table td{border-bottom:1px solid #e5e7eb;font-size:14px;padding:14px 16px;vertical-align:middle}.reservations-table tbody tr:hover{background-color:#f9fafb}.time-cell{color:#1f2937;font-weight:600;white-space:nowrap}.guest-cell{min-width:150px}.guest-name{color:#1f2937;font-weight:500}.confirmation-code{color:#9ca3af;font-family:monospace;font-size:11px}.party-cell{font-weight:600;text-align:center}.phone-cell{color:#6b7280;white-space:nowrap}.source-cell{color:#6b7280;text-transform:capitalize}.notes-cell{color:#6b7280;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-cell,.loading-cell{color:#9ca3af;padding:40px;text-align:center}.status-confirmed{background-color:#dbeafe;color:#1d4ed8}.status-seated{background-color:#dcfce7;color:#15803d}.status-completed{background-color:#f3f4f6;color:#6b7280}.status-cancelled{background-color:#fef2f2;color:#dc2626}.status-noshow{background-color:#fff7ed;color:#c2410c}.actions-cell{white-space:nowrap}.action-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;margin-right:6px;padding:6px 12px;transition:all .2s}.seat-btn{background-color:#dcfce7;color:#15803d}.seat-btn:hover{background-color:#bbf7d0}.complete-btn{background-color:#f3f4f6;color:#374151}.complete-btn:hover{background-color:#e5e7eb}.noshow-btn{background-color:#fff7ed;color:#c2410c}.noshow-btn:hover{background-color:#ffedd5}.cancel-btn{background-color:#fef2f2;color:#dc2626}.cancel-btn:hover{background-color:#fecaca}.edit-btn{background-color:#dbeafe;color:#1d4ed8}.edit-btn:hover{background-color:#bfdbfe}.delete-btn{background-color:#fef2f2;color:#dc2626}.delete-btn:hover{background-color:#fecaca}.calendar-legend{background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:24px;margin-bottom:16px;padding:12px 16px}.legend-item{color:#555;font-size:13px;gap:8px}.legend-color{border-radius:4px;display:inline-block;height:16px;width:16px}.calendar-wrapper{background:#fff;border-radius:8px}.rbc-calendar{font-family:inherit}.rbc-header{background-color:#f8f9fa;border-bottom:2px solid #e0e0e0;color:#333;font-weight:600;padding:12px 8px}.rbc-today{background-color:#fff9e6}.rbc-event{border-radius:4px;font-size:12px;padding:4px 8px}.rbc-toolbar button{background-color:#fff;border:1px solid #ddd;border-radius:6px;color:#333;font-weight:500;padding:8px 16px;transition:all .2s}.rbc-toolbar button:hover{background-color:#f5f5f5;border-color:#bbb}.rbc-toolbar button.rbc-active,.rbc-toolbar button:active{background-color:#f97316;border-color:#f97316;color:#fff}.tables-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.table-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .2s}.table-card:hover{box-shadow:0 4px 12px #0000001a}.table-card.table-inactive{opacity:.6}.table-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:12px 16px}.table-id{color:#1f2937;font-size:16px;font-weight:700}.table-status{border-radius:4px;font-size:11px;font-weight:500;padding:4px 8px;text-transform:capitalize}.table-status.status-available{background-color:#dcfce7;color:#15803d}.table-status.status-occupied{background-color:#fef2f2;color:#dc2626}.table-status.status-reserved{background-color:#dbeafe;color:#1d4ed8}.table-status.status-blocked{background-color:#f3f4f6;color:#6b7280}.table-body{padding:16px}.table-name{color:#1f2937;font-weight:500;margin-bottom:8px}.table-info{display:flex;gap:12px;margin-bottom:8px}.table-type{background:#f3f4f6;border-radius:4px;padding:2px 8px}.table-capacity,.table-type{color:#6b7280;font-size:12px}.table-zone{color:#7c3aed;font-size:12px;font-weight:500}.table-zone .no-zone{color:#dc2626;font-style:italic;font-weight:400}.table-actions{background:#f9fafb;border-top:1px solid #e5e7eb;gap:8px;padding:12px 16px}.settings-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.settings-header h3{color:#1f2937;margin:0}.settings-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.settings-section{background:#f9fafb;border-radius:8px;padding:24px}.settings-section h4{border-bottom:1px solid #e5e7eb;color:#374151;font-size:16px;margin:0 0 20px;padding-bottom:12px}.form-group{gap:8px}.form-group input[type=date],.form-group input[type=email],.form-group input[type=number],.form-group input[type=tel],.form-group input[type=text],.form-group input[type=time],.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.form-hint{color:#9ca3af;font-size:12px;margin-top:4px}.toggle-switch{display:inline-block;height:24px;position:relative;width:48px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#f97316}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.modal-overlay{padding:20px}.modal-content{max-width:600px;width:100%}.modal-content.modal-small{max-width:400px}.modal-header{padding:20px 24px}.modal-header h2{color:#333;font-weight:600}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:28px;height:36px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:36px}.modal-close:hover{background-color:#f0f0f0;color:#333}.reservation-form{padding:24px}.modal-actions{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}@media (max-width:768px){.reservations-container{padding:16px}.tabs{overflow-x:auto}.tab{padding:10px 16px;white-space:nowrap}.calendar-toolbar,.list-toolbar,.tables-toolbar{align-items:stretch;flex-direction:column}.stats-row,.toolbar-left,.toolbar-right{justify-content:center}.form-row,.settings-grid,.tables-grid{grid-template-columns:1fr}.reservations-table{font-size:13px}.reservations-table td,.reservations-table th{padding:10px 8px}.zones-grid{grid-template-columns:1fr}}.zones-view{padding:0}.zones-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.zones-toolbar h3{color:#1f2937;margin:0}.zones-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:24px}.zone-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s}.zone-card:hover{box-shadow:0 4px 12px #0000001a}.zone-card.zone-inactive{opacity:.6}.zone-card.zone-private{border-left:4px solid #8b5cf6}.zone-header{align-items:flex-start;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px}.zone-title{display:flex;flex-direction:column;gap:4px}.zone-name{color:#1f2937;font-size:16px;font-weight:600}.zone-floor{color:#6b7280;font-size:12px}.zone-badge{border-radius:4px;font-size:11px;font-weight:500;padding:4px 8px}.zone-badges{display:flex;flex-wrap:wrap;gap:6px}.private-badge{background-color:#ede9fe;color:#7c3aed}.default-badge{background-color:#dbeafe;color:#1d4ed8}.zone-body{padding:16px}.zone-description{color:#6b7280;font-size:13px;line-height:1.4;margin-bottom:12px}.zone-stats{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.zone-stat{color:#374151;font-size:13px}.zone-stat strong{color:#1f2937}.zone-tables{background:#f9fafb;border-radius:8px;padding:12px}.zone-tables-header{align-items:center;color:#374151;display:flex;font-size:13px;font-weight:500;justify-content:space-between;margin-bottom:8px}.assign-table-select{background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 8px}.zone-table-list{display:flex;flex-wrap:wrap;gap:8px}.zone-table-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;font-size:12px;gap:6px;padding:6px 10px}.zone-table-id{color:#1f2937;font-weight:600}.zone-table-capacity{color:#6b7280}.zone-table-remove{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:16px;line-height:1;padding:0;transition:color .2s}.zone-table-remove:hover{color:#dc2626}.zone-no-tables{color:#9ca3af;font-size:12px;font-style:italic}.zone-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:8px;padding:12px 16px}.unassigned-tables-section{background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;padding:16px}.unassigned-tables-section h4{color:#92400e;font-size:14px;margin:0 0 12px}.unassigned-tables-list{display:flex;flex-wrap:wrap;gap:8px}.unassigned-table-item{align-items:center;background:#fff;border:1px solid #fcd34d;border-radius:6px;display:flex;font-size:13px;gap:8px;padding:8px 12px}.unassigned-table-item .table-id{color:#1f2937;font-weight:600}.unassigned-table-item .table-info{color:#6b7280;margin:0}.blocked-zone-info{background:#0000000d;border-radius:4px;font-size:13px;margin-top:8px;padding:8px 12px}.alert-warning{background-color:#fffbeb;border:1px solid #fcd34d;color:#92400e}.checkbox-label input[type=checkbox]{accent-color:#f97316}.tab-primary{font-weight:600}.tab-primary.active{background-color:#f97316;border-radius:6px 6px 0 0;color:#fff}.tab-content-dashboard{background:#f3f4f6;padding:0}.dashboard-view{min-height:calc(100vh - 200px)}.dashboard-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.dashboard-time{align-items:center;display:flex;gap:16px}.current-time{color:#1f2937;font-size:32px;font-weight:700}.service-period{border-radius:20px;font-size:14px;font-weight:600;padding:6px 16px;text-transform:uppercase}.period-lunch{background:#fef3c7;color:#92400e}.period-dinner{background:#dbeafe;color:#1e40af}.period-transition{background:#f3f4f6;color:#6b7280}.period-late{background:#ede9fe;color:#6d28d9}.period-closed{background:#fee2e2;color:#dc2626}.btn-large{font-size:16px;font-weight:600;padding:14px 28px}.btn-success{background-color:#22c55e}.btn-success:hover{background-color:#16a34a}.btn-danger{background-color:#ef4444}.btn-danger:hover{background-color:#dc2626}.btn-small{font-size:12px;padding:6px 12px}.dashboard-search{background:#fff;border-bottom:1px solid #e5e7eb;padding:16px 24px;position:relative}.search-input-large{border:2px solid #e5e7eb;border-radius:12px;font-size:18px;outline:none;padding:16px 20px;transition:all .2s;width:100%}.search-input-large:focus{border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.search-results{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #00000026;left:24px;max-height:400px;overflow-y:auto;position:absolute;right:24px;top:100%;z-index:100}.search-result-item{align-items:center;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background .2s}.search-result-item:hover{background:#f9fafb}.search-result-item:last-child{border-bottom:none}.search-result-main{align-items:center;display:flex;gap:16px}.search-result-name{color:#1f2937;font-weight:600}.search-result-time{color:#6b7280;font-weight:500}.search-result-party{color:#9ca3af}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr 1fr;padding:20px 24px}.dashboard-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.dashboard-section h3{color:#374151;font-size:16px;font-weight:600;margin:0 0 16px}.table-status-cards{display:flex;gap:12px;margin-bottom:20px}.status-card{border-radius:10px;flex:1 1;padding:16px;text-align:center}.status-card.status-available{background:#dcfce7}.status-card.status-seated{background:#fee2e2}.status-card.status-reserved{background:#dbeafe}.status-count{color:#1f2937;display:block;font-size:28px;font-weight:700}.status-label{color:#6b7280;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.floor-plan{margin-bottom:20px}.floor-zone{margin-bottom:16px}.floor-zone h4{color:#6b7280;font-size:13px;font-weight:500;margin:0 0 8px}.zone-tables-grid{display:flex;flex-wrap:wrap;gap:8px}.floor-table{align-items:center;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:56px;justify-content:center;transition:all .2s;width:56px}.floor-table:hover{transform:scale(1.05)}.floor-table.table-available{background:#dcfce7;border-color:#22c55e}.floor-table.table-occupied,.floor-table.table-seated{background:#fee2e2;border-color:#ef4444}.floor-table.table-reserved{background:#dbeafe;border-color:#3b82f6}.floor-table.table-bussing{background:#fef3c7;border-color:#f59e0b}.table-number{color:#1f2937;font-size:14px;font-weight:700}.table-seats{color:#6b7280;font-size:10px}.covers-display{border-top:1px solid #e5e7eb;padding-top:16px}.covers-bar{background:#e5e7eb;border-radius:6px;height:12px;margin-bottom:8px;overflow:hidden}.covers-filled{background:linear-gradient(90deg,#22c55e,#f97316);border-radius:6px;height:100%;transition:width .3s ease}.covers-text{color:#6b7280;font-size:14px;font-weight:500}.arriving-list{display:flex;flex-direction:column;gap:12px}.arriving-card{align-items:center;background:#f9fafb;border:2px solid #0000;border-radius:10px;cursor:pointer;display:flex;gap:16px;padding:16px;transition:all .2s}.arriving-card:hover{background:#fff7ed;border-color:#f97316}.arriving-time{color:#1f2937;font-size:20px;font-weight:700;min-width:60px}.arriving-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.arriving-name{color:#1f2937;font-weight:600}.arriving-party{color:#6b7280;font-size:13px}.arriving-notes{color:#f97316;font-size:12px;font-style:italic}.alerts-section{margin-bottom:20px}.alerts-list{display:flex;flex-direction:column;gap:8px}.alert-card{align-items:center;border-radius:8px;display:flex;font-size:14px;gap:12px;padding:12px 16px}.alert-card.alert-late{background:#fef2f2;color:#dc2626}.alert-card.alert-vip{background:#fef3c7;color:#92400e}.alert-icon{font-size:18px}.alert-message{flex:1 1}.waitlist-section h3{margin-bottom:12px}.waitlist-list{display:flex;flex-direction:column;gap:10px}.waitlist-card{align-items:center;background:#f9fafb;border-radius:10px;display:flex;gap:12px;padding:14px}.waitlist-position{align-items:center;background:#f97316;border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.waitlist-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.waitlist-name{color:#1f2937;font-weight:600}.waitlist-party{color:#6b7280;font-size:13px}.waitlist-wait{color:#f97316;font-size:12px}.waitlist-actions{display:flex;gap:8px}.empty-state{color:#9ca3af;font-size:14px;padding:24px}.modal-arrival{max-width:450px}.arrival-content{padding:24px}.arrival-guest-info{margin-bottom:24px;text-align:center}.arrival-guest-info h3{color:#1f2937;font-size:24px;margin:0 0 8px}.arrival-time{color:#6b7280;margin:4px 0}.arrival-phone{color:#9ca3af;font-size:14px}.arrival-notes{color:#f97316;font-size:14px;margin-top:8px}.arrival-party-size{margin-bottom:24px;text-align:center}.arrival-party-size label{color:#6b7280;display:block;font-size:14px;margin-bottom:12px}.party-size-controls{align-items:center;display:flex;gap:20px;justify-content:center}.party-btn{background:#fff;border:2px solid #e5e7eb;border-radius:50%;cursor:pointer;font-size:24px;font-weight:600;height:48px;transition:all .2s;width:48px}.party-btn:hover{border-color:#f97316;color:#f97316}.party-count{color:#1f2937;font-size:48px;font-weight:700;min-width:60px;text-align:center}.party-changed{color:#f97316;display:block;font-size:14px;margin-top:8px}.arrival-actions{display:flex;gap:12px}.arrival-actions .btn{flex:1 1}.modal-walkin{max-width:500px}.walkin-content{padding:24px}.party-size-large{margin-bottom:24px}.party-size-large label{color:#6b7280;display:block;font-size:14px;margin-bottom:12px;text-align:center}.party-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.party-size-btn{background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;font-size:20px;font-weight:600;height:56px;transition:all .2s;width:56px}.party-size-btn:hover{border-color:#f97316}.party-size-btn.active{background:#f97316;border-color:#f97316;color:#fff}.party-size-input{border:2px solid #e5e7eb;border-radius:8px;display:block;font-size:18px;margin:12px auto 0;padding:10px;text-align:center;width:100px}.walkin-fields{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.walkin-actions{text-align:center}.walkin-actions .btn{min-width:200px}.floormap-view{display:flex;flex-direction:column;height:calc(100vh - 280px)}.floormap-toolbar{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px 20px}.floormap-toolbar h3{color:#1f2937;margin:0}.floor-selector{display:flex;gap:8px;margin-left:24px}.floor-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.floor-btn:hover{background:#f9fafb}.floor-btn.active{background:#f97316;border-color:#f97316;color:#fff}.floormap-help{background:#fef3c7;color:#92400e;font-size:13px;padding:12px 20px}.floormap-container{display:flex;flex:1 1;overflow:hidden}.floormap-properties{background:#fff;border-right:1px solid #e5e7eb;overflow-y:auto;padding:20px;width:280px}.floormap-properties h4{color:#1f2937;font-size:15px;margin:0 0 16px}.property-group{margin-bottom:16px}.property-group label{color:#6b7280;display:block;font-size:12px;font-weight:500;margin-bottom:6px}.property-group input[type=number]{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.color-picker{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{border:2px solid #0000;border-radius:6px;cursor:pointer;height:32px;transition:all .2s;width:32px}.color-swatch:hover{transform:scale(1.1)}.color-swatch.active{border-color:#1f2937}.shape-picker{display:flex;flex-wrap:wrap;gap:8px}.shape-btn{background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 12px;text-transform:capitalize}.shape-btn:hover{background:#f9fafb}.shape-btn.active{background:#f97316;border-color:#f97316;color:#fff}.property-info{border-top:1px solid #e5e7eb;color:#6b7280;display:flex;flex-direction:column;font-size:13px;gap:4px;margin-top:16px;padding-top:16px}.floormap-canvas{background:#f9fafb;flex:1 1;min-height:500px;overflow:auto;position:relative}.floormap-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;font-size:14px;gap:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.floormap-spinner{animation:floormap-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#f97316;height:40px;width:40px}@keyframes floormap-spin{to{transform:rotate(1turn)}}.floormap-grid{background-image:linear-gradient(90deg,#e5e7eb 1px,#0000 0),linear-gradient(180deg,#e5e7eb 1px,#0000 0);background-size:50px 50px;inset:0;opacity:.5;pointer-events:none;position:absolute}.map-zone{border:2px dashed #9ca3af;border-radius:12px;position:absolute;transition:border-color .2s,box-shadow .2s}.map-zone:hover{border-color:#6b7280}.map-zone.selected{border-color:#f97316;border-style:solid;box-shadow:0 0 0 3px #f9731633}.map-zone-label{background:#fffc;border-radius:4px;color:#374151;font-size:12px;font-weight:600;left:12px;padding:2px 8px;position:absolute;top:8px}.resize-handle{background:#f97316;position:absolute;z-index:10}.resize-handle.resize-ne,.resize-handle.resize-nw,.resize-handle.resize-se,.resize-handle.resize-sw{border-radius:2px;height:12px;width:12px}.resize-handle.resize-nw{cursor:nw-resize;left:-6px;top:-6px}.resize-handle.resize-ne{cursor:ne-resize;right:-6px;top:-6px}.resize-handle.resize-sw{bottom:-6px;cursor:sw-resize;left:-6px}.resize-handle.resize-se{bottom:-6px;cursor:se-resize;right:-6px}.resize-handle.resize-n,.resize-handle.resize-s{border-radius:3px;height:6px;left:20px;right:20px}.resize-handle.resize-n{cursor:n-resize;top:-3px}.resize-handle.resize-s{bottom:-3px;cursor:s-resize}.resize-handle.resize-e,.resize-handle.resize-w{border-radius:3px;bottom:20px;top:20px;width:6px}.resize-handle.resize-e{cursor:e-resize;right:-3px}.resize-handle.resize-w{cursor:w-resize;left:-3px}.map-zone:not(.selected) .resize-handle{opacity:0}.map-zone.selected .resize-handle{opacity:1}.map-zone .resize-handle:hover{background:#ea580c;transform:scale(1.2)}.map-zone.resizing{border-color:#f97316;border-style:solid}.floormap-canvas.is-dragging,.floormap-canvas.is-resizing{cursor:grabbing;-webkit-user-select:none;user-select:none}.map-table.dragging,.map-zone.dragging{box-shadow:0 8px 20px #0003;opacity:.9;z-index:100}.map-table.dragging{transform-origin:center center}.map-table{align-items:center;display:flex;flex-direction:column;justify-content:center;position:absolute;transition:transform .2s,box-shadow .2s;z-index:10}.map-table:hover{z-index:20}.map-table.selected{box-shadow:0 0 0 3px #f9731666;z-index:30}.map-table-square{background:#dcfce7;border:2px solid #22c55e;border-radius:8px}.map-table-round{background:#dcfce7;border:2px solid #22c55e;border-radius:50%}.map-table-rectangle{background:#dcfce7;border:2px solid #22c55e;border-radius:8px}.map-table-bar{background:#dbeafe;border:2px solid #3b82f6;border-radius:4px}.resize-handle-table{background:#f97316;border-radius:2px;height:8px!important;width:8px!important}.resize-handle-table.resize-nw{left:-4px;top:-4px}.resize-handle-table.resize-ne{right:-4px;top:-4px}.resize-handle-table.resize-sw{bottom:-4px;left:-4px}.resize-handle-table.resize-se{bottom:-4px;right:-4px}.map-table.resizing{z-index:100}.map-table.table-status-available{background:#dcfce7;border-color:#22c55e}.map-table.table-status-occupied,.map-table.table-status-seated{background:#fee2e2;border-color:#ef4444}.map-table.table-status-reserved{background:#dbeafe;border-color:#3b82f6}.map-table.table-status-bussing{background:#fef3c7;border-color:#f59e0b}.map-table-id{color:#1f2937;font-size:12px;font-weight:700}.map-table-capacity{color:#6b7280;font-size:10px}.floormap-selection-toolbar{align-items:center;background:#1f2937;color:#fff;display:flex;gap:12px;padding:12px 20px}.floormap-selection-toolbar .toolbar-label{font-size:14px;font-weight:600}.floormap-selection-toolbar .toolbar-section-label{color:#9ca3af;font-size:12px}.floormap-selection-toolbar .toolbar-divider{background:#4b5563;height:24px;width:1px}.floormap-selection-toolbar .toolbar-spacer{flex:1 1}.color-swatch-small{border:2px solid #0000;border-radius:4px;cursor:pointer;height:24px;transition:all .15s;width:24px}.color-swatch-small:hover{transform:scale(1.1)}.color-swatch-small.active{border-color:#fff;box-shadow:0 0 0 2px #f97316}.toolbar-shape-btn{background:#374151;border:1px solid #4b5563;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;text-transform:capitalize;transition:all .15s}.toolbar-shape-btn:hover{background:#4b5563}.toolbar-shape-btn.active{background:#f97316;border-color:#f97316}.toolbar-action-btn{background:#374151;border:1px solid #4b5563;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .15s}.toolbar-action-btn:hover{background:#4b5563}.toolbar-close-btn{background:#f97316;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 16px;transition:all .15s}.toolbar-close-btn:hover{background:#ea580c}.floormap-legend{background:#fff;border-top:1px solid #e5e7eb;display:flex;gap:24px;padding:12px 20px}.floormap-legend .legend-item{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:8px}.legend-dot{border-radius:50%;height:12px;width:12px}.legend-dot.available{background:#22c55e}.legend-dot.occupied{background:#ef4444}.legend-dot.reserved{background:#3b82f6}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){.dashboard-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;gap:16px}.current-time{font-size:28px}.table-status-cards{flex-wrap:wrap}.status-card{min-width:calc(50% - 6px)}}.specials-container{margin:0 auto;max-width:1400px;padding:2rem}.page-description{color:#6b7280;margin-bottom:2rem}.special-form-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.special-form-section h2{color:#111827;margin-bottom:1.5rem;margin-top:0}.special-form{max-width:600px}.form-group{margin-bottom:1.5rem}.form-group label{color:#374151;margin-bottom:.5rem}.form-group input[type=file],.form-group input[type=number],.form-group input[type=text],.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a;outline:none}.character-count{color:#6b7280;display:block;font-size:.875rem;margin-top:.25rem}.color-presets{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.color-preset{align-items:center;border:3px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;height:50px;justify-content:center;position:relative;transition:all .2s;width:50px}.color-preset:hover{box-shadow:0 4px 6px #0003;transform:scale(1.1)}.color-preset.selected{border-color:#374151;border-width:4px;box-shadow:0 0 0 3px #37415133}.color-preset:disabled{cursor:not-allowed;opacity:.5}.color-preset .checkmark{color:#fff;font-size:1.5rem;font-weight:700;text-shadow:0 0 3px #00000080,0 0 6px #0000004d}.color-presets-label{color:#374151;display:block;font-weight:600;margin-bottom:1rem}.color-picker-group{align-items:center;display:flex;gap:1rem;margin-top:1rem}.color-picker-group input[type=color]{border:1px solid #d1d5db;border-radius:8px;cursor:pointer;height:50px;width:80px}.color-text-input{flex:1 1;text-transform:uppercase}.icon-picker{grid-gap:.75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));margin-top:.75rem;max-height:300px;overflow-y:auto;padding:.5rem}.icon-option{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;justify-content:center;padding:.75rem;transition:all .2s}.icon-option:hover{border-color:#8b5cf6;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.icon-option.selected{background:#f3f0ff;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.icon-option:disabled{cursor:not-allowed;opacity:.5}.icon-emoji{font-size:2rem;line-height:1}.icon-label{color:#6b7280;font-size:.75rem;font-weight:500;text-align:center}.image-preview{border:1px solid #e5e7eb;border-radius:8px;margin-top:1rem;overflow:hidden}.image-preview img{display:block;height:auto;max-width:100%}.alert{margin-bottom:1rem;padding:1rem}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.form-actions{gap:1rem}.btn{padding:.75rem 1.5rem}.btn-primary{background:#8b5cf6}.btn-primary:hover:not(:disabled){background:#7c3aed}.btn-primary:disabled{background:#d1d5db;cursor:not-allowed}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover:not(:disabled){background:#d1d5db}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.specials-list-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.list-header h2{margin:0}.empty-state,.loading-spinner{color:#6b7280;padding:3rem}.empty-state p{font-size:1.125rem;margin-bottom:.5rem}.empty-state small{font-size:.875rem}.specials-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.special-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s}.special-card:hover{box-shadow:0 10px 20px #0000001a;transform:translateY(-4px)}.special-image{height:200px;overflow:hidden;width:100%}.special-image img{height:100%;object-fit:cover;width:100%}.special-content{color:#fff;padding:1.5rem;position:relative}.special-icon{filter:grayscale(100%) brightness(.5) contrast(1.2);font-size:3rem;line-height:1;mix-blend-mode:multiply;opacity:.35;position:absolute;right:1rem;top:1rem}.special-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.special-header h3{font-size:1.25rem;font-weight:700;margin:0}.special-date{font-size:.75rem;margin-left:.5rem;opacity:.8;white-space:nowrap}.special-description{font-size:.95rem;line-height:1.4;margin:0;opacity:.95}.special-actions{border-top:1px solid #e5e7eb;display:flex;gap:.5rem;padding:1rem}.btn-delete,.btn-edit{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-edit{background:#f3f4f6;color:#374151}.btn-edit:hover:not(:disabled){background:#e5e7eb}.btn-delete{background:#fee2e2;color:#991b1b}.btn-delete:hover:not(:disabled){background:#fecaca}.btn-delete:disabled,.btn-edit:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.special-form-section,.specials-container,.specials-list-section{padding:1rem}.specials-grid{grid-template-columns:1fr}.icon-picker{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.menu-container{margin:0 auto;max-width:1400px;padding:20px}.menu-container h1{margin-bottom:10px}.menu-container .page-description{color:#666;margin-bottom:30px}.menu-layout{grid-gap:30px;display:grid;gap:30px;grid-template-columns:300px 1fr;height:calc(100vh - 200px)}.menu-sidebar{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;padding:20px}.sidebar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.sidebar-header h2{font-size:1.2rem;margin:0}.categories-list{flex:1 1;overflow-y:auto}.category-item{align-items:center;background:#f5f5f5;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px;transition:all .2s}.category-item:hover{background:#e5e5e5}.category-item.active{background:#d6de23;font-weight:600}.category-content{align-items:center;display:flex;flex:1 1;gap:8px}.category-name{font-size:1rem}.category-count{color:#666;font-size:.85rem}.category-actions{display:flex;gap:4px}.btn-icon{background:none;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;padding:4px 8px;transition:background .2s}.btn-icon:hover:not(:disabled){background:#0000001a}.btn-icon:disabled{cursor:not-allowed;opacity:.3}.btn-icon.btn-delete:hover:not(:disabled){background:#fee}.menu-main{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-y:auto;padding:30px}.section-header{align-items:center;border-bottom:2px solid #eee;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.section-header h2{font-size:1.5rem;margin:0}.form-section{max-width:600px}.form-group,.form-section h2{margin-bottom:20px}.form-group label{color:#333}.form-group input[type=number],.form-group input[type=text],.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:1rem;padding:10px 12px;width:100%}.price-input-wrapper{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;display:flex;overflow:hidden}.price-input-wrapper:focus-within{border-color:#d6de23;box-shadow:0 0 0 2px #d6de2333}.price-prefix{background:#f5f5f5;border-right:1px solid #ddd;color:#666;font-weight:600;padding:10px 12px}.price-input-wrapper input[type=number]{border:none;border-radius:0;flex:1 1}.price-input-wrapper input[type=number]:focus{outline:none}.price-input-wrapper input[type=number]::-webkit-inner-spin-button,.price-input-wrapper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.price-input-wrapper input[type=number]{-moz-appearance:textfield}.form-group input[type=file]{display:block;margin-top:5px}.form-group small{color:#666;font-size:.85rem;margin-top:5px}.dietary-tags{display:flex;flex-wrap:wrap;gap:10px}.dietary-tag{border:none;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .2s}.dietary-tag:hover:not(:disabled){transform:scale(1.05)}.dietary-tag.selected{box-shadow:0 2px 8px #0003}.checkbox-label{gap:10px}.checkbox-label input[type=checkbox]{height:18px;width:18px}.checkbox-label span{color:#333;font-size:.95rem}.image-preview{margin-top:15px;max-width:300px}.image-preview img{border:2px solid #eee;border-radius:8px;width:100%}.form-actions{display:flex;gap:10px;margin-top:25px}.items-grid{grid-gap:20px;gap:20px}.item-card{border-radius:12px;box-shadow:0 2px 6px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.item-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.item-image{background:#e5e5e5;height:180px;overflow:hidden;width:100%}.item-image img{height:100%;object-fit:cover;width:100%}.item-content{padding:15px}.item-header{align-items:start;margin-bottom:10px}.item-header h3{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;font-size:1.1rem;gap:8px}.featured-badge{background:#d6de23;border-radius:10px;color:#333;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.item-price{background:#333;border-radius:12px;color:#d6de23;font-size:1rem;font-weight:700;padding:4px 10px;white-space:nowrap}.item-description{color:#666;font-size:.9rem;line-height:1.4;margin:10px 0}.item-dietary{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.dietary-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px}.item-actions{background:#fff;padding:12px 15px}.item-actions button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:8px;transition:all .2s}.btn-edit{background:#3b82f6;color:#fff}.btn-edit:hover{background:#2563eb}.btn-delete{background:#ef4444;color:#fff}.btn-delete:hover{background:#dc2626}.empty-state p{font-size:1.1rem;margin-bottom:8px}.empty-state small{color:#bbb;font-size:.9rem}.loading-spinner{color:#999;padding:40px;text-align:center}.alert-error{color:#c33}.alert-success{color:#3c3}.btn{padding:10px 20px}.btn-primary{background:#d6de23;color:#333}.btn-primary:hover:not(:disabled){background:#c5cd1f}.btn-secondary{background:#e5e5e5}.btn-secondary:hover:not(:disabled){background:#d5d5d5}.btn-sm{font-size:.85rem;padding:6px 12px}@media (max-width:1024px){.menu-layout{grid-template-columns:250px 1fr}}@media (max-width:768px){.menu-layout{grid-template-columns:1fr;height:auto}.menu-sidebar{max-height:300px}.items-grid{grid-template-columns:1fr}}.push-notifications-container{margin:0 auto;max-width:1400px;padding:20px}.page-header{margin-bottom:30px}.page-header h1{color:#231f20;font-size:2rem;margin-bottom:8px}.page-header p{color:#666;font-size:1rem}.alert{font-size:.95rem;margin-bottom:20px;padding:15px 20px}.alert-error{background-color:#fee}.alert-success{background-color:#efe;color:#060}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:20px;text-align:center;transition:transform .2s}.stat-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.stat-icon{font-size:2rem;margin-bottom:10px}.stat-value{color:#231f20;font-size:2rem;margin-bottom:5px}.stat-label{font-size:.9rem}.card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:25px;padding:25px}.card h2{color:#231f20;font-size:1.5rem;margin:0 0 20px}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.card-header h2{margin:0}.notification-form{gap:20px}.form-group,.notification-form{display:flex;flex-direction:column}.form-group label{color:#231f20;font-size:.95rem;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:8px;font-family:inherit;font-size:1rem;padding:12px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#d6de23;outline:none}.form-group textarea{min-height:100px}.form-row{grid-gap:20px;gap:20px}.btn{align-items:center;border-radius:8px;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:12px 24px}.btn:disabled{opacity:.5}.btn-primary{background-color:#d6de23;color:#231f20}.btn-primary:hover:not(:disabled){background-color:#c0ca1f}.btn-secondary{background-color:#f0f0f0;color:#231f20}.btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.filters{grid-gap:20px;background-color:#f8f8f8;border-radius:8px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:25px;padding:20px}.devices-list{display:flex;flex-direction:column;gap:12px}.device-card{background-color:#f8f8f8;border:1px solid #e0e0e0;border-radius:8px;padding:16px;transition:all .2s}.device-card:hover{background-color:#f0f0f0;border-color:#d6de23}.device-header{justify-content:space-between;margin-bottom:10px}.device-header,.device-info{align-items:center;display:flex}.device-info{gap:12px}.device-icon{font-size:1.5rem}.device-user{color:#231f20;font-size:1rem;font-weight:600}.device-token{font-family:Courier New,monospace;margin-top:4px}.device-meta,.device-token{color:#666;font-size:.85rem}.device-meta{display:flex;gap:20px}.badge{border-radius:12px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.badge-warning{background-color:#fff3cd;color:#856404}.badge-success{background-color:#d4edda;color:#155724}.empty-state,.loading-state{color:#666;font-size:1rem;padding:40px;text-align:center}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.filters,.form-row{grid-template-columns:1fr}.card-header{gap:15px}.card-header,.device-header{align-items:flex-start;flex-direction:column}.device-header{gap:10px}.device-meta{flex-direction:column;gap:5px}}.scheduling-container{margin:0 auto;max-width:1400px;padding:20px}.page-header{margin-bottom:24px}.page-header h1{color:#1a1a2e;font-size:28px;margin:0 0 8px}.page-description{color:#666;margin:0}.alert{border-radius:8px;margin-bottom:16px;padding:12px 16px}.alert-error{background:#fee;border:1px solid #fcc;color:#c00}.alert-success{background:#efe;border:1px solid #cfc;color:#080}.scheduling-tabs{border-bottom:2px solid #eee;display:flex;gap:8px;margin-bottom:24px;padding-bottom:12px}.tab-button{align-items:center;background:#f5f5f5;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.tab-button:hover{background:#e8e8e8}.tab-button.active{background:#1a1a2e;color:#fff}.tab-icon{font-size:16px}.tab-badge{align-items:center;background:#dc3545;border-radius:10px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;height:20px;justify-content:center;margin-left:8px;min-width:20px;padding:0 6px}.scheduling-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.employees-toolbar{border-bottom:1px solid #eee;gap:16px;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.employees-filters,.employees-toolbar{align-items:center;display:flex;flex-wrap:wrap}.employees-filters{gap:12px}.filter-search{border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:280px;padding:8px 12px}.filter-search:focus{border-color:#1a1a2e;outline:none}.filter-select{min-width:140px}.filter-select:focus{border-color:#1a1a2e}.employees-actions{align-items:center;display:flex;gap:16px}.results-count{color:#666;font-size:14px}.employees-table-container{overflow-x:auto}.employees-table{border-collapse:collapse;font-size:14px;width:100%}.employees-table th{background:#f5f5f5;border-bottom:2px solid #ddd;color:#333;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.employees-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.employees-table th.sortable:hover{background:#eee}.sort-indicator{color:#1a1a2e;font-size:10px;margin-left:4px}.employees-table td{border-bottom:1px solid #eee;padding:12px 16px;vertical-align:middle}.employees-table tbody tr:hover{background:#f9f9f9}.employees-table tbody tr.inactive-row{background:#fafafa;opacity:.6}.employee-name-cell strong{color:#1a1a2e}.role-tags{display:flex;flex-wrap:wrap;gap:4px}.role-tag{border-radius:12px;color:#fff;display:inline-block;font-size:11px;font-weight:500;padding:3px 8px}.no-roles{color:#999;font-size:13px;font-style:italic}.table-actions{display:flex;flex-wrap:nowrap;gap:6px}.table-actions .btn{white-space:nowrap}.empty-table-message{color:#666;font-style:italic;padding:40px!important;text-align:center}.view-header{display:flex;justify-content:flex-end;margin-bottom:20px}.items-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.item-card{background:#f9f9f9;border:1px solid #eee;border-radius:8px;padding:16px}.item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.item-header h3{font-size:16px;margin:0}.item-details{color:#555;font-size:14px}.item-details p{margin:4px 0}.item-actions{border-top:1px solid #eee;display:flex;gap:8px;margin-top:12px;padding-top:12px}.btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn-primary{background:#1a1a2e;color:#fff}.btn-primary:hover{background:#2d2d4a}.btn-secondary{background:#e8e8e8;color:#333}.btn-secondary:hover{background:#ddd}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}.btn-sm{font-size:12px;padding:4px 10px}.btn:disabled{cursor:not-allowed;opacity:.6}.status-badge{font-weight:500;padding:4px 8px;text-transform:capitalize}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.status-badge.draft{background:#fff3cd;color:#856404}.status-badge.published{background:#d4edda;color:#155724}.schedule-view .schedule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.date-selector{align-items:center;display:flex;gap:12px}.date-selector label{font-weight:500}.date-selector input[type=date]{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px}.schedule-actions{display:flex;gap:8px}.schedule-card{background:#f9f9f9;border:1px solid #eee;border-radius:8px;margin-bottom:16px;padding:20px}.schedule-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.schedule-mode{background:#eee;border-radius:4px;color:#666;font-size:12px;margin-left:8px;padding:2px 8px}.schedule-warnings{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin-bottom:16px;padding:12px}.warning-item{color:#856404;font-size:13px;margin:4px 0}.schedule-summary{display:flex;gap:24px;margin-bottom:16px}.shift-assignments h4{color:#666;font-size:14px;margin:0 0 12px}.assignments-table{border-collapse:collapse;width:100%}.assignments-table td,.assignments-table th{border-bottom:1px solid #eee;padding:8px 12px;text-align:left}.assignments-table th{background:#f0f0f0;font-size:13px;font-weight:500}.assignments-table td{font-size:14px}.no-assignments{color:#999;font-style:italic}.empty-state{color:#666}.modal-overlay{background:#00000080}.modal{background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-large{max-width:700px}.modal-header{border-bottom:1px solid #eee}.modal-header h2{font-size:20px;margin:0}.close-btn{background:none;border:none;color:#999;cursor:pointer;font-size:24px}.close-btn:hover{color:#333}.modal-footer{border-top:1px solid #eee;display:flex;gap:12px;justify-content:flex-end;padding:20px}.form-group label{font-weight:500}.form-group input[type=email],.form-group input[type=number],.form-group input[type=tel],.form-group input[type=text],.form-group input[type=time],.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.form-group input[type=color]{border:1px solid #ddd;border-radius:6px;cursor:pointer;height:36px;padding:2px;width:60px}.form-group textarea{min-height:80px;resize:vertical}.form-group small{color:#888;display:block;font-size:12px;margin-top:4px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-group.horizontal{flex-direction:row;flex-wrap:wrap}.checkbox-label{font-size:14px;gap:8px}.checkbox-label input[type=checkbox]{height:16px;width:16px}.required-roles-editor{display:flex;flex-direction:column;gap:8px}.role-count-row{align-items:center;background:#f5f5f5;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.role-count-row input{border:1px solid #ddd;border-radius:4px;padding:6px 8px;text-align:center;width:60px}.required-roles-list{font-size:13px;margin:4px 0 0;padding-left:20px}.required-roles-list li{margin:2px 0}.password-display{align-items:center;background:#f5f5f5;border-radius:8px;display:flex;gap:12px;margin:16px 0;padding:12px}.password-display code{flex:1 1;font-family:monospace;font-size:18px;letter-spacing:1px}.warning-text{background:#fff3cd;border-radius:6px;color:#856404;font-size:13px;padding:12px}.weekly-calendar{display:flex;flex-direction:column;gap:16px}.calendar-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding-bottom:16px}.week-navigation{align-items:center;display:flex;gap:12px}.week-label{font-size:18px;font-weight:600;min-width:200px;text-align:center}.week-actions{display:flex;gap:8px}.calendar-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr);min-height:400px}.day-column{background:#f9f9f9;border-radius:8px;display:flex;flex-direction:column;min-height:300px;overflow:hidden}.day-column.today{box-shadow:0 0 0 2px #1a1a2e}.day-header{align-items:center;background:#eee;display:flex;font-weight:500;gap:8px;justify-content:center;padding:12px 8px;text-align:center}.day-name{font-size:14px}.day-status{border-radius:10px;font-size:10px;font-weight:600;padding:2px 6px}.day-status.draft{background:#fff3cd;color:#856404}.day-status.published{background:#d4edda;color:#155724}.day-shifts{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-y:auto;padding:8px}.no-shifts{color:#999;font-size:13px;font-style:italic;padding:20px 8px;text-align:center}.shift-block{background:#fff;border-left:4px solid #4caf50;border-radius:6px;box-shadow:0 1px 3px #0000001a;padding:10px;position:relative}.shift-block.understaffed{background:#fff5f5;border-color:#dc3545}.shift-block .shift-header{align-items:center;display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px}.shift-block .shift-header strong{font-size:14px}.shift-time{color:#666;font-size:11px}.shift-employees{display:flex;flex-direction:column;gap:4px}.no-staff{color:#999;font-size:12px;font-style:italic}.employee-chip{align-items:center;background:#f0f0f0;border-radius:4px;display:flex;font-size:12px;justify-content:space-between;padding:4px 8px}.employee-role{color:#666;font-size:11px;margin-left:4px}.warning-badge{align-items:center;background:#dc3545;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:18px;justify-content:center;position:absolute;right:6px;top:6px;width:18px}.demand-planning-view{display:flex;flex-direction:column;gap:24px}.demand-header{align-items:flex-start;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding-bottom:16px}.demand-title-section h3{color:#1a1a2e;font-size:20px;margin:0 0 4px}.demand-title-section p{color:#666;font-size:14px;margin:0}.demand-actions{align-items:center;display:flex;gap:16px}.unsaved-indicator{color:#ffc107;font-size:13px;font-weight:500}.demand-view-mode{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.view-mode-tabs{background:#f0f0f0;border-radius:8px;display:flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.view-mode-tab{background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s}.view-mode-tab:hover{color:#333}.view-mode-tab.active{background:#fff;box-shadow:0 2px 4px #0000001a;color:#1a1a2e}.demand-week-navigation{align-items:center;display:flex;gap:12px}.demand-week-label{color:#1a1a2e;font-size:16px;font-weight:600;min-width:180px;text-align:center}.week-override-indicator{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;font-size:13px;padding:8px 16px}.demand-settings{background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:40px;padding:16px 20px}.capacity-setting{align-items:center;display:flex;gap:12px}.capacity-setting label{color:#333;font-weight:600}.capacity-setting input{border:1px solid #ddd;border-radius:6px;font-size:16px;padding:8px 12px;text-align:center;width:100px}.setting-hint{color:#666;font-size:13px}.length-of-stay-setting{display:flex;flex-direction:column;gap:8px;min-width:220px}.length-of-stay-setting label{color:#333;font-weight:600}.stay-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#4caf50,#ffc107,#dc3545);border-radius:3px;cursor:pointer;height:6px;width:100%}.stay-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#1a1a2e;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:18px;width:18px}.stay-slider::-moz-range-thumb{background:#1a1a2e;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:18px;width:18px}.slider-labels{color:#999;display:flex;font-size:11px;justify-content:space-between}.demand-summary-cards{display:flex;gap:16px}.demand-summary-cards .summary-card{background:linear-gradient(135deg,#1a1a2e,#2d2d44);border-radius:12px;color:#fff;flex:1 1;padding:20px;text-align:center}.demand-summary-cards .summary-value{display:block;font-size:28px;font-weight:700;margin-bottom:4px}.demand-summary-cards .summary-label{font-size:13px;opacity:.8}.demand-summary-cards .summary-card.highlight{background:linear-gradient(135deg,#dc3545,#c82333)}.demand-summary-cards .summary-hint{display:block;font-size:11px;margin-top:4px;opacity:.7}.demand-summary-cards.online-orders-summary{margin-top:12px}.demand-summary-cards .summary-card.online{background:linear-gradient(135deg,#2e7d32,#388e3c)}.demand-summary-cards .summary-card.online.highlight{background:linear-gradient(135deg,#ff9800,#f57c00)}.online-order-input{background:#e8f5e9!important;border-color:#4caf50!important}.online-order-input:focus{border-color:#2e7d32!important;box-shadow:0 0 0 2px #2e7d3233!important}.online-order-input.override-input{background:#fff3e0!important;border-color:#ff9800!important}.in-person-input{background:#fff!important}.kitchen-load{color:#ff9800;font-weight:600}.demand-day-selector{background:#f5f5f5;border-radius:10px;display:flex;gap:8px;padding:8px}.day-tab{align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;padding:12px 8px;transition:all .2s}.day-tab:hover{background:#e9e9e9}.day-tab.active{background:#fff;box-shadow:0 2px 8px #0000001a}.day-tab-name{color:#333;font-size:14px;font-weight:600}.day-tab-total{color:#666;font-size:12px;margin-top:2px}.day-tab.active .day-tab-name{color:#1a1a2e}.demand-editor{display:flex;flex-direction:column;gap:20px}.demand-editor-header{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:12px;color:#fff;display:flex;flex-direction:column;padding:16px 24px;text-align:center}.editing-day-title{font-size:28px;font-weight:700;letter-spacing:.5px;margin:0}.editing-day-subtitle{font-size:14px;margin-top:4px;opacity:.8}.demand-copy-actions{align-items:center;background:#f0f7ff;border-radius:8px;color:#333;display:flex;font-size:14px;gap:12px;padding:12px 16px}.demand-chart{background:#fafafa;border-radius:12px;display:flex;flex-direction:column;min-height:320px;overflow:hidden;padding:20px;position:relative}.demand-chart-inner{display:flex;flex:1 1;overflow-x:auto}.chart-legend{display:flex;gap:20px;justify-content:center;margin-bottom:16px}.legend-item{align-items:center;color:#666;display:flex;font-size:12px;gap:6px}.legend-item .legend-color{border-radius:3px;height:14px;width:14px}.legend-item.arrivals .legend-color{background:#4caf50}.legend-item.occupied .legend-color{background:#1a1a2e99;border:2px solid #1a1a2e}.legend-item.capacity .legend-color{background:#0000;border-top:2px dashed #dc3545;height:0;width:20px}.demand-chart-body{display:flex;flex:1 1}.chart-y-axis{color:#666;display:flex;flex-direction:column;font-size:11px;justify-content:space-between;min-width:40px;padding-right:12px;text-align:right}.chart-bars{align-items:flex-end;border-bottom:1px solid #ddd;border-left:1px solid #ddd;display:flex;flex:1 1;gap:2px;min-width:0;overflow-x:auto;padding:0 4px 28px;position:relative}.chart-bar-container{align-items:center;display:flex;flex:0 0 auto;flex-direction:column;height:200px;position:relative;width:20px}.chart-bar-wrapper{align-items:flex-end;height:100%;width:100%}.chart-bar,.chart-bar-wrapper{bottom:0;display:flex;justify-content:center;position:absolute}.chart-bar{align-items:flex-start;border-radius:4px 4px 0 0;min-height:2px;padding-top:4px;transition:height .3s ease}.chart-bar.concurrent{background:#1a1a2e26;border:2px solid #1a1a2e66;border-bottom:none;width:100%;z-index:1}.chart-bar.concurrent.over-capacity{background:#dc354533;border-color:#dc3545}.chart-bar.arrivals{background:linear-gradient(180deg,#4caf50,#45a049);width:60%;z-index:2}.bar-value{font-size:8px;font-weight:600}.bar-value.concurrent-value{color:#1a1a2e;display:none;font-size:8px;position:absolute;top:-14px}.chart-bar-container:hover .bar-value.concurrent-value{display:block}.chart-bar.concurrent.over-capacity .concurrent-value{color:#dc3545;display:block}.bar-value.arrivals-value{color:#fff;font-size:7px}.bar-label{bottom:-26px;color:#666;font-size:8px;position:absolute;transform:rotate(-45deg);transform-origin:top center;white-space:nowrap}.capacity-line{border-top:2px dashed #dc3545;height:0;left:60px;opacity:.5;pointer-events:none;position:absolute;right:20px}.demand-inputs{background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;max-height:500px;overflow:hidden}.demand-inputs-body{flex:1 1;overflow-y:auto}.inputs-header{background:#f5f5f5;border-bottom:1px solid #e0e0e0;color:#333;font-size:13px;font-weight:600;padding:12px 16px}.demand-input-row,.inputs-header{display:grid;grid-template-columns:90px 1fr 1fr 100px 90px}.demand-input-row{align-items:center;border-bottom:1px solid #eee;padding:10px 16px}.seats-occupied{background:#1a1a2e14;border-radius:4px;color:#1a1a2e;font-weight:600;padding:4px 8px;text-align:center}.seats-occupied.over-capacity{background:#dc35451a;color:#dc3545}.demand-input-row:last-child{border-bottom:none}.demand-input-row.hour-start{background:#fafafa;border-top:2px solid #ddd}.demand-input-row.has-override{background:#fff8e6}.demand-input-row.has-override.hour-start{background:#fff3cd}.override-badge{color:#ffc107;font-weight:700;margin-left:4px}.override-input{background:#fffef5!important;border-color:#ffc107!important}.chart-bar.arrivals.override{background:linear-gradient(180deg,#ffc107,#e0a800)}.chart-bar-container.has-override .bar-label{color:#856404;font-weight:600}.input-hour{color:#333;font-weight:500}.demand-input-row input{border:1px solid #ddd;border-radius:6px;font-size:14px;max-width:120px;padding:8px 12px;text-align:center;width:100%}.demand-input-row input:focus{border-color:#1a1a2e;outline:none}.input-percentage{color:#666;font-size:13px;text-align:right}.input-percentage.high{color:#ffc107;font-weight:600}.input-percentage.over{color:#dc3545;font-weight:600}.demand-weekly-overview{margin-top:20px}.demand-weekly-overview h4{color:#333;font-size:16px;margin:0 0 16px}.weekly-heatmap{overflow-x:auto;padding-bottom:8px}.heatmap-header{grid-gap:1px;display:grid;gap:1px;grid-template-columns:50px repeat(11,1fr);margin-bottom:2px;min-width:950px}.heatmap-hour{color:#666;font-size:10px;padding:4px;text-align:center}.heatmap-hour-group{color:#666;font-size:10px;font-weight:500;padding:4px 0;text-align:left}.heatmap-row{grid-gap:1px;display:grid;gap:1px;grid-template-columns:50px repeat(44,1fr);margin-bottom:1px;min-width:950px}.heatmap-day{color:#333;font-size:11px}.heatmap-cell,.heatmap-day{align-items:center;display:flex;font-weight:500}.heatmap-cell{border-radius:2px;cursor:default;font-size:9px;justify-content:center;min-height:24px;min-width:18px;transition:transform .1s}.heatmap-cell.hour-start{border-left:1px solid #0000001a}.heatmap-cell:hover{transform:scale(1.2);z-index:1}.requests-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.requests-header h3{color:#1a1a2e;font-size:20px;margin:0}.requests-list{display:flex;flex-direction:column;gap:20px}.request-detail-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.request-detail-header{align-items:center;background:linear-gradient(135deg,#ffc107,#ffca2c);color:#1a1a2e;display:flex;justify-content:space-between;padding:16px 20px}.request-employee-info{align-items:center;display:flex;gap:12px}.request-employee-info h3{font-size:18px;font-weight:600;margin:0}.request-meta{font-size:13px;opacity:.8}.request-detail-body{padding:20px}.request-summary-row{border-bottom:1px solid #eee;display:flex;gap:24px;margin-bottom:20px;padding-bottom:16px}.summary-stat{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;min-width:120px;padding:12px 20px}.stat-value{color:#1a1a2e;font-size:24px;font-weight:700}.stat-label{color:#666;font-size:12px;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.request-notes{background:#fff3cd;border-radius:8px;color:#856404;font-size:14px;margin-bottom:20px;padding:12px 16px}.request-notes strong{margin-right:8px}.availability-detail-grid{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.availability-detail-header{background:#f5f5f5;border-bottom:1px solid #e0e0e0;color:#333;font-size:13px;font-weight:600}.availability-detail-header,.availability-detail-row{display:grid;grid-template-columns:1fr 1fr 1fr 80px;padding:12px 16px}.availability-detail-row{align-items:center;border-bottom:1px solid #eee;font-size:14px}.availability-detail-row:last-child{border-bottom:none}.availability-detail-row.available{background:#fff}.availability-detail-row.unavailable{background:#fafafa;color:#999}.availability-detail-row .day-name{font-weight:500}.availability-status{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px}.availability-status.available{background:#d4edda;color:#155724}.availability-status.unavailable{background:#f8f8f8;color:#999}.time-range{font-family:SF Mono,Monaco,monospace;font-size:13px}.day-hours{font-weight:500;text-align:right}.request-detail-actions{background:#f8f9fa;border-top:1px solid #eee;display:flex;gap:12px;padding:16px 20px}.request-detail-actions .btn{flex:1 1;font-size:14px;font-weight:600;padding:12px 20px}.status-badge.pending{background:#ffffffe6;color:#856404;font-size:12px;padding:4px 10px}.status-badge.approved{background:#d4edda;color:#155724}.status-badge.rejected{background:#f8d7da;color:#721c24}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover{background:#138496}.modal-large{max-width:600px;width:90%}.error-state,.loading-state{color:#666;padding:40px 20px;text-align:center}.error-state{color:#dc3545}.empty-state{padding:40px 20px}.empty-state p{color:#333;margin:0 0 8px}.hint-text{color:#666;font-size:14px}.availability-display{display:flex;flex-direction:column;gap:20px}.availability-hours-summary{display:flex;justify-content:center}.hours-stat{align-items:center;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:12px;display:flex;flex-direction:column;padding:16px 32px}.hours-stat .stat-value{color:#1a1a2e;font-size:28px;font-weight:700}.hours-stat .stat-label{color:#666;font-size:13px;margin-top:4px}.availability-notes{background:#f0f7ff;border-radius:8px;font-size:14px;padding:12px 16px}.availability-notes strong{margin-right:8px}.availability-grid{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.availability-grid-header{background:#f5f5f5;border-bottom:1px solid #e0e0e0;color:#333;font-size:13px;font-weight:600}.availability-grid-header,.availability-grid-row{display:grid;grid-template-columns:1fr 1fr 1fr;padding:12px 16px}.availability-grid-row{align-items:center;border-bottom:1px solid #eee}.availability-grid-row:last-child{border-bottom:none}.availability-grid-row.available{background:#fff}.availability-grid-row.unavailable{background:#fafafa}.availability-grid-row .day-name{font-weight:500}.availability-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px}.availability-badge.available{background:#d4edda;color:#155724}.availability-badge.unavailable{background:#f8f8f8;color:#999}.availability-grid-row .time-range{color:#333;font-family:SF Mono,Monaco,monospace;font-size:13px}.availability-grid-row.unavailable .time-range{color:#999}.availability-updated{border-top:1px solid #eee;color:#666;font-size:13px;padding-top:8px;text-align:center}@media (max-width:1200px){.calendar-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:768px){.scheduling-tabs{flex-wrap:wrap}.tab-button{flex:1 1;justify-content:center;min-width:100px}.form-row,.items-grid{grid-template-columns:1fr}.calendar-header{align-items:stretch;flex-direction:column}.week-actions,.week-navigation{justify-content:center}.calendar-grid{grid-template-columns:repeat(2,1fr)}.day-column{min-height:200px}.demand-header{gap:16px}.demand-header,.demand-summary-cards{flex-direction:column}.demand-day-selector{flex-wrap:wrap}.day-tab{min-width:calc(25% - 6px)}.demand-copy-actions{flex-wrap:wrap}.demand-chart{flex-direction:column}.chart-y-axis{flex-direction:row;padding:0 0 8px}.chart-bars{border-left:none;border-top:1px solid #ddd;padding-top:8px}.weekly-heatmap{font-size:10px}.heatmap-cell{font-size:9px;min-height:28px;min-width:28px}.employees-toolbar{align-items:stretch;flex-direction:column}.employees-filters{flex-direction:column;width:100%}.filter-search,.filter-select{min-width:100%;width:100%}.employees-actions{justify-content:space-between;width:100%}.employees-table td,.employees-table th{font-size:13px;padding:8px 10px}.table-actions{flex-direction:column;gap:4px}.table-actions .btn{text-align:center;width:100%}.request-detail-header{flex-direction:column;gap:12px;text-align:center}.request-employee-info{flex-direction:column;gap:8px}.request-summary-row{flex-direction:column;gap:12px}.summary-stat{min-width:auto;width:100%}.availability-detail-header,.availability-detail-row{gap:8px;grid-template-columns:1fr 1fr}.availability-detail-header span:nth-child(3),.availability-detail-header span:nth-child(4),.availability-detail-row .day-hours,.availability-detail-row .time-range{display:none}.request-detail-actions{flex-direction:column}}@media (max-width:480px){.calendar-grid{grid-template-columns:1fr}.employees-table td:nth-child(3),.employees-table th:nth-child(3){display:none}}.week-summary-bar{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:10px;display:flex;flex-wrap:wrap;gap:24px;padding:12px 20px}.week-summary-bar .summary-stat{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;min-width:80px;padding:8px 16px}.week-summary-bar .stat-label{color:#666;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.week-summary-bar .stat-value{color:#1a1a2e;font-size:18px;font-weight:700}.week-summary-bar .stat-value.warning{color:#dc3545}.optimization-metrics-panel{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:16px;padding:20px}.optimization-metrics-panel h4{border-bottom:1px solid #eee;color:#1a1a2e;font-size:18px;margin:0 0 16px;padding-bottom:12px}.metrics-section{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:16px}.metrics-section:last-child{margin-bottom:0}.metrics-section.warning{background:#fff3cd;border:1px solid #ffc107}.metrics-section.info{background:#e3f2fd;border:1px solid #2196f3}.metrics-section h5{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.metrics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.metric-item{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;padding:12px}.metric-label{color:#666;font-size:11px;letter-spacing:.3px;margin-bottom:4px;text-transform:uppercase}.metric-value{color:#1a1a2e;font-size:20px;font-weight:700}.metric-value.overtime{color:#ff9800}.metrics-list{list-style:none;margin:0;padding:0}.metrics-list li{align-items:center;background:#fff;border-radius:6px;display:flex;font-size:13px;justify-content:space-between;margin-bottom:6px;padding:8px 12px}.metrics-list li:last-child{margin-bottom:0}.metrics-list li.overtime-willing{border-left:3px solid #28a745}.metrics-list li.overtime-unwilling{border-left:3px solid #ff9800}.metrics-list li.at-limit{background:#fff5f5;border-left:3px solid #dc3545}.metrics-list .emp-name{color:#333;font-weight:500}.metrics-list .emp-hours{color:#666;margin-left:8px}.metrics-list .emp-status{color:#999;font-size:11px;margin-left:auto}.metrics-list .gap-date{color:#856404;font-weight:500;margin-right:8px}.metrics-list .gap-shift{color:#666;margin-right:8px}.metrics-list .gap-info{color:#dc3545;font-weight:500;margin-left:auto}.employee-hours-table{overflow-x:auto}.employee-hours-table table{border-collapse:collapse;font-size:13px;width:100%}.employee-hours-table th{background:#f5f5f5;border-bottom:2px solid #ddd;color:#333;font-weight:600;padding:10px 12px;text-align:left;white-space:nowrap}.employee-hours-table td{border-bottom:1px solid #eee;padding:10px 12px}.employee-hours-table tr.has-overtime{background:#fffbe6}.employee-hours-table td.overtime{color:#ff9800;font-weight:600}.employee-hours-table td.preference{color:#666;font-size:11px}.day-footer{background:#f0f0f0;border-top:1px solid #ddd;color:#666;display:flex;font-size:12px;justify-content:space-between;padding:8px 12px}.day-footer .day-hours{font-weight:500}.day-footer .day-cost{color:#28a745;font-weight:500}.employee-chip.overtime{background:#fff3cd;border:1px solid #ffc107}.overtime-badge{background:#fff8e1;border-radius:3px;color:#ff9800;display:inline-block;font-size:9px;font-weight:700;margin-left:4px;padding:1px 4px}.coverage-warning{border-top:1px dashed #dc3545;margin-top:8px;padding-top:8px}.coverage-warning .gap-info{color:#dc3545;display:block;font-size:11px;font-weight:500}@media (max-width:768px){.week-summary-bar{justify-content:center}.week-summary-bar .summary-stat{min-width:70px;padding:6px 12px}.week-summary-bar .stat-value{font-size:16px}.optimization-metrics-panel{padding:12px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.employee-hours-table td,.employee-hours-table th{font-size:12px;padding:8px}}.rewards-container{width:100%}.page-header-section h2{font-weight:700}.page-header-section p{font-size:16px}.content-header{gap:16px;justify-content:space-between;margin-bottom:20px}.content-header,.header-left{align-items:center;display:flex;flex-wrap:wrap}.header-left{gap:20px}.header-left h3{color:#333;font-size:20px;font-weight:600;margin:0}.filter-group{align-items:center;display:flex;gap:8px}.filter-group label{color:#666;font-size:14px}.filter-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px}.filter-select:focus{border-color:#ff6b35;outline:none}.header-actions{display:flex;gap:12px}.refresh-button{background-color:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.refresh-button:hover:not(:disabled){background-color:#5a6268}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.grant-button{background-color:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.grant-button:hover{background-color:#218838;transform:translateY(-1px)}.grant-button-large{background-color:#28a745;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:16px 32px;transition:all .2s}.grant-button-large:hover{background-color:#218838;box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.error-banner{background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;margin-bottom:20px;padding:16px}.success-banner{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724;font-size:14px;margin-bottom:20px;padding:12px 16px}.loading-state{padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#ff6b35;height:50px;margin:0 auto 20px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-state{color:#999;font-size:16px;padding:60px 20px;text-align:center}.rewards-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow:hidden}.rewards-table{border-collapse:collapse;width:100%}.rewards-table thead{background-color:#f8f9fa}.rewards-table th{border-bottom:2px solid #e0e0e0;color:#555;font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.rewards-table td{border-bottom:1px solid #f0f0f0;color:#333;font-size:14px;padding:16px}.rewards-table tbody tr:hover{background-color:#fafafa}.user-cell{color:#ff6b35;font-weight:600}.user-cell.everyone{color:#7060a9}.everyone-badge{background:linear-gradient(135deg,#7060a9,#9b8ec9);border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.item-cell{display:flex;flex-direction:column;gap:4px}.item-name{color:#333;font-weight:600}.item-category{color:#888;font-size:12px}.discount-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:700;padding:4px 12px;text-transform:uppercase}.discount-badge.free{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.discount-badge.discounted{background-color:#fff3cd;color:#856404}.status-badge{border-radius:12px;display:inline-block;font-size:12px;padding:4px 12px;text-transform:uppercase}.status-active{background-color:#d4edda;color:#155724}.status-redeemed{background-color:#cce5ff;color:#004085}.status-expired{background-color:#f8d7da;color:#721c24}.status-unknown{background-color:#e2e3e5;color:#383d41}.date-cell{color:#666;font-size:13px}.note-cell{color:#888;font-size:13px;font-style:italic;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rewards-count{color:#666;font-size:14px;margin-top:10px;text-align:right}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.grant-modal{max-width:550px}.modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.modal-header h3{color:#333;font-size:20px;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:28px;height:30px;justify-content:center;padding:0;transition:all .2s;width:30px}.close-button:hover{background-color:#f0f0f0;color:#333}.modal-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:#555;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.form-group input,.form-group select,.form-select{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-select:focus{border-color:#ff6b35;outline:none}.form-group input:disabled,.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:400}.checkbox-label input[type=checkbox]{cursor:pointer;margin-right:10px;transform:scale(1.2);width:auto}.checkbox-text{color:#333;font-size:14px;font-weight:600}.discount-input-group{align-items:center;display:flex;gap:16px}.discount-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#ff6b35,#28a745);border-radius:4px;flex:1 1;height:8px;outline:none}.discount-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:3px solid #ff6b35;border-radius:50%;box-shadow:0 2px 6px #0003;cursor:pointer;height:20px;width:20px}.discount-value{color:#ff6b35;font-size:16px;font-weight:700;min-width:80px;text-align:right}.help-text{color:#6c757d;display:block;font-size:12px;font-style:italic;margin-top:6px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.cancel-button{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.cancel-button:hover:not(:disabled){background-color:#5a6268}.cancel-button:disabled{cursor:not-allowed;opacity:.6}.submit-button{background-color:#ff6b35;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.grant-submit{background-color:#28a745}.grant-submit:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.submit-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.page-header-section h2{font-size:24px}.content-header,.header-left{align-items:flex-start;flex-direction:column}.header-actions,.header-left{width:100%}.header-actions button{flex:1 1}.rewards-table-container{overflow-x:auto}.rewards-table{min-width:700px}.modal-content{width:95%}.discount-input-group{align-items:stretch;flex-direction:column}.discount-value{text-align:center}}.mock-data-demo-container{padding:20px}.page-header-section{border-bottom:2px solid #e0e0e0;margin-bottom:30px;padding-bottom:15px}.page-header-section h2{color:#333;font-size:28px;margin:0 0 10px}.page-header-section p{color:#666;font-size:14px;margin:0}.demo-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.demo-tab{background:#f5f5f5;border:2px solid #ddd;border-radius:8px;color:#555;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s ease}.demo-tab:hover{background:#e8e8e8;border-color:#ccc}.demo-tab.active{background:#2196f3;border-color:#2196f3;color:#fff}.api-info{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.api-badge{background:#4caf50}.api-badge,.schema-info{border-radius:4px;color:#fff;font-size:12px;font-weight:600;padding:5px 12px}.schema-info{background:#ff9800}.mock-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.mock-table-container h3{color:#333;font-size:20px;margin:0 0 15px}.mock-table{border-collapse:collapse;margin-top:10px;width:100%}.mock-table thead{background:#f5f5f5}.mock-table th{border-bottom:2px solid #ddd;color:#555;font-size:13px;font-weight:600;padding:12px;text-align:left}.mock-table td{border-bottom:1px solid #eee;color:#333;font-size:13px;padding:12px}.mock-table tbody tr:hover{background:#f9f9f9}.guid-code{background:#f0f0f0;color:#666}.guid-code,.kitchen-name{border-radius:4px;font-family:Courier New,monospace;font-size:11px;padding:3px 8px}.kitchen-name{background:#fff3e0;color:#e65100;font-weight:600}.price-cell{color:#2e7d32;font-weight:600}.strategy-badge{background:#e3f2fd;border-radius:4px;color:#1565c0;font-size:11px;font-weight:600;padding:3px 8px}.order-card{background:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:20px;padding:20px}.order-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.dining-badge{background:#9c27b0;border-radius:4px;color:#fff;font-size:12px;font-weight:600;padding:5px 12px}.order-details{grid-gap:10px;background:#f9f9f9;border-radius:4px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:15px;padding:10px}.check-section{background:#fafafa;border-radius:6px;margin-top:15px;padding:15px}.check-section h4{color:#333;margin:0 0 10px}.check-totals{display:flex;font-size:14px;gap:20px;margin-bottom:15px}.selections-table{border-collapse:collapse;margin-bottom:10px;width:100%}.selections-table th{background:#e0e0e0;font-size:12px;padding:8px;text-align:left}.selections-table td{border-bottom:1px solid #e0e0e0;font-size:12px;padding:8px}.payments-section{background:#e8f5e9;border-radius:4px;margin-top:10px;padding:10px}.payment-item{align-items:center;display:flex;justify-content:space-between;padding:5px 0}.payment-type{background:#1976d2}.payment-status,.payment-type{border-radius:3px;color:#fff;font-size:11px;font-weight:600;padding:3px 8px}.payment-status{background:#4caf50}.modifier-card{background:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:20px;padding:20px}.modifier-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.modifier-header h4{color:#333;margin:0}.modifier-details{grid-gap:10px;background:#f9f9f9;border-radius:4px;display:grid;font-size:13px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:15px;padding:10px}.modifier-options-table{border-collapse:collapse;width:100%}.modifier-options-table th{background:#e0e0e0;font-size:12px;padding:8px;text-align:left}.modifier-options-table td{border-bottom:1px solid #e0e0e0;font-size:12px;padding:8px}.payment-type-badge{background:#1976d2;color:#fff}.payment-type-badge,.status-badge{border-radius:4px;font-size:11px;font-weight:600;padding:4px 10px}.status-active{background:#c8e6c9;color:#2e7d32}.status-completed{background:#b3e5fc;color:#01579b}.restaurant-config{display:flex;flex-direction:column;gap:20px}.config-section{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:15px}.config-section h4{border-bottom:2px solid #f0f0f0;color:#333;font-size:16px;margin:0 0 15px;padding-bottom:8px}.config-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.config-item{display:flex;flex-direction:column;gap:5px}.config-item strong{color:#555;font-size:12px}.config-item code,.config-item span{color:#333;font-size:14px}.config-list{list-style:none;margin:0;padding:0}.config-list li{background:#f9f9f9;border-radius:4px;font-size:13px;margin-bottom:5px;padding:8px}.config-list code{background:#e0e0e0;border-radius:3px;font-size:11px;margin-right:8px;padding:2px 6px}.demo-info{margin-top:30px}.info-card{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;padding:20px}.info-card h4{color:#1565c0;font-size:18px;margin:0 0 10px}.info-card p{color:#333;font-size:14px;line-height:1.6;margin:0 0 10px}.info-card ul{margin:10px 0;padding-left:20px}.info-card li{color:#333;font-size:14px;margin-bottom:5px}.info-card .note{background:#ffffffb3;border-radius:4px;font-size:13px;margin-top:15px;padding:10px}.giftcard-demo-container{margin-top:20px}.setup-steps{justify-content:center;margin:30px 0;padding:20px}.setup-step,.setup-steps{align-items:center;display:flex}.setup-step{flex-direction:column;opacity:.5;transition:all .3s ease}.setup-step.active{opacity:1}.setup-step.completed .step-number{background:#4caf50;color:#fff}.step-number{align-items:center;background:#e0e0e0;border-radius:50%;color:#666;display:flex;font-size:20px;font-weight:600;height:50px;justify-content:center;margin-bottom:10px;transition:all .3s ease;width:50px}.setup-step.active .step-number{background:#2196f3;box-shadow:0 0 20px #2196f380;color:#fff}.step-label{color:#666;font-size:14px;font-weight:500}.setup-step.active .step-label{color:#333;font-weight:600}.step-connector{background:#e0e0e0;height:2px;margin:0 10px 35px;width:100px}.giftcard-step-content{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:30px}.giftcard-step-content h4{color:#333;font-size:20px;margin:0 0 10px}.giftcard-step-content p{color:#666;font-size:14px;margin:0 0 20px}.giftcard-form{background:#f9f9f9;border-radius:6px;margin-bottom:20px;padding:20px}.giftcard-form .form-group{margin-bottom:15px}.giftcard-form label{color:#555;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.giftcard-form input{border:2px solid #ddd;border-radius:6px;font-size:16px;padding:12px;transition:border-color .2s ease;width:100%}.giftcard-form input:focus{border-color:#2196f3;outline:none}.primary-button{background:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .2s ease}.primary-button:hover{background:#1976d2;box-shadow:0 4px 8px #2196f34d;transform:translateY(-2px)}.api-example{background:#263238;border-radius:6px;margin-top:20px;padding:20px}.api-example h5{color:#80cbc4;font-size:14px;margin:0 0 10px}.api-example pre{color:#b2dfdb;font-family:Courier New,monospace;font-size:12px;margin:0;overflow-x:auto}.giftcard-info-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 8px 16px #0003;margin-bottom:30px;padding:30px}.card-visual{color:#fff}.card-number{font-family:Courier New,monospace;font-size:18px;font-weight:600;letter-spacing:2px;margin-bottom:20px}.card-balance{font-size:48px;font-weight:700;margin-bottom:15px}.card-status{display:flex;justify-content:flex-end}.giftcard-actions{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.action-button{align-items:center;background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:15px 20px;transition:all .2s ease}.action-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.add-value-btn{border-color:#4caf50;color:#4caf50}.add-value-btn:hover{background:#4caf50;color:#fff}.check-balance-btn{border-color:#2196f3;color:#2196f3}.check-balance-btn:hover{background:#2196f3;color:#fff}.redeem-btn{border-color:#ff9800;color:#ff9800}.redeem-btn:hover{background:#ff9800;color:#fff}.history-btn{border-color:#9c27b0;color:#9c27b0}.history-btn:hover{background:#9c27b0;color:#fff}.transaction-types-info{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;padding:20px}.transaction-types-info h5{color:#1565c0;font-size:16px;margin:0 0 15px}.transaction-types-info ul{list-style:none;margin:0;padding:0}.transaction-types-info li{color:#333;font-size:14px;padding:8px 0}.giftcard-summary{grid-gap:15px;background:#f9f9f9;border-radius:6px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px;padding:20px}.summary-item{font-size:14px}.summary-item strong{color:#666;display:block;font-size:12px;margin-bottom:5px}.transaction-type-badge{background:#9c27b0;border-radius:4px;color:#fff;font-size:11px;font-weight:600;padding:4px 10px}.positive-amount{color:#4caf50;font-weight:600}.negative-amount{color:#f44336;font-weight:600}.demo-actions{align-items:center;border-top:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-top:30px;padding-top:20px}.secondary-button{background:#757575;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.secondary-button:hover{background:#616161}.reset-button{background:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.reset-button:hover{background:#d32f2f}@media (max-width:768px){.demo-tabs{flex-direction:column}.demo-tab{width:100%}.mock-table{font-size:12px}.mock-table td,.mock-table th{padding:8px}.config-grid{grid-template-columns:1fr}.setup-steps{flex-direction:column}.step-connector{height:50px;margin:10px 0;width:2px}.giftcard-actions{grid-template-columns:1fr}.demo-actions{flex-direction:column;gap:10px}.demo-actions button{width:100%}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{min-height:100vh}
/*# sourceMappingURL=main.9d4a9d4f.css.map*/