.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--amc-orange) 0%,var(--amc-orange-dark) 100%);padding:1rem;position:relative}.login-container:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background-image:url(/mt_bckg.png);background-size:100% 100%;background-position:bottom center;background-repeat:no-repeat;opacity:.8;pointer-events:none;z-index:0}.login-card{position:relative;z-index:1}.login-card{background:var(--white);border-radius:1rem;box-shadow:0 20px 60px #0000004d;padding:2.5rem;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:2rem}.login-logo{max-width:100px;height:auto;margin-bottom:1rem}.login-header h1{color:var(--amc-orange);font-size:2rem;margin-bottom:.5rem}.login-header p{color:var(--gray-600);font-size:.875rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.error-message{background-color:#fee;color:var(--error);padding:.75rem;border-radius:.375rem;font-size:.875rem;text-align:center}.role-selector{display:flex;flex-direction:column;gap:16px;padding:20px 0}.role-option{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 24px;background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s;text-align:center}.role-option:hover{border-color:#f4811f;background:#fff8f3;transform:translateY(-2px);box-shadow:0 4px 12px #f4811f33}.role-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center}.role-icon svg{width:48px;height:48px}.role-label{font-size:20px;font-weight:600;color:#333;margin:0}.role-description{font-size:14px;color:#666;margin:0}.login-footer{text-align:center;margin-top:1rem}.login-footer a{font-size:.875rem;color:var(--gray-600)}.login-footer a:hover{color:var(--amc-orange)}@media(max-width:768px){.login-container{padding:0;background:var(--white)}.login-card{box-shadow:none;border-radius:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:2rem}}.activate-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--amc-orange) 0%,var(--amc-orange-dark) 100%);padding:1rem;position:relative}.activate-container:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background-image:url(/mt_bckg.png);background-size:100% 100%;background-position:bottom center;background-repeat:no-repeat;opacity:.8;pointer-events:none;z-index:0}.activate-card{background:var(--white);border-radius:1rem;box-shadow:0 20px 60px #0000004d;padding:2.5rem;width:100%;max-width:500px;position:relative;z-index:1}.activate-header{text-align:center;margin-bottom:2rem}.activate-header h1{color:var(--amc-orange);font-size:1.75rem;margin-bottom:.75rem}.activate-header p{color:var(--gray-600);font-size:1rem}.activate-form{display:flex;flex-direction:column;gap:1.5rem}@media(max-width:768px){.activate-container{padding:0;background:var(--white)}.activate-card{box-shadow:none;border-radius:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:2rem}.activate-container:after{display:none}}.forgot-password-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--amc-orange) 0%,var(--amc-orange-dark) 100%);padding:1rem;position:relative}.forgot-password-container:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background-image:url(/mt_bckg.png);background-size:100% 100%;background-position:bottom center;background-repeat:no-repeat;opacity:.8;pointer-events:none;z-index:0}.forgot-password-card{background:var(--white);border-radius:1rem;box-shadow:0 20px 60px #0000004d;padding:2.5rem;width:100%;max-width:450px;position:relative;z-index:1}.forgot-password-header{text-align:center;margin-bottom:2rem}.forgot-password-header h1{color:var(--amc-orange);font-size:1.75rem;margin-bottom:.75rem}.forgot-password-header p{color:var(--gray-600);font-size:.95rem;line-height:1.5}.forgot-password-form{display:flex;flex-direction:column}.success-icon{font-size:4rem;text-align:center;margin-bottom:1rem}@media(max-width:768px){.forgot-password-container{padding:0;background:var(--white)}.forgot-password-card{box-shadow:none;border-radius:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:2rem}.forgot-password-container:after{display:none}}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem}.reset-password-container{width:100%;max-width:480px}.reset-password-card{background:#fff;border-radius:1rem;box-shadow:0 20px 60px #0000004d;overflow:hidden;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.logo-container{text-align:center;padding:2rem 2rem 1rem;background:linear-gradient(135deg,#f4811f,#e67300)}.logo{max-width:120px;height:auto;filter:brightness(0) invert(1)}.reset-password-header{padding:2rem 2rem 1rem;text-align:center}.reset-password-header h1{margin:0 0 .5rem;color:var(--gray-900);font-size:1.75rem}.reset-password-header p{margin:.5rem 0;color:var(--gray-600);font-size:.95rem}.email-display{margin-top:1rem!important;padding:.75rem 1rem;background:var(--gray-100);border-radius:.5rem;color:var(--amc-orange)!important;font-weight:600;font-size:1rem!important}.reset-password-form{padding:0 2rem 2rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--gray-700);font-size:.95rem}.form-group input{width:100%;padding:.875rem;border:2px solid var(--gray-300);border-radius:.5rem;font-size:1rem;transition:all .2s}.form-group input:focus{outline:none;border-color:var(--amc-orange);box-shadow:0 0 0 3px #f4811f1a}.btn-submit{width:100%;padding:1rem;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.btn-link{width:100%;background:none;border:none;color:var(--gray-600);font-size:.95rem;padding:.75rem;cursor:pointer;transition:color .2s}.btn-link:hover{color:var(--amc-orange)}.error-message{padding:1rem;background:#fee2e2;border:1px solid #ef4444;border-radius:.5rem;color:#991b1b;margin-bottom:1.5rem;font-size:.95rem}.success-state,.error-state{padding:2rem;text-align:center}.success-state svg{color:#10b981;margin-bottom:1.5rem}.error-state svg{color:#ef4444;margin-bottom:1.5rem}.success-state h2,.error-state h2{margin:0 0 1rem;color:var(--gray-900);font-size:1.5rem}.success-state p,.error-state p{margin:.5rem 0;color:var(--gray-600);font-size:1rem}.redirect-message{margin-top:1.5rem!important;color:var(--gray-500)!important;font-size:.875rem!important;font-style:italic}.success-state button,.error-state button{margin-top:2rem}.spinner{border:3px solid var(--gray-200);border-top-color:var(--amc-orange);border-radius:50%;width:3rem;height:3rem;animation:spin .8s linear infinite;margin:0 auto}@media(max-width:640px){.reset-password-page{padding:0}.reset-password-card{border-radius:0;min-height:100vh}.reset-password-header h1{font-size:1.5rem}.logo{max-width:100px}}.volunteer-list-container{padding:2rem;max-width:1400px;margin:0 auto}.volunteer-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.volunteer-list-header h1{margin:0}.volunteer-table-container{background:var(--white);border:1px solid var(--gray-200);border-radius:.5rem;overflow:hidden;box-shadow:0 1px 3px #00000014}.volunteer-table{width:100%;border-collapse:collapse}.volunteer-table thead{background-color:var(--gray-50)}.volunteer-table th{text-align:left;padding:1rem;font-weight:600;color:var(--gray-700);border-bottom:2px solid var(--gray-200)}.volunteer-table td{padding:1rem;border-bottom:1px solid var(--gray-200);color:var(--gray-800)}.volunteer-table tbody tr:hover{background-color:var(--gray-50)}.volunteer-table tbody tr:last-child td{border-bottom:none}.roles-list{display:flex;flex-wrap:wrap;gap:.5rem}.role-badge{display:inline-block;padding:.25rem .75rem;background-color:var(--gray-100);color:var(--gray-700);border-radius:1rem;font-size:.875rem;font-weight:500}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500}.status-active{background-color:#d1fae5;color:#065f46}.status-pending{background-color:#fef3c7;color:#92400e}.status-archived{background-color:var(--gray-200);color:var(--gray-600)}.btn-icon{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.25rem;transition:transform .2s}.btn-icon:hover{transform:scale(1.2)}.volunteer-cards-mobile{display:none}.volunteer-table-desktop{display:block}@media(max-width:767px){.volunteer-list-container{padding:0}.volunteer-list-header{flex-direction:column;align-items:stretch;gap:var(--mobile-gap);margin-bottom:1.5rem}.volunteer-list-header h1{font-size:1.5rem}.volunteer-list-header .btn-primary{width:100%;min-height:var(--touch-target-min);white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.volunteer-table-desktop{display:none}.volunteer-cards-mobile{display:flex;flex-direction:column;gap:1rem}.volunteer-card{background:var(--white);border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;gap:.75rem}.volunteer-card-main{display:flex;flex-direction:column;gap:.25rem}.volunteer-card-name{font-weight:600;color:var(--gray-800);font-size:1rem}.volunteer-card-meta{font-size:.875rem;color:var(--gray-600);word-break:break-all}.volunteer-card-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.volunteer-card-badges .role-badge{font-size:.75rem;padding:.2rem .5rem}.volunteer-card-status{margin-top:.25rem}.volunteer-card-actions{display:flex;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--gray-100)}.volunteer-card .btn-icon{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}}.add-volunteer-container{padding:2rem;max-width:800px;margin:0 auto}.add-volunteer-header{margin-bottom:2rem}.add-volunteer-header h1{margin-top:1rem}.volunteer-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.success-card{text-align:center;padding:3rem 2rem}.success-icon{display:flex;justify-content:center;margin-bottom:1.5rem}.success-icon svg{stroke:#10b981}.success-card h2{color:var(--gray-900);margin-bottom:1rem;font-size:1.5rem}.success-message{color:var(--gray-700);font-size:1rem;margin-bottom:1rem;line-height:1.6}.success-message strong{color:var(--amc-orange)}.success-instructions{background:#fff3e0;padding:1rem;border-radius:.5rem;color:var(--gray-700);font-size:.875rem;margin-bottom:2rem;border-left:4px solid var(--amc-orange)}.success-actions{display:flex;justify-content:center}@media(max-width:768px){.add-volunteer-container{padding:1rem}.roles-checkbox-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.event-list-container{padding:2rem;max-width:1400px;margin:0 auto}.event-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.event-list-header h1{margin:0}.event-card{background:var(--white);border:1px solid var(--gray-200);border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #00000014;transition:box-shadow .2s}.event-info-row{display:flex;gap:.5rem;font-size:.95rem}.event-card-actions .btn-secondary{flex:1}@media(max-width:767px){.event-list-container{padding:var(--mobile-padding)}.event-list-header{flex-direction:column;align-items:stretch;gap:var(--mobile-gap);margin-bottom:1.5rem}.event-list-header h1{font-size:1.5rem}.event-list-header button{width:100%;min-height:var(--touch-target-min)}.events-grid{grid-template-columns:1fr;gap:var(--mobile-gap)}.event-card{padding:var(--mobile-padding)}.event-card-actions{flex-direction:column}.event-card-actions button{width:100%;min-height:var(--touch-target-min)}}@media(min-width:768px){.event-list-container{padding:2rem}}.add-event-container{padding:2rem;max-width:900px;margin:0 auto}.add-event-header{margin-bottom:2rem}.add-event-header h1{margin-top:1rem}.btn-back{background:none;border:none;color:var(--gray-600);font-size:1rem;cursor:pointer;padding:.5rem 0;transition:color .2s}.event-form{display:flex;flex-direction:column;gap:1.5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.form-actions button{min-width:120px}@media(max-width:768px){.add-event-container{padding:1rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.meal-planning-v2{padding:2rem;max-width:1400px;margin:0 auto}.meal-planning-v2.meal-planning-inline{max-width:none;margin:0;padding:0}.meal-planning-inline .section-header-inline{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.meal-planning-inline .section-header-inline h2{margin:0;font-size:1.25rem}.planning-actions-inline{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.planning-actions-inline .btn-primary,.planning-actions-inline .btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem}.planning-actions-inline .btn-icon-label .btn-label{white-space:nowrap}.planning-actions-inline .btn-secondary.btn-icon-label{border:1px solid var(--gray-300);color:var(--gray-700)}.planning-actions-inline .btn-secondary.btn-icon-label:hover{background:var(--gray-50);border-color:var(--gray-400)}.planning-actions-inline .btn-secondary svg,.planning-actions-inline .btn-primary svg{flex-shrink:0;stroke:currentColor}.page-header h2{margin:0;color:var(--gray-900)}.event-info{color:var(--gray-600);font-size:.95rem;margin-top:.5rem}.planning-actions{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.planning-actions button{display:flex;align-items:center;gap:.5rem}.planning-actions button svg{width:18px;height:18px}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--gray-200)}.day-header h3{margin:0;color:var(--gray-900);font-size:1.3rem}.day-empty{text-align:center;padding:2rem;color:var(--gray-600)}.day-empty button{margin-top:1rem}.serving-time{color:var(--gray-600);font-size:.9rem;padding:.25rem .75rem;background:#fff;border-radius:4px;border:1px solid var(--gray-300)}.courses-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.course-label{font-size:.85rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.5px}.course-empty{min-height:80px;display:flex;align-items:center;justify-content:center}.btn-add-course{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fff;border:2px dashed var(--gray-300);border-radius:8px;color:var(--gray-600);cursor:pointer;transition:all .2s;font-size:.9rem}.btn-add-course:hover{border-color:var(--amc-orange);color:var(--amc-orange);background:var(--amc-orange-light)}.btn-add-course svg{width:16px;height:16px}.course-card{background:#fff;border:1px solid var(--gray-300);border-radius:8px;padding:1rem;transition:all .2s}.course-card.status-planned{border-left:4px solid var(--gray-400)}.course-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.course-title{display:flex;align-items:center;gap:.5rem;flex:1;flex-wrap:wrap}.course-name{font-weight:600;color:var(--gray-900)}.status-icon{font-size:1rem}.course-actions{display:flex;gap:.5rem}.course-status-info{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--gray-200);display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--gray-700)}.course-status-info.completed{color:var(--success-color)}.cook-info strong{color:var(--gray-900)}.snacks-section{margin-top:2rem;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;border:2px dashed var(--amc-orange-light)}.snacks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.snacks-header h3{margin:0;color:var(--gray-900)}.snacks-content{display:flex;flex-direction:column;gap:.75rem}.snacks-group{color:var(--gray-700)}.snacks-group strong{color:var(--gray-900);margin-right:.5rem}.modal-large{max-width:700px}.time-range-input{display:flex;align-items:center;gap:.75rem}.time-range-input input[type=time]{flex:1;padding:.75rem;border:1px solid var(--gray-300);border-radius:6px;font-size:1rem}.time-range-input span{color:var(--gray-600);font-weight:600}.checkbox-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto;padding:.5rem;border:1px solid var(--gray-200);border-radius:6px;background:var(--gray-50)}.checkbox-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s}.checkbox-item:hover{background:var(--amc-orange-light);border-color:var(--amc-orange)}.checkbox-item input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-item span{flex:1;color:var(--gray-900)}.recipe-preview{margin-top:1.5rem;padding:1.25rem;background:var(--gray-50);border-radius:8px;border:1px solid var(--gray-200)}.recipe-preview h4{margin:0 0 1rem;color:var(--gray-900)}.preview-info{margin-bottom:1rem}.preview-info p{margin:.5rem 0;color:var(--gray-700)}.preview-ingredients{margin-top:1rem}.preview-ingredients strong{display:block;margin-bottom:.5rem;color:var(--gray-900)}.preview-ingredients ul{margin:0;padding-left:1.5rem;color:var(--gray-700)}.preview-ingredients li{margin:.25rem 0}.cancel-info{margin-bottom:1.5rem;padding:1rem;background:var(--gray-50);border-radius:6px}.cancel-info p{margin:.5rem 0;color:var(--gray-700)}.warning-box{display:flex;gap:1rem;padding:1.25rem;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:1.5rem}.warning-box svg{width:24px;height:24px;color:#ff9800;flex-shrink:0}.warning-box li{margin:.25rem 0}.modal-description{color:var(--gray-600);font-size:.9rem;margin-bottom:1.5rem;padding:.75rem;background:var(--gray-50);border-radius:6px;text-align:center}.btn-danger{background:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#c82333}.btn-danger:disabled{background:var(--gray-400);cursor:not-allowed}@media(max-width:768px){.meal-planning-v2{padding:1rem}.meal-planning-inline .section-header-inline{flex-direction:column;align-items:stretch;gap:.75rem}.planning-actions-inline{flex-wrap:wrap;gap:.5rem}.planning-actions-inline .btn-icon-label .btn-label{display:none}.planning-actions-inline .btn-secondary{padding:.5rem;min-width:40px;min-height:40px;justify-content:center}.planning-actions-inline .btn-primary{width:100%;padding:.625rem 1rem;font-size:.875rem;justify-content:center}.courses-grid{grid-template-columns:1fr}.planning-actions{flex-direction:column}.planning-actions button{width:100%;justify-content:center}}.room-allocation-container{padding:2rem;max-width:1200px;margin:0 auto}.room-allocation-inline{padding:0}.room-allocation-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.room-allocation-header h1{margin:0;color:var(--text-primary)}.allocation-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin:0;color:var(--text-primary)}.allocated-rooms-list{display:grid;gap:1rem}.allocated-room-card{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--gray-50);border-radius:8px;border:1px solid var(--gray-200)}.room-header-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.room-info h3{margin:0;color:var(--text-primary);font-size:1.25rem}.room-status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.room-status-badge.status-pending{background:#fff3e0;color:#e65100;border:1px solid #FFB74D}.room-status-badge.status-in_progress{background:#e3f2fd;color:#1565c0;border:1px solid #64B5F6}.room-status-badge.status-ready{background:#e8f5e9;color:#2e7d32;border:1px solid #81C784}.room-details{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.room-badge{padding:.25rem .75rem;background:#fff;border:1px solid var(--gray-300);border-radius:4px;font-size:.875rem;color:var(--gray-700)}.partial-indicator{color:var(--warning);font-weight:600}.help-text-inline{display:block;font-size:.75rem;font-weight:400;color:var(--gray-600);margin-top:.25rem}.allocation-note{margin:.5rem 0 0;color:var(--gray-600);font-style:italic;font-size:.875rem}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}@media(max-width:768px){.room-allocation-container{padding:1rem}.allocated-room-card{flex-direction:column;align-items:flex-start;gap:1rem}}.event-report-container{padding:2rem;max-width:1000px;margin:0 auto}.event-report-inline{padding:0}.event-report-inline .report-content{box-shadow:none;padding:0}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.report-content{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}.report-title{text-align:center;margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid var(--primary)}.report-title h1{margin:0 0 .5rem;color:var(--primary);font-size:2rem}.report-title h2{margin:0 0 1rem;color:var(--text-primary)}.report-dates{margin:0;color:var(--gray-600);font-size:1rem}.report-section{margin-bottom:2rem}.report-section h3{margin:0 0 1rem;color:var(--primary);font-size:1.25rem;border-bottom:1px solid var(--gray-200);padding-bottom:.5rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.dashboard-card{background:#fff;border:1px solid var(--gray-200);border-radius:.75rem;padding:1.5rem;transition:all .2s}.dashboard-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.dashboard-card.highlight{background:linear-gradient(135deg,#fff5e6,#fff);border-color:var(--amc-orange)}.dashboard-card.income-card{background:linear-gradient(135deg,#f8fff9,#fff);border-color:#28a745}.dashboard-card.expense-card{background:linear-gradient(135deg,#fff8f8,#fff);border-color:#dc3545}.dashboard-card.profit-card.positive{background:linear-gradient(135deg,#d4edda,#f8fff9);border-color:#28a745}.dashboard-card.profit-card.negative{background:linear-gradient(135deg,#f8d7da,#fff8f8);border-color:#dc3545}.dashboard-card-header{display:flex;align-items:center;gap:.5rem;color:var(--gray-600);font-size:.875rem;margin-bottom:.75rem;font-weight:500}.dashboard-card-header svg{opacity:.7}.dashboard-card-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:.5rem}.dashboard-card-subtext{font-size:.875rem;color:var(--gray-600)}.dashboard-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.dashboard-section{background:#fff;border:1px solid var(--gray-200);border-radius:.75rem;padding:1.5rem}.dashboard-section h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;color:var(--text-primary);font-size:1rem;font-weight:600}.dashboard-section h3 svg{opacity:.7}.resource-summary{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.resource-row{display:flex;justify-content:space-between;padding:.625rem;background:var(--gray-50);border-radius:.375rem;font-size:.875rem}.resource-row.highlight{background:#fff5e6;border:1px solid var(--amc-orange);font-weight:600}.resource-row.subtle{background:transparent;border-left:2px solid var(--gray-300);padding-left:.75rem;font-size:.8125rem;color:var(--gray-600)}.resource-value{font-weight:600;color:var(--text-primary)}.warning-list{display:flex;flex-direction:column;gap:.75rem}.warning-item{display:flex;gap:.75rem;padding:1rem;background:#fff3cd;border-radius:.5rem;border-left:3px solid #ffc107}.warning-icon{font-size:1.25rem;line-height:1}.warning-content{flex:1}.warning-title{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.warning-details{font-size:.875rem;color:var(--gray-700)}.warning-details strong{color:#d97706}.separator{margin:0 .5rem;color:var(--gray-400)}.status-ok-card{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#d4edda;border-radius:.5rem;border-left:3px solid #28a745;color:#155724;font-weight:500}@media print{.no-print{display:none!important}.event-report-container{padding:0}.report-content{box-shadow:none}}@media(max-width:768px){.event-report-container{padding:1rem}.summary-grid{grid-template-columns:1fr}.expense-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.receipt-list-container{padding:2rem;max-width:1200px;margin:0 auto}.receipt-list-inline{padding:0}.receipt-form{padding:1.5rem}.document-section h4{margin:0 0 1rem;font-size:.875rem;color:var(--gray-700);font-weight:600}.document-fields{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.invoice-group,.receipt-group{flex:1;min-width:200px}.invoice-group label,.receipt-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--gray-700);font-size:.875rem}.invoice-inputs input,.receipt-group input{padding:.625rem;border:1px solid var(--gray-300);border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.receipt-group input{width:100%}.invoice-inputs input:focus,.receipt-group input:focus{outline:none;border-color:var(--amc-orange)}.divider{font-weight:600;color:var(--gray-400);font-size:.75rem;padding:0 .5rem .625rem;align-self:flex-end}.profit-summary{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.profit-row{display:flex;justify-content:space-between;padding:.75rem;border-radius:.375rem;margin-bottom:.5rem}.profit-row:last-child{margin-bottom:0}.profit-row.total{background:var(--gray-100);font-weight:600;font-size:1.125rem;margin-top:.5rem;padding-top:1rem;border-top:2px solid var(--gray-300)}.profit-row.total.positive{background:#d4edda;border-top-color:#28a745}.profit-row.total.negative{background:#f8d7da;border-top-color:#dc3545}.profit-value{font-weight:600}.profit-value.income{color:#28a745}.profit-value.expense{color:#dc3545}.receipts-sections{display:flex;flex-direction:column;gap:2rem}.receipts-type-section{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1.5rem}.type-section-title{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.125rem;font-weight:600}.type-section-title.income-title{color:#28a745}.type-section-title.expense-title{color:#dc3545}.receipt-card.income-card,.receipt-card.expense-card{background:#fff;border:1px solid var(--gray-200)}.receipt-card{cursor:pointer;transition:all .2s ease;padding:1.25rem;border-radius:.75rem;background:#fff;border:1px solid var(--gray-200);display:flex;flex-direction:column;gap:.875rem}.receipt-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px);border-color:var(--gray-300)}.receipt-card-top{display:flex;flex-direction:column;gap:.5rem}.receipt-amount{font-size:1.875rem;font-weight:700;line-height:1;letter-spacing:-.02em}.receipt-amount.income{color:#28a745}.receipt-amount.expense{color:#dc3545}.receipt-category{font-size:1rem;color:var(--gray-700);font-weight:600;line-height:1.3}.receipt-document{display:flex;align-items:center;gap:.625rem;padding:.625rem .875rem;background:var(--gray-50);border-radius:.5rem;border:1px solid var(--gray-100)}.doc-icon{display:flex;align-items:center;color:var(--gray-400);flex-shrink:0}.doc-text{font-family:SF Mono,Monaco,Inconsolata,Fira Code,Consolas,monospace;font-size:.875rem;color:var(--gray-700);font-weight:600;letter-spacing:-.01em}.stat-card.income{border-left:3px solid #28a745}.stat-card.expense{border-left:3px solid #dc3545}.stat-card.profit{border-left:3px solid var(--gray-400)}.receipt-list-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.receipt-list-header h1{margin:0;color:var(--text-primary)}.receipts-by-category{display:flex;flex-direction:column;gap:2rem}.category-section{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--primary)}.category-header h2{margin:0;color:var(--text-primary);font-size:1.25rem}.category-total{font-size:1.5rem;font-weight:700;color:var(--primary)}.receipts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.receipt-card{border:1px solid var(--gray-200);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s}.receipt-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.receipt-photo{width:100%;height:150px;background:var(--gray-100);display:flex;align-items:center;justify-content:center}.receipt-info{padding:1rem}.receipt-amount{font-size:1.25rem;font-weight:700;color:var(--primary);margin-bottom:.25rem}.receipt-date{font-size:.875rem;color:var(--gray-600);margin-bottom:.5rem}.receipt-notes{margin:0;font-size:.875rem;color:var(--gray-700);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-header h2{margin:0;color:var(--text-primary)}.btn-close{background:none;border:none;cursor:pointer;padding:4px;color:var(--gray-600);display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close:hover{background-color:var(--gray-100);color:var(--text-primary)}.modal-photo{width:100%;max-height:400px;object-fit:contain;background:var(--gray-100)}.detail-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--gray-200)}.detail-label{font-weight:600;color:var(--gray-700)}.detail-value{color:var(--text-primary);text-align:right}@media(max-width:768px){.receipt-list-container{padding:1rem}.receipts-grid{grid-template-columns:1fr}}.event-detail-container{display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%;min-width:0}.event-header-slim{display:flex;flex-direction:column;padding:.75rem 1.5rem;background:#fff;border-bottom:2px solid var(--gray-200);box-shadow:0 2px 4px #0000000d;flex-shrink:0}.header-row-top{display:flex;align-items:center;gap:1rem}.header-row-bottom{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--gray-100)}.btn-back-slim{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray-600);padding:.25rem .5rem;border-radius:.375rem;transition:all .2s;line-height:1}.btn-back-slim:hover{background:var(--gray-100);color:var(--amc-orange)}.header-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.header-info h1{margin:0;font-size:1.25rem;color:var(--text-primary);font-weight:600}.header-meta{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.header-dates,.header-participants{color:var(--gray-600)}.btn-edit-slim{background:none;border:1px solid var(--gray-300);padding:.4rem .75rem;border-radius:.375rem;cursor:pointer;color:var(--gray-600);font-size:.875rem;display:inline-flex;align-items:center;gap:.35rem;transition:all .2s}.btn-edit-slim:hover{background:var(--amc-orange);border-color:var(--amc-orange);color:#fff}.event-tabs-wrap{background:#fff;border-bottom:1px solid var(--gray-200);flex-shrink:0}.event-tabs{display:flex;padding:0 1.5rem;gap:.5rem;min-width:0}.event-tabs-mobile-trigger{display:none}.tab-button{background:none;border:none;padding:.75rem 1rem;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--gray-600);border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:.5rem}.tab-button svg{opacity:.7}.tab-button:hover{color:var(--amc-orange);background:var(--gray-50)}.tab-button:hover svg{opacity:1}.tab-button.active{color:var(--amc-orange);border-bottom-color:var(--amc-orange)}.tab-button.active svg{opacity:1}.event-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.5rem;background:var(--gray-50);min-width:0}.tab-content{background:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.info-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;transition:all .2s}.info-card:hover{box-shadow:0 2px 8px #00000014}.info-card-icon{display:flex;align-items:center;justify-content:center;color:var(--amc-orange);opacity:.8}.info-card:hover .info-card-icon{opacity:1}.info-card-content{flex:1}.info-card-label{font-size:.75rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-weight:600}.info-card-value{font-size:1.25rem;color:var(--text-primary);font-weight:600}.special-requirements-card{padding:1.25rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:.5rem}.special-requirements-text{margin-top:.5rem;color:var(--gray-700);line-height:1.6}.section-header-inline h2{margin:0;color:var(--text-primary)}.coming-soon{text-align:center;padding:3rem;color:var(--gray-600)}.coming-soon h3{margin:0 0 .5rem;color:var(--gray-700)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:1.5rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-item.full-width{grid-column:1 / -1}.detail-label{font-weight:600;color:var(--gray-700);font-size:.95rem}.detail-value{color:var(--gray-900);font-size:1.05rem}.detail-actions{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--gray-200);display:flex;gap:1rem}.role-badge{display:inline-block;padding:.25rem .5rem;background:var(--amc-orange);color:#fff;border-radius:.375rem;font-size:.75rem;font-weight:500}@media(max-width:767px){.event-header-slim{padding:.5rem var(--mobile-padding)}.header-row-top{flex-wrap:nowrap;gap:.5rem}.header-info{gap:.25rem;min-width:0}.header-info h1{font-size:1.125rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.header-meta{flex-wrap:nowrap;font-size:.8125rem;gap:.5rem}.header-meta .status-badge{font-size:.6875rem;padding:.2rem .5rem}.header-dates{white-space:nowrap}.btn-back-slim{font-size:1.25rem;padding:.2rem .4rem;flex-shrink:0}.btn-edit-slim{padding:.35rem;flex-shrink:0;min-width:32px;min-height:32px}.btn-edit-slim svg{width:14px;height:14px}.event-tabs-desktop{display:none}.event-tabs-mobile-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem var(--mobile-padding);background:#fff;border:none;font-size:1rem;font-weight:500;color:var(--gray-800);cursor:pointer}.event-tabs-mobile-trigger svg{flex-shrink:0;margin-left:.5rem;color:var(--gray-500)}.mobile-trigger-label{flex:1;text-align:left}.event-submenu-overlay{position:fixed;inset:0;background:#0006;z-index:998;animation:fadeIn .2s ease-out}.event-submenu-panel{position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);background:#fff;box-shadow:-4px 0 20px #00000026;z-index:999;display:flex;flex-direction:column;animation:slideInRight .25s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.event-submenu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem var(--mobile-padding);border-bottom:1px solid var(--gray-200)}.event-submenu-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--gray-900)}.event-submenu-close{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--gray-600);border-radius:.375rem}.event-submenu-close:hover{background:var(--gray-100);color:var(--gray-900)}.event-submenu-list{display:flex;flex-direction:column;padding:.5rem 0;overflow-y:auto}.event-submenu-item{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem var(--mobile-padding);background:none;border:none;font-size:1rem;font-weight:500;color:var(--gray-700);text-align:left;cursor:pointer}.event-submenu-item:hover{background:var(--gray-50)}.event-submenu-item.active{color:var(--amc-orange);font-weight:600}.event-submenu-item svg{flex-shrink:0}.event-content{padding:var(--mobile-padding);width:100%;box-sizing:border-box}.tab-content{max-width:100%;box-sizing:border-box}.overview-cards{grid-template-columns:1fr;gap:var(--mobile-gap)}.dashboard-sections{grid-template-columns:1fr}.section-header-inline{flex-direction:column;align-items:stretch;gap:1rem}.section-header-inline .btn-primary{width:100%;min-height:var(--touch-target-min);white-space:nowrap}.assignment-item{flex-direction:column;align-items:stretch}.assigned-roles{flex-wrap:wrap;max-width:100%}.assigned-roles .role-badge{font-size:.7rem;padding:.2rem .4rem}.assignment-actions{justify-content:flex-end}}.section-header-inline{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header-inline h2{margin:0;color:var(--text-primary);font-size:1.25rem}.assignments-list{display:flex;flex-direction:column;gap:1rem}.assignment-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:var(--gray-50);border-radius:.5rem;border:1px solid var(--gray-200)}.assignment-info{flex:1}.volunteer-name{font-weight:600;color:var(--gray-900);margin-bottom:.25rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.volunteer-contact{font-size:.875rem;color:var(--gray-600);margin-bottom:.5rem}.assigned-roles{display:flex;flex-wrap:wrap;gap:.5rem}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--white);border-radius:.75rem;box-shadow:0 20px 60px #0000004d;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-header h2{margin:0}.btn-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray-600);padding:.25rem;line-height:1}.btn-close:hover{color:var(--gray-900)}.modal-form{padding:1.5rem}.roles-checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.75rem;border:1px solid var(--gray-300);border-radius:.375rem;transition:all .2s}.checkbox-label:hover{border-color:var(--amc-orange);background-color:var(--gray-50)}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.checkbox-label span{font-weight:500}.designation-badge{display:inline-block;margin-left:.75rem;padding:.25rem .75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.designation-badge.pending{background:var(--gray-300);color:var(--gray-700)}.assignment-actions{display:flex;gap:.5rem;align-items:center}.meal-planning-container{padding:20px;max-width:1200px;margin:0 auto}.meal-planning-inline{padding:0}.meal-planning-loading,.meal-planning-error{text-align:center;padding:40px;font-size:18px;color:#666}.meal-planning-error button{margin-top:16px}.meal-planning-header{margin-bottom:24px}.meal-planning-header>div:first-child{display:flex;align-items:center;gap:16px;margin-bottom:12px}.meal-planning-header h2{margin:0;color:#333}.header-actions{display:flex;gap:8px}.add-meal-form-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.add-meal-form-modal{background:#fff;border-radius:8px;padding:24px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 16px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h3{margin:0;color:#333}.close-modal{background:none;border:none;font-size:28px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-modal:hover{background:#f0f0f0;color:#333}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-group input,.form-group select{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#f4811f}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.meals-timeline{display:flex;flex-direction:column;gap:32px}.meal-date-group{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.meal-date-header{margin:0 0 16px;color:#f4811f;font-size:18px;border-bottom:2px solid #F4811F;padding-bottom:8px;text-transform:capitalize}.meals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.meal-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.meal-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.meal-type{padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.meal-type.cooked_meals{background:#fff3e0;color:#e65100}.meal-type.cold_meals{background:#e3f2fd;color:#1565c0}.meal-type.snacks{background:#f3e5f5;color:#6a1b9a}.meal-type.cakes{background:#fce4ec;color:#c2185b}.meal-type.non_alcoholic_beverages{background:#e8f5e9;color:#2e7d32}.btn-remove-meal{background:none;border:1px solid #e74c3c;color:#e74c3c;border-radius:4px;font-size:20px;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.btn-remove-meal:hover{background:#e74c3c;color:#fff}.meal-card h4{margin:0 0 12px;color:#333;font-size:16px}.meal-info{font-size:14px;color:#666}.meal-info p{margin:4px 0}.no-meals{text-align:center;padding:60px 20px;min-width:0;overflow-wrap:break-word}.no-meals p{color:#999;font-size:16px;margin-bottom:20px;word-wrap:break-word;white-space:normal}@media(max-width:768px){.meal-planning-container{padding:12px}.meal-planning-header>div:first-child{flex-direction:column;align-items:flex-start}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}.meals-grid,.form-row{grid-template-columns:1fr}}.shopping-list-container{padding:20px;max-width:900px;margin:0 auto}.shopping-list-loading,.shopping-list-error{text-align:center;padding:40px;font-size:18px;color:#666}.shopping-list-error button{margin-top:16px}.shopping-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.shopping-list-content{background:#fff;border-radius:8px;padding:32px;box-shadow:0 2px 8px #0000001a}.shopping-list-title{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #F4811F}.shopping-list-title h2{margin:0 0 8px;color:#f4811f;font-size:32px}.event-name{margin:8px 0;color:#333;font-size:20px;font-weight:600}.event-dates{margin:4px 0;color:#666;font-size:14px}.no-items{text-align:center;padding:40px;color:#999;font-size:16px}.shopping-categories{display:flex;flex-direction:column;gap:32px}.shopping-category{page-break-inside:avoid}.unit-header{margin:0 0 12px;color:#f4811f;font-size:18px;font-weight:600;text-transform:uppercase;border-bottom:1px solid #F4811F;padding-bottom:6px}.shopping-items{list-style:none;padding:0;margin:0}.shopping-item{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #f0f0f0}.shopping-item:last-child{border-bottom:none}.shopping-item.stock-sufficient{background-color:#f0fdf4;padding:12px;border-radius:6px;margin-bottom:8px}.shopping-item.stock-low{background-color:#fffbeb;padding:12px;border-radius:6px;margin-bottom:8px}.shopping-item.stock-empty{background-color:#fef2f2;padding:12px;border-radius:6px;margin-bottom:8px}.item-checkbox{font-size:20px;width:24px;text-align:center;flex-shrink:0;margin-top:2px}.stock-sufficient .item-checkbox{color:#16a34a}.stock-low .item-checkbox{color:#f59e0b}.stock-empty .item-checkbox{color:#ef4444}.item-details{flex:1;display:flex;flex-direction:column;gap:4px}.item-main{display:flex;justify-content:space-between;align-items:center}.item-name{color:#333;font-size:16px;font-weight:500}.item-quantity{font-weight:600;color:#f4811f;font-size:16px}.stock-sufficient .item-quantity{color:#16a34a}.item-stock-note{font-size:13px;padding:.5rem .75rem;border-radius:6px;margin-top:.5rem}.item-stock-note.stock-sufficient{background:#d1fae5;color:#065f46}.item-stock-note.stock-low,.item-stock-note.stock-partial{background:#fef3c7;color:#92400e}.item-stock-note.stock-empty{background:#fee2e2;color:#991b1b}.item-purchased-note{font-size:13px;color:#065f46;margin-top:.5rem;padding:.5rem .75rem;background:#d1fae5;border-radius:6px;font-weight:500}.item-recommendation{font-size:13px;color:#f59e0b;font-weight:500;margin-top:4px}@media print{.no-print{display:none!important}.shopping-list-container{padding:0}.shopping-list-content{box-shadow:none;padding:20px}.shopping-category{page-break-inside:avoid}.item-checkbox{font-size:24px}}@media(max-width:768px){.shopping-list-container{padding:12px}.shopping-list-header{flex-direction:column;gap:12px}.shopping-list-header button{width:100%}.shopping-list-content{padding:20px}.shopping-list-title h2{font-size:24px}.event-name{font-size:18px}}.recipe-list-container{padding:20px;max-width:1200px;margin:0 auto}.recipe-list-loading{text-align:center;padding:40px;font-size:18px;color:#666}.recipe-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.recipe-list-header h2{margin:0;color:#333}.recipe-filters{margin-bottom:20px}.filter-select{padding:10px 15px;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:14px;color:#333;cursor:pointer;min-width:200px}.filter-select:focus{outline:none;border-color:#f4811f}.recipe-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.recipe-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s}.recipe-card:hover{box-shadow:0 4px 12px #0000001a}.recipe-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:10px}.recipe-card-header h3{margin:0;font-size:18px;color:#333;flex:1}.recipe-category{padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;white-space:nowrap}.recipe-info{margin-bottom:16px}.recipe-info p{margin:6px 0;font-size:14px;color:#666}.recipe-card-actions{display:flex;gap:8px;justify-content:flex-end}.no-recipes{text-align:center;padding:40px;color:#999;font-size:16px}@media(max-width:768px){.recipe-list{grid-template-columns:1fr}.recipe-list-header{flex-direction:column;align-items:flex-start;gap:12px}.recipe-card-actions{flex-direction:column}.recipe-card-actions button{width:100%}}.add-recipe-container{padding:20px;max-width:900px;margin:0 auto}.add-recipe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.add-recipe-header h2{margin:0;color:#333}.recipe-form{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.form-section{margin-bottom:32px}.form-section h3{margin:0 0 16px;color:#f4811f;font-size:18px;border-bottom:2px solid #F4811F;padding-bottom:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:600;color:#333;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#f4811f}.form-group textarea{resize:vertical;min-height:100px}.ingredients-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.ingredients-header h3{margin:0;border:none;padding:0}.ingredients-list{display:flex;flex-direction:column;gap:12px}.ingredient-row{display:grid;grid-template-columns:3fr 1fr 80px 40px;gap:8px;align-items:center}.ingredient-stock-select,.ingredient-quantity{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.ingredient-stock-select:focus,.ingredient-quantity:focus{outline:none;border-color:#f4811f}.ingredient-stock-select{font-size:14px;color:var(--gray-700)}.ingredient-unit-display{font-size:14px;color:var(--gray-600);font-weight:500;text-align:center}.btn-remove-ingredient{width:40px;height:40px;border:1px solid #e74c3c;background:#fff;color:#e74c3c;border-radius:6px;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.btn-remove-ingredient:hover{background:#e74c3c;color:#fff}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid #e0e0e0}.error-message{background:#fee;color:#c33;padding:12px 16px;border-radius:6px;margin-bottom:20px;border:1px solid #fcc}@media(max-width:768px){.add-recipe-container{padding:12px}.add-recipe-header{flex-direction:column;align-items:flex-start;gap:12px}.form-row{grid-template-columns:1fr}.ingredient-row{grid-template-columns:1fr;gap:8px}.btn-remove-ingredient{width:100%}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.recipe-detail-container{padding:20px;max-width:900px;margin:0 auto}.recipe-detail-loading,.recipe-detail-error{text-align:center;padding:40px;font-size:18px;color:#666}.recipe-detail-error button{margin-top:16px}.recipe-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.recipe-actions{display:flex;gap:8px}.btn-icon{background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;color:#666}.btn-icon-danger{color:#666}.btn-icon-danger:hover{background-color:#f4433614;color:#f44336}.recipe-detail-content{background:#fff;border-radius:8px;padding:32px;box-shadow:0 2px 8px #0000001a}.recipe-title-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px}.recipe-title-section h2{margin:0;color:#333;font-size:28px;flex:1}.recipe-category{padding:6px 12px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;white-space:nowrap}.recipe-category.cooked_meals{background:#fff3e0;color:#e65100}.recipe-category.cold_meals{background:#e3f2fd;color:#1565c0}.recipe-category.snacks{background:#f3e5f5;color:#6a1b9a}.recipe-category.cakes{background:#fce4ec;color:#c2185b}.recipe-category.non_alcoholic_beverages{background:#e8f5e9;color:#2e7d32}.recipe-servings-section{margin-bottom:32px;padding:16px;background:#f9f9f9;border-radius:8px}.servings-control{display:flex;align-items:center;gap:12px}.servings-control label{font-weight:600;color:#333}.servings-input{width:80px;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px;text-align:center}.servings-input:focus{outline:none;border-color:#f4811f}.servings-info{color:#666;font-size:14px}.recipe-ingredients-section,.recipe-instructions-section{margin-bottom:32px}.recipe-ingredients-section h3,.recipe-instructions-section h3{margin:0 0 16px;color:#f4811f;font-size:20px;border-bottom:2px solid #F4811F;padding-bottom:8px}.ingredients-display{list-style:none;padding:0;margin:0}.ingredients-display li{padding:12px;border-bottom:1px solid #f0f0f0;display:flex;gap:12px}.ingredients-display li:last-child{border-bottom:none}.ingredient-quantity{font-weight:600;color:#f4811f;min-width:100px}.ingredient-name{color:#333}.instructions-text{color:#333;line-height:1.6}.instructions-text p{margin:0 0 12px}.instructions-text p:last-child{margin-bottom:0}@media(max-width:768px){.recipe-detail-container{padding:12px}.recipe-detail-header{flex-direction:column;align-items:stretch;gap:12px}.recipe-actions{flex-direction:column}.recipe-actions button{width:100%}.recipe-detail-content{padding:20px}.recipe-title-section{flex-direction:column}.servings-control{flex-wrap:wrap}.ingredients-display li{flex-direction:column;gap:4px}.ingredient-quantity{min-width:auto}}.room-list-container{padding:2rem}.room-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.room-list-header h1{margin:0;color:var(--text-primary)}.room-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-value{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.room-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.room-table{width:100%;border-collapse:collapse}.room-table thead{background-color:var(--gray-100)}.room-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--gray-200)}.room-table td{padding:1rem;border-bottom:1px solid var(--gray-200)}.room-table tbody tr:hover{background-color:var(--gray-50)}.status-select{padding:.5rem;border:1px solid var(--gray-300);border-radius:6px;background:#fff;cursor:pointer;font-size:.875rem}.status-select:focus{outline:none;border-color:var(--primary)}.action-buttons{display:flex;gap:.5rem}.btn-icon{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;color:#666}.btn-icon:hover{background-color:#0000000f;color:#333}.btn-icon:active{transform:scale(.95)}.room-cards-mobile{display:none}.room-table-desktop{display:block}@media(max-width:767px){.room-list-container{padding:0}.room-list-header{flex-direction:column;align-items:stretch;gap:var(--mobile-gap)}.room-list-header .btn-primary{width:100%;min-height:var(--touch-target-min);white-space:nowrap}.room-stats{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.stat-card{padding:1rem}.stat-value{font-size:2rem}.stat-label{font-size:.75rem}.room-table-desktop{display:none}.room-cards-mobile{display:flex;flex-direction:column;gap:1rem}.room-card{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #00000014;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.room-card-main{flex:1;min-width:0}.room-card-name{font-weight:600;color:var(--gray-800);font-size:1rem}.room-card-meta{font-size:.875rem;color:var(--gray-600)}.room-card-beds{font-size:.875rem;color:var(--primary);font-weight:600;margin:.25rem 0}.room-card-status{width:100%;min-height:var(--touch-target-min);margin-top:.5rem}.room-card-edit{flex-shrink:0;min-width:var(--touch-target-min);min-height:var(--touch-target-min)}}.add-room-container{padding:2rem;max-width:800px;margin:0 auto}.add-room-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.add-room-header h1{margin:0;color:var(--text-primary)}.room-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.add-room-container{padding:1rem}.form-row{grid-template-columns:1fr}}.stock-container{padding:2rem;max-width:1400px;margin:0 auto}.stock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.stock-header h1{color:var(--gray-900);font-size:1.875rem;font-weight:700}.header-actions{display:flex;gap:1rem;align-items:center}.header-actions .btn-secondary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;border:2px solid var(--amc-orange);color:var(--amc-orange);border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s}.header-actions .btn-secondary:hover{background:var(--amc-orange);color:#fff}.header-actions .btn-secondary svg{stroke:currentColor}.header-actions .btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--amc-orange);border:2px solid var(--amc-orange);color:#fff;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s}.header-actions .btn-primary:hover{background:#d35400;border-color:#d35400}.category-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--gray-200)}.category-tab{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:var(--gray-600);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:-2px}.category-tab:hover{color:var(--amc-orange);background:var(--gray-50)}.category-tab.active{color:var(--amc-orange);border-bottom-color:var(--amc-orange);font-weight:600}.category-tab svg{stroke:currentColor}.filters-bar{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.filter-select{padding:.625rem 1rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:.875rem;background:#fff;cursor:pointer}.search-input{flex:1;min-width:250px;padding:.625rem 1rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:.875rem}.stock-table-container{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.stock-table{width:100%;border-collapse:collapse}.stock-table thead{background-color:var(--gray-50)}.stock-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:var(--gray-700);border-bottom:1px solid var(--gray-200)}.stock-table td{padding:1rem;border-bottom:1px solid var(--gray-100);font-size:.875rem}.stock-table tbody tr:hover{background-color:var(--gray-50)}.stock-table tbody tr.virtual-row{opacity:.5}.stock-table tbody tr.virtual-row:hover{background-color:transparent}.virtual-indicator{color:var(--gray-400);font-size:.875rem}.linen-status{display:inline-block;margin-left:.5rem;font-size:.75rem;color:var(--gray-500);font-weight:400}.unit-conversion-note{display:block;margin-top:.25rem;font-size:.75rem;color:var(--gray-500);font-weight:400;font-style:italic}.quantity{font-weight:600;color:var(--gray-900)}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.status-ok{background-color:#d1fae5;color:#065f46}.status-low{background-color:#fef3c7;color:#92400e}.status-empty{background-color:#fee2e2;color:#991b1b}.linen-clean{background-color:#e8f5e9;color:#2e7d32;border:1px solid #81C784}.linen-dirty{background-color:#ffebee;color:#c62828;border:1px solid #EF5350}.linen-in-use{background-color:#e3f2fd;color:#1565c0;border:1px solid #64B5F6}.linen-washing{background-color:#f3e5f5;color:#6a1b9a;border:1px solid #BA68C8}.no-data{text-align:center;padding:3rem!important;color:var(--gray-500)}.btn-icon{background:none;border:none;cursor:pointer;padding:.5rem;color:var(--gray-600);display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;transition:all .2s}.btn-icon:hover{background-color:var(--gray-100);color:var(--amc-orange)}.btn-icon svg{width:20px;height:20px;stroke-width:2}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:1rem;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header h2{font-size:1.25rem;font-weight:600;color:var(--gray-900)}.btn-close{background:none;border:none;cursor:pointer;padding:.25rem;color:var(--gray-500);width:24px;height:24px}.btn-close:hover{color:var(--gray-700)}.current-quantity-card{background:linear-gradient(135deg,#fff5ed,#fff);padding:1.5rem;border-radius:.75rem;margin-bottom:1.5rem;text-align:center;border:2px solid var(--amc-orange)}.quantity-label{font-size:.75rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.quantity-value{font-size:2rem;font-weight:700;color:var(--amc-orange)}.adjustment-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.adjustment-type-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#fff;border:2px solid var(--gray-300);border-radius:.75rem;cursor:pointer;transition:all .2s;font-size:.875rem;color:var(--gray-700)}.adjustment-type-btn:hover{border-color:var(--amc-orange);background-color:#fff5ed;transform:translateY(-2px)}.adjustment-type-btn.active{border-color:var(--amc-orange);background-color:var(--amc-orange);color:#fff;box-shadow:0 4px 12px #f4811f4d}.adjustment-type-btn svg{width:24px;height:24px}.adjustment-type-btn.active svg{stroke:#fff}.new-quantity{background:linear-gradient(135deg,#d1fae5,#fff);padding:1.5rem;border-radius:.75rem;margin-top:1.5rem;text-align:center;border:2px solid #10b981}.new-quantity{font-size:.75rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.new-quantity strong{display:block;color:#10b981;font-size:1.75rem;font-weight:700;margin-top:.5rem}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.modal-actions button{flex:1}.stock-cards-mobile{display:none}.stock-table-desktop{display:block}@media(max-width:767px){.stock-container{padding:var(--mobile-padding)}.stock-header{flex-direction:column;align-items:stretch;gap:var(--mobile-gap)}.stock-header h1{font-size:1.5rem}.header-actions{flex-direction:column}.header-actions .btn-primary,.header-actions .btn-secondary{width:100%;justify-content:center;min-height:var(--touch-target-min);white-space:nowrap}.category-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:.5rem}.category-tab{flex-shrink:0;min-height:var(--touch-target-min)}.filters-bar{flex-direction:column}.filter-select,.search-input{width:100%;min-height:var(--touch-target-min)}.stock-table-desktop{display:none}.stock-cards-mobile{display:flex;flex-direction:column;gap:1rem}.stock-card-empty{text-align:center;padding:2rem;color:var(--gray-500)}.stock-card{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #00000014;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.stock-card.virtual{opacity:.8}.stock-card-main{flex:1;min-width:0}.stock-card-name{font-weight:600;color:var(--gray-900);font-size:1rem;word-break:break-word}.stock-card-qty{font-size:.9375rem;color:var(--amc-orange);font-weight:600;margin:.25rem 0}.stock-card-actions{display:flex;gap:.5rem;flex-shrink:0}.stock-card .btn-icon{min-width:var(--touch-target-min);min-height:var(--touch-target-min)}}@media(min-width:768px){.stock-container{padding:2rem}}.form-container{padding:2rem;max-width:800px;margin:0 auto}.form-header{margin-bottom:2rem}.form-header h1{color:var(--gray-900);font-size:1.875rem;font-weight:700;margin-top:1rem}.btn-back{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:none;border:none;color:var(--gray-600);font-size:.875rem;cursor:pointer;transition:color .2s}.btn-back:hover{color:var(--amc-orange)}.btn-back svg{width:20px;height:20px}.stock-form{background:#fff;padding:2rem;border-radius:.75rem;box-shadow:0 1px 3px #0000001a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{margin-bottom:1.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--amc-orange);box-shadow:0 0 0 3px #f4811f1a}.form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.form-actions button{flex:1}@media(max-width:768px){.form-container{padding:1rem}.stock-form{padding:1.5rem}.form-row{grid-template-columns:1fr;gap:0}.form-actions{flex-direction:column}.form-actions button{width:100%}}.bulk-stock-update{padding:2rem;max-width:1400px;margin:0 auto}.success-banner{background:var(--success-light);color:var(--success-dark);padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;border-left:4px solid var(--success)}.filters-section{background:#fff;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.filter-group{display:flex;align-items:center;gap:1rem}.filter-group label{font-weight:500;color:var(--gray-700)}.filter-select{padding:.5rem 1rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:.875rem;background:#fff;cursor:pointer}.help-text{margin-top:.75rem;padding:.75rem;background:var(--warning-light);border-left:4px solid var(--warning);border-radius:.375rem;font-size:.875rem;color:var(--gray-700)}.invoice-section{background:#fff;padding:1.5rem;border-radius:.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.invoice-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.invoice-section-header h3{margin:0;font-size:1rem;color:var(--gray-900)}.btn-add-document{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid var(--amc-orange);border-radius:.5rem;color:var(--amc-orange);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-add-document:hover{background:var(--amc-orange);color:#fff}.no-documents{padding:2rem;text-align:center;color:var(--gray-500);font-size:.875rem;background:var(--gray-50);border-radius:.5rem;border:1px dashed var(--gray-300)}.documents-list{display:flex;flex-direction:column;gap:1rem}.document-item{padding:.625rem .875rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:.5rem;display:flex;align-items:center;gap:.875rem}.document-header{display:flex;align-items:center;gap:.5rem;min-width:90px}.document-number{font-weight:600;color:var(--gray-700);font-size:.8125rem}.btn-remove-document{display:flex;align-items:center;justify-content:center;padding:.25rem;background:#fff;border:1px solid var(--gray-300);border-radius:.375rem;color:var(--gray-600);cursor:pointer;transition:all .2s}.btn-remove-document:hover{background:#fee;border-color:#dc3545;color:#dc3545}.document-type-selector{display:flex;gap:.875rem;min-width:180px}.document-type-selector label{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--gray-700);cursor:pointer;font-weight:500;white-space:nowrap}.document-type-selector input[type=radio]{cursor:pointer}.invoice-inputs{display:flex;gap:.5rem;flex:1}.invoice-input,.receipt-input{padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:.375rem;font-size:.875rem;transition:border-color .2s;background:#fff}.invoice-input{flex:1;min-width:70px}.invoice-input:first-child{max-width:100px}.receipt-input{flex:1;min-width:250px}.invoice-input:focus,.receipt-input:focus{outline:none;border-color:var(--amc-orange)}.bulk-update-table-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow-x:auto;margin-bottom:1.5rem}.bulk-update-table{width:100%;border-collapse:collapse}.bulk-update-table thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.bulk-update-table th{padding:1rem;text-align:left;font-weight:600;color:var(--gray-700);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.bulk-update-table tbody tr{border-bottom:1px solid var(--gray-200);transition:background-color .2s}.bulk-update-table tbody tr:hover{background:var(--gray-50)}.bulk-update-table tbody tr.has-change{background:var(--warning-light)}.bulk-update-table tbody tr.has-change:hover{background:#fff8e1}.bulk-update-table td{padding:1rem;font-size:.875rem}.item-name{font-weight:500;color:var(--gray-900)}.conversion-note{display:block;margin-top:.25rem;font-size:.75rem;color:var(--gray-500);font-weight:400;font-style:italic}.current-quantity{font-weight:500;color:var(--gray-700)}.adjustment-input{display:flex;align-items:center;gap:.5rem}.adjustment-field{width:120px;padding:.5rem;border:2px solid var(--gray-300);border-radius:.375rem;font-size:.875rem;text-align:right;transition:border-color .2s}.adjustment-field:focus{outline:none;border-color:var(--primary)}.adjustment-field:not(:placeholder-shown){border-color:var(--warning);background:var(--warning-light)}.unit-label{font-size:.875rem;color:var(--gray-600);font-weight:500}.new-quantity{font-weight:600;color:var(--gray-700)}.new-quantity.positive{color:var(--success-dark)}.new-quantity.negative{color:var(--error)}.no-items{text-align:center;padding:3rem!important;color:var(--gray-500)}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;position:sticky;bottom:0;z-index:10}.btn-secondary,.btn-primary{padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;border:2px solid var(--amc-orange)}.btn-secondary{background:#fff;color:var(--amc-orange)}.btn-secondary:hover,.btn-primary{background:var(--amc-orange);color:#fff}.btn-primary:hover:not(:disabled){background:#d35400;border-color:#d35400}.btn-primary:disabled{opacity:.5;cursor:not-allowed;background:var(--gray-300);border-color:var(--gray-300);color:var(--gray-600)}@media(max-width:768px){.bulk-stock-update{padding:1rem}.bulk-update-table{font-size:.75rem}.bulk-update-table th,.bulk-update-table td{padding:.5rem}.adjustment-field{width:80px}.form-actions{flex-direction:column}.btn-secondary,.btn-primary{width:100%}}.all-payments-container{padding:2rem;max-width:1400px;margin:0 auto}.payments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.payments-header h1{margin:0;color:var(--gray-900)}.payments-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:.75rem;border:1px solid var(--gray-200);box-shadow:0 1px 3px #00000014}.stat-card.income{border-left:4px solid #28a745}.stat-card.expense{border-left:4px solid #dc3545}.stat-card.profit{border-left:4px solid var(--gray-400)}.stat-card.profit.positive{border-left-color:#28a745;background:#f8fff9}.stat-card.profit.negative{border-left-color:#dc3545;background:#fff8f8}.stat-label{font-size:.875rem;color:var(--gray-600);margin-bottom:.5rem;font-weight:500}.stat-value{font-size:1.75rem;font-weight:700;color:var(--gray-900)}.stat-value.income{color:#28a745}.stat-value.expense{color:#dc3545}.payments-filters{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1rem;background:#fff;border-radius:.75rem;border:1px solid var(--gray-200)}.filter-group{display:flex;align-items:center;gap:.75rem}.filter-group label{font-weight:500;color:var(--gray-700);font-size:.875rem}.filter-group select{padding:.5rem 1rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:.875rem;background:#fff;cursor:pointer;min-width:180px}.payments-table-container{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #00000014;overflow:hidden}.payments-table{width:100%;border-collapse:collapse}.payments-table thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.payments-table th{padding:1rem;text-align:left;font-weight:600;color:var(--gray-700);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.payments-table tbody tr{border-bottom:1px solid var(--gray-200);cursor:pointer;transition:background-color .2s}.payments-table tbody tr:hover{background:var(--gray-50)}.payments-table td{padding:1rem;font-size:.875rem}.type-badge{display:inline-block;padding:.25rem .625rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.type-badge.income{background:#d4edda;color:#155724}.type-badge.expense{background:#f8d7da;color:#721c24}.amount{font-weight:700;font-size:1rem}.amount.income{color:#28a745}.amount.expense{color:#dc3545}.payment-source{color:var(--gray-700);font-weight:500;font-size:.875rem}.payment-user{color:var(--gray-700);font-size:.875rem}.document-info{font-family:SF Mono,Monaco,Inconsolata,Fira Code,Consolas,monospace;font-size:.8125rem;color:var(--gray-600)}.payment-date{color:var(--gray-600);font-size:.8125rem}.no-payments{text-align:center;padding:3rem!important;color:var(--gray-500)}.modal-content{background:#fff;border-radius:.75rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.payment-form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--gray-700);font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem;border:1px solid var(--gray-300);border-radius:.5rem;font-size:.875rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--amc-orange)}.document-section{margin:1.5rem 0;padding:1rem;background:var(--gray-50);border-radius:.5rem}.document-section h3{margin:0 0 1rem;font-size:.9375rem;color:var(--gray-900)}.document-fields{display:flex;align-items:flex-end;gap:1rem}.invoice-group,.receipt-group{flex:1}.invoice-group label,.receipt-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--gray-700);font-size:.8125rem}.invoice-inputs input{flex:1}.divider{font-weight:600;color:var(--gray-400);font-size:.75rem;padding-bottom:.625rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.modal-details{padding:1.5rem}.detail-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--gray-100)}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:500;color:var(--gray-600);font-size:.875rem}.detail-value{font-weight:500;color:var(--gray-900);text-align:right}.detail-value.income{color:#28a745;font-weight:600}.detail-value.expense{color:#dc3545;font-weight:600}.payments-cards-mobile{display:none}@media(max-width:767px){.payments-table-desktop{display:none}.payments-cards-mobile{display:flex;flex-direction:column;gap:.75rem}.payment-card-empty{text-align:center;padding:2rem;color:var(--gray-500)}.payment-card{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #00000014;cursor:pointer}.payment-card.income{border-left:4px solid #28a745}.payment-card.expense{border-left:4px solid #dc3545}.payment-card-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}.payment-card-meta{font-size:.875rem;color:var(--gray-600);margin-bottom:.25rem}.payment-card-date{font-size:.8125rem;color:var(--gray-500)}.all-payments-container{padding:0}.payments-header{flex-direction:column;align-items:stretch;gap:var(--mobile-gap)}.payments-header .btn-primary{width:100%;min-height:var(--touch-target-min);white-space:nowrap}.payments-stats{grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem}.stat-card{padding:1rem;min-width:0}.stat-label{font-size:.75rem;word-break:break-word}.stat-value{font-size:1.5rem;word-break:break-all}.payments-filters{flex-direction:column;gap:1rem}.filter-group{flex-direction:column;align-items:stretch}.filter-group select{width:100%;min-width:0}.payments-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.payments-table{min-width:320px}.document-fields{flex-direction:column;align-items:stretch}.divider{text-align:center;padding:.5rem 0}}.admin-layout{--admin-nav-width: 220px;display:flex;flex-direction:column;min-height:100vh;background-color:var(--gray-50);position:relative}.admin-topbar{position:fixed;top:0;left:0;right:0;height:calc(var(--touch-target-min) + 1rem);display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:0 1px 3px #0000000f;z-index:102}.admin-topbar-left,.admin-topbar-right{display:flex;align-items:center;gap:.75rem}.admin-topbar-user{font-size:.8125rem;color:var(--gray-600);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-topbar-logout{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;background:var(--gray-100);border:none;border-radius:.5rem;font-size:.875rem;color:var(--gray-700);cursor:pointer;transition:all .2s}.admin-topbar-logout:hover{background:var(--gray-200);color:var(--gray-900)}.admin-hamburger{display:flex;position:static;z-index:0;width:var(--touch-target-min);height:var(--touch-target-min);background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;box-shadow:0 2px 8px #0000001a}.hamburger-line{display:block;width:20px;height:2px;background:var(--gray-700);border-radius:1px;transition:all .3s}.admin-hamburger .hamburger-line:nth-child(1).open{transform:translateY(7px) rotate(45deg)}.admin-hamburger .hamburger-line:nth-child(2).open{opacity:0}.admin-hamburger .hamburger-line:nth-child(3).open{transform:translateY(-7px) rotate(-45deg)}.admin-nav-overlay{display:none;position:fixed;inset:0;background:#0006;z-index:99;opacity:0;visibility:hidden;transition:all .3s}.admin-nav-overlay.visible{opacity:1;visibility:visible}.admin-nav{width:var(--admin-nav-width);background-color:var(--white);border-right:1px solid var(--gray-200);display:flex;flex-direction:column;position:fixed;height:100vh;overflow-y:auto;z-index:100;transition:transform .3s ease}.admin-nav-header{padding:1rem 1.25rem;border-bottom:1px solid var(--gray-200);text-align:center}.admin-nav-header h2{color:var(--amc-orange);font-size:1.1rem;margin-bottom:.25rem}.admin-nav-header p{color:var(--gray-600);font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-nav-menu{list-style:none;padding:1rem 0;flex:1}.admin-nav-menu li{margin:0}.nav-item{width:100%;display:flex;align-items:center;justify-content:center;padding:.75rem 1rem;background:none;border:none;border-left:3px solid transparent;color:var(--gray-700);font-size:1rem;text-align:center;cursor:pointer;transition:all .2s}.nav-item:hover{background-color:var(--gray-50);color:var(--amc-orange)}.nav-item.active{background-color:#fff5ed;color:var(--amc-orange);border-left-color:var(--amc-orange);font-weight:600}.btn-logout{margin:1rem;padding:.75rem;background-color:var(--gray-100);color:var(--gray-700);border:none;border-radius:.5rem;font-size:1rem;cursor:pointer;transition:all .2s;text-align:center}.btn-logout:hover{background-color:var(--gray-200)}.admin-nav-footer{padding:1.5rem 1rem;border-top:1px solid var(--gray-200);display:flex;justify-content:center;align-items:center;margin-top:auto}.admin-nav-logo{width:100%;max-width:140px;height:auto;object-fit:contain}.dashboard-card{transition:transform .2s,box-shadow .2s}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.admin-content{margin-left:var(--admin-nav-width);flex:1;min-width:0;width:calc(100% - var(--admin-nav-width));min-height:100vh;box-sizing:border-box;padding-top:calc(var(--touch-target-min) + 1rem);padding-right:1rem;position:relative;z-index:1;overflow-x:auto}@media(min-width:768px){.admin-hamburger{display:none}.admin-topbar{left:var(--admin-nav-width)}}@media(max-width:767px){.admin-hamburger{display:flex}.admin-nav-overlay{display:block}.admin-nav{width:280px;max-width:85vw;transform:translate(-100%);box-shadow:4px 0 20px #00000026}.admin-nav.open{transform:translate(0)}.admin-content{margin-left:0;padding:calc(var(--touch-target-min) + 1rem) var(--mobile-padding) 2rem;padding-top:calc(var(--touch-target-min) + 1rem);width:100%}.admin-nav-menu{display:block;padding:1rem 0}.admin-nav-menu li{flex-shrink:0}.nav-item{width:100%;padding:1rem 1.5rem;border-left:none;border-bottom:none;text-align:left;justify-content:flex-start;border-left:3px solid transparent;min-height:var(--touch-target-min)}.nav-item.active{border-left:3px solid var(--amc-orange);border-bottom:none}}@media(min-width:768px){.admin-nav-overlay{display:none!important}.admin-nav{transform:none!important}}.my-events-container{padding:var(--mobile-padding);max-width:800px;margin:0 auto}.my-events-header{display:flex;flex-direction:column;align-items:stretch;margin-bottom:var(--mobile-gap);gap:var(--mobile-gap)}.my-events-header h1{margin:0;color:var(--gray-900);font-size:1.5rem}.my-events-header .btn-primary{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.my-events-list{display:flex;flex-direction:column;gap:1rem}.my-event-card{background:var(--white);border:1px solid var(--gray-200);border-radius:.5rem;padding:var(--mobile-padding);transition:all .2s;box-shadow:0 1px 3px #00000014}.event-card-body{display:flex;flex-direction:column;gap:.75rem}.event-info-row{display:flex;flex-direction:column;gap:.25rem;font-size:.95rem}.info-label{font-weight:600;color:var(--gray-700)}.assigned-roles{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.role-badge{display:inline-block;padding:.25rem .75rem;background-color:var(--amc-orange-light);color:var(--amc-orange-dark);border-radius:1rem;font-size:.875rem;font-weight:500}.designation-badge-volunteer{display:inline-block;padding:.375rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:1rem;font-size:.9375rem;font-weight:600}.btn-disabled{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;background:var(--gray-100);color:var(--gray-500);border:1px solid var(--gray-300);border-radius:.5rem;cursor:not-allowed}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500;white-space:nowrap}.status-upcoming{background-color:#dbeafe;color:#1e40af}.status-in-progress{background-color:#d1fae5;color:#065f46}.status-past{background-color:var(--gray-200);color:var(--gray-600)}.event-card-actions{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--gray-200)}.event-card-actions button{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;min-height:var(--touch-target-min)}.event-card-actions button svg{width:18px;height:18px}@media(max-width:767px){.event-card-actions{flex-direction:column}.event-card-actions button{width:100%}.event-card-header h3{font-size:1.125rem}}@media(min-width:768px){.my-events-container{padding:1.5rem}.my-events-header{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.my-events-header h1{font-size:1.75rem}.my-event-card{padding:1.5rem}}.register-event-container{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.page-header h1{margin:0;color:var(--gray-900)}.success-message{background:#d4edda;color:#155724;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;border-left:4px solid #28a745}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.event-card{background:#fff;border:1px solid var(--gray-200);border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #00000014;transition:box-shadow .2s}.event-card:hover{box-shadow:0 4px 12px #0000001f}.event-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.event-card-header h3{margin:0;color:var(--gray-900);font-size:1.25rem;flex:1}.registered-badge{display:inline-block;padding:.375rem .875rem;background:#d4edda;color:#155724;border-radius:1rem;font-size:.75rem;font-weight:600;white-space:nowrap}.event-card-body{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.event-info-row{display:flex;gap:.5rem;font-size:.95rem;align-items:flex-start}.info-label{font-weight:600;color:var(--gray-700);min-width:120px;display:flex;align-items:center;gap:.5rem}.info-label svg{color:var(--gray-500);flex-shrink:0}.event-card-actions{display:flex;gap:.75rem;padding-top:1rem;border-top:1px solid var(--gray-200)}.btn-registered{flex:1;padding:.75rem 1.5rem;background:var(--gray-100);color:var(--gray-600);border:1px solid var(--gray-300);border-radius:.5rem;font-weight:500;cursor:not-allowed}@media(max-width:768px){.register-event-container{padding:1rem}.events-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}}.shopping-list-view-container{padding:var(--mobile-padding);max-width:800px;margin:0 auto}.shopping-list-view-container h2{margin:0 0 24px;color:#333;font-size:24px}.error-message{padding:1rem 1.25rem;background:#fee2e2;border:1px solid #ef4444;border-radius:8px;color:#991b1b;margin-bottom:1.5rem}.shopping-list-view-loading,.shopping-list-view-error,.shopping-list-view-empty{text-align:center;padding:40px 20px;color:#666}.shopping-list-view-empty h2{color:#333;margin-bottom:16px}.shopping-list-view-empty p{color:#999;font-size:16px}.shopping-lists{display:flex;flex-direction:column;gap:24px}.shopping-list-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.list-header{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #F4811F}.list-header h3{margin:0 0 8px;color:#f4811f;font-size:20px}.list-dates{margin:0;color:#666;font-size:14px}.progress-bar-container{margin-bottom:1.5rem}.progress-label{font-size:.9rem;color:var(--gray-700);margin-bottom:.5rem;font-weight:600}.progress-bar{height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--amc-orange);transition:width .3s ease}.list-complete-message{margin-top:.75rem;padding:.75rem 1rem;background:#d1fae5;color:#065f46;border-radius:8px;font-weight:600;text-align:center;font-size:.95rem}.item-previous-purchases{font-size:.85rem;color:#0369a1;background:#e0f2fe;padding:.5rem .75rem;border-radius:6px;margin-top:.5rem;font-weight:500}.completed-items-section{margin-top:2rem;padding-top:1.5rem;border-top:2px dashed var(--gray-300)}.completed-items-section h4{color:#065f46;margin-bottom:1rem;font-size:1rem}.completed-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f0fdf4;border-radius:6px;margin-bottom:.5rem}.completed-item .item-name{color:#333;font-weight:500}.completed-quantity{color:#16a34a;font-weight:600}.all-items-complete{margin-top:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border-radius:12px;font-weight:700;text-align:center;font-size:1.1rem;box-shadow:0 4px 6px #10b9811a}.list-content{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.shopping-item{display:flex;gap:1rem;padding:1.25rem;border:1px solid var(--gray-200);border-radius:8px;background:#fff;transition:all .2s}.shopping-item.sufficient{background:#f0fdf4;border-color:#86efac}.shopping-item.low,.shopping-item.partial{background:#fffbf0;border-color:#fbbf24}.shopping-item.empty{background:#fef2f2;border-color:#fca5a5}.item-checkbox-wrapper{display:flex;align-items:flex-start;padding-top:.25rem}.item-checkbox-wrapper input[type=checkbox]{width:20px;height:20px;cursor:pointer}.item-details{flex:1;display:flex;flex-direction:column;gap:.75rem}.item-main{display:flex;flex-direction:column;gap:.25rem}.item-name{font-weight:600;color:var(--gray-900);font-size:1rem}.item-needed{color:var(--gray-600);font-size:.9rem}.item-stock-info{font-size:.85rem}.stock-note{padding:.5rem .75rem;border-radius:6px;display:inline-block}.stock-note.sufficient{background:#d1fae5;color:#065f46}.stock-note.low,.stock-note.partial{background:#fef3c7;color:#92400e}.stock-note.empty{background:#fee2e2;color:#991b1b}.item-quantity-input{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--gray-700);font-size:.9rem}.checkbox-label input[type=checkbox]{width:16px;height:16px}.quantity-input-wrapper{display:flex;align-items:center;gap:.75rem}.quantity-input-wrapper label{color:var(--gray-700);font-size:.9rem;font-weight:500}.quantity-input-wrapper input[type=number]{width:100px;padding:.5rem;border:1px solid var(--gray-300);border-radius:6px;font-size:.95rem}.unit-label{color:var(--gray-600);font-size:.9rem}.item-purchased-info{color:#065f46;font-weight:600;font-size:.9rem;display:flex;flex-direction:column;gap:.25rem}.purchased-by{color:var(--gray-600);font-weight:400;font-size:.85rem}.list-actions{display:flex;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--gray-200)}.receipt-input-section{padding:1rem;background:var(--gray-50);border-radius:.5rem;margin-top:1rem}.receipt-input-section label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--gray-700);font-size:.875rem}.receipt-number-input{width:100%;padding:.625rem;border:1px solid var(--gray-300);border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.receipt-number-input:focus{outline:none;border-color:var(--amc-orange)}.btn-save{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1rem}.btn-save svg{width:18px;height:18px}@media(max-width:767px){.shopping-list-view-container h2{font-size:1.25rem}.shopping-list-card{padding:var(--mobile-padding)}.shopping-item{flex-direction:column;gap:.75rem;padding:var(--mobile-padding)}.quantity-input-wrapper{flex-direction:column;align-items:flex-start}.quantity-input-wrapper input[type=number]{width:100%;min-height:var(--touch-target-min)}.list-actions{justify-content:stretch}.btn-save{width:100%;justify-content:center;min-height:var(--touch-target-min)}}@media(min-width:768px){.shopping-list-view-container{padding:1.5rem}}.my-receipts-container{padding:2rem;max-width:800px;margin:0 auto}.my-receipts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.my-receipts-header h1{margin:0;color:var(--text-primary)}.receipt-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.stat-label{font-size:.875rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px}.receipts-list{display:grid;gap:1rem}.receipt-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem}.receipt-photo{flex-shrink:0;width:120px;height:120px;background:var(--gray-100);display:flex;align-items:center;justify-content:center}.receipt-photo img{width:100%;height:100%;object-fit:cover}.receipt-info{flex:1;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.receipt-header{display:flex;justify-content:space-between;align-items:center}.receipt-category{padding:.25rem .75rem;background:var(--gray-100);border-radius:4px;font-size:.875rem;font-weight:600;color:var(--gray-700)}.receipt-amount{font-size:1.25rem;font-weight:700;color:var(--primary)}.receipt-date{font-size:.875rem;color:var(--gray-600)}.receipt-notes{margin:0;font-size:.875rem;color:var(--gray-700);font-style:italic}@media(max-width:768px){.my-receipts-container{padding:1rem}.my-receipts-header{flex-direction:column;align-items:stretch;gap:1rem}.receipt-card{flex-direction:column}.receipt-photo{width:100%;height:200px}}.upload-receipt-container{padding:2rem;max-width:600px;margin:0 auto}.upload-receipt-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.upload-receipt-header h1{margin:0;color:var(--text-primary)}.receipt-form{display:flex;flex-direction:column;gap:1.5rem}.document-section label{display:block;font-weight:600;margin-bottom:.25rem}.document-hint{font-size:.875rem;color:var(--gray-600);margin-bottom:.75rem}.document-type-radio{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.radio-option{display:flex;align-items:center;gap:.5rem;cursor:pointer}.radio-option input{width:auto}.invoice-inputs{display:flex;gap:.5rem}.invoice-inputs input{flex:1;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:.5rem}.document-section input[type=text]{padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:.5rem;width:100%}.photo-upload-label{display:block;cursor:pointer;border:2px dashed var(--gray-300);border-radius:8px;padding:2rem;text-align:center;transition:all .2s}.photo-upload-label:hover{border-color:var(--primary);background-color:var(--gray-50)}.photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--gray-600)}.photo-placeholder svg{color:var(--gray-400)}.photo-preview{max-width:100%;max-height:300px;border-radius:8px;object-fit:contain}@media(max-width:768px){.upload-receipt-container{padding:1rem}}.meal-schedule{padding:var(--mobile-padding);max-width:1000px;margin:0 auto}.page-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem}.page-header h2{margin:0;color:var(--gray-900);font-size:1.5rem}.event-info{color:var(--gray-600);font-size:.9rem;margin-top:.5rem}.success-message-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#d1fae5;border:1px solid #10b981;border-radius:8px;color:#065f46;font-weight:600;margin-bottom:1.5rem;animation:slideDown .3s ease-out}.success-message-banner svg{width:20px;height:20px;flex-shrink:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.days-container{display:flex;flex-direction:column;gap:2rem}.day-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014}.day-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--gray-200)}.day-header h3{margin:0;color:var(--gray-900);font-size:1.2rem}.meal-slots-container{display:flex;flex-direction:column;gap:1.5rem}.meal-slot{border:1px solid var(--gray-200);border-radius:8px;padding:1.25rem;background:var(--gray-50)}.meal-slot-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.meal-slot-header h4{margin:0;color:var(--gray-800);font-size:1.1rem}.serving-time{color:var(--gray-600);font-size:.85rem;padding:.25rem .75rem;background:#fff;border-radius:4px;border:1px solid var(--gray-300)}.courses-container{display:flex;flex-direction:column;gap:1.25rem}.course-section{display:flex;flex-direction:column;gap:.5rem}.course-label{font-size:.85rem;font-weight:600;color:var(--gray-700)}.course-card{background:#fff;border:1px solid var(--gray-300);border-radius:8px;padding:1.25rem;transition:all .2s}.course-card.status-planned{border-left:4px solid var(--amc-orange)}.course-card.status-cooking{border-left:4px solid var(--warning-color);background:#fffbf0}.course-card.status-cooked{border-left:4px solid var(--success-color);background:#f0fdf4}.course-header{margin-bottom:1rem}.course-title{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.course-name{font-weight:600;color:var(--gray-900);font-size:1.05rem}.course-servings{color:var(--gray-600);font-size:.85rem}.status-icon{font-size:1.1rem}.course-ingredients{margin-bottom:1rem}.course-ingredients strong{display:block;margin-bottom:.5rem;color:var(--gray-900);font-size:.9rem}.course-ingredients ul{margin:0;padding-left:0;list-style:none}.course-ingredients li{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--gray-100);gap:1rem}.course-ingredients li:last-child{border-bottom:none}.ingredient-info{color:var(--gray-700);font-size:.9rem}.stock-indicator{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;white-space:nowrap}.stock-indicator.success{background:#d1fae5;color:#065f46}.stock-indicator.warning{background:#fef3c7;color:#92400e}.stock-indicator.critical{background:#fee2e2;color:#991b1b}.stock-indicator.info{background:var(--gray-200);color:var(--gray-600)}.btn-start-cooking{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;font-size:1rem;font-weight:600}.btn-start-cooking svg{width:18px;height:18px}.cooking-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200)}.cooking-info{color:var(--gray-700);font-size:.9rem}.cooking-locked,.cooking-completed{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-radius:6px;font-size:.9rem}.cooking-locked{background:#fffbf0;border:1px solid #fbbf24;color:var(--gray-700)}.cooking-completed{background:#f0fdf4;border:1px solid #10b981;color:var(--gray-700)}.time-info{font-size:.85rem;color:var(--gray-600)}.btn-success{background:#10b981;color:#fff;border:none;padding:.875rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-success:hover{background:#059669}.btn-success svg{width:18px;height:18px}.course-info{margin-bottom:1.5rem;padding:1rem;background:var(--gray-50);border-radius:6px}.course-info p{margin:.5rem 0;color:var(--gray-700)}.success-box{display:flex;gap:1rem;padding:1.25rem;background:#d1fae5;border:1px solid #10b981;border-radius:8px;margin-bottom:1.5rem;align-items:center}.success-box svg{width:24px;height:24px;color:#065f46;flex-shrink:0}.success-box p{margin:0;color:#065f46;font-weight:500}.warning-box{display:flex;gap:1rem;padding:1.25rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin-bottom:1.5rem}.warning-box.critical{background:#fee2e2;border-color:#ef4444}.warning-box svg{width:24px;height:24px;color:#f59e0b;flex-shrink:0}.warning-box.critical svg{color:#dc2626}.warning-box ul{margin:.5rem 0;padding-left:1.5rem}.warning-box li{margin:.25rem 0;color:#92400e}.warning-box.critical li{color:#991b1b}.btn-warning{background:#f59e0b;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.btn-warning:hover{background:#d97706}.btn-warning:disabled{background:var(--gray-400);cursor:not-allowed}.no-data{text-align:center;padding:3rem 1rem;color:var(--gray-600)}@media(max-width:767px){.page-header h2{font-size:1.25rem}.day-section{padding:var(--mobile-padding)}.course-ingredients li{flex-direction:column;align-items:flex-start;gap:.5rem}.btn-start-cooking{min-height:var(--touch-target-min)}}@media(min-width:768px){.meal-schedule{padding:1.5rem}}.cleaning-dashboard{padding:var(--mobile-padding);max-width:1200px;margin:0 auto}.cleaning-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.btn-back{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--gray-100);border:1px solid var(--gray-300);border-radius:.5rem;color:var(--gray-700);font-size:.875rem;cursor:pointer;transition:all .2s}.btn-back:hover{background:var(--gray-200)}.btn-back svg{width:16px;height:16px}.header-info h1{margin:0;color:var(--gray-900)}.event-name{margin:.25rem 0 0;color:var(--gray-600);font-size:.875rem}.linen-status{background:#fff;border:1px solid var(--gray-200);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #00000014}.linen-card{display:flex;align-items:center;gap:1rem}.linen-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--gray-50);border-radius:.5rem;color:var(--gray-600)}.linen-info{flex:1}.linen-label{font-size:.875rem;color:var(--gray-600);margin-bottom:.25rem}.linen-count{font-size:1.5rem;font-weight:700}.linen-count.sufficient{color:#28a745}.linen-count.insufficient{color:#dc3545}.linen-warning{margin-top:1rem;padding:.875rem;background:#fff3cd;border-left:4px solid #ffc107;border-radius:.375rem;color:#856404;font-size:.875rem}.rooms-list{display:flex;flex-direction:column;gap:1rem}.room-card{background:#fff;border:1px solid var(--gray-200);border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #00000014;transition:all .2s}.room-card.status-pending{border-left:4px solid var(--gray-400)}.room-card.status-in-progress{border-left:4px solid #ffc107;background:#fffbf0}.room-card.status-ready{border-left:4px solid #28a745;background:#f8fff9}.room-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.room-info{display:flex;align-items:center;gap:1rem}.room-info h3{margin:0;color:var(--gray-900);font-size:1.25rem}.status-badge{display:inline-block;padding:.375rem .875rem;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-pending{background:var(--gray-200);color:var(--gray-700)}.status-badge.status-in-progress{background:#fff3cd;color:#856404}.status-badge.status-ready{background:#d4edda;color:#155724}.beds-count{font-size:1.125rem;font-weight:600;color:var(--gray-700)}.room-note{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--gray-50);border-radius:.5rem;margin-bottom:1rem;font-size:.875rem;color:var(--gray-700)}.room-note svg{color:var(--gray-500);flex-shrink:0}.room-actions{display:flex;gap:.75rem}.btn-start-cleaning,.btn-complete-cleaning{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;border-radius:.5rem;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s;border:none}.btn-start-cleaning{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-start-cleaning:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-complete-cleaning{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.btn-complete-cleaning:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.completed-info{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;background:#d4edda;color:#155724;border-radius:.5rem;font-weight:600}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:.75rem;max-width:500px;width:90%;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--gray-200)}.modal-header h2{margin:0;font-size:1.25rem;color:var(--gray-900)}.btn-close{display:flex;align-items:center;justify-content:center;padding:.5rem;background:transparent;border:none;color:var(--gray-600);cursor:pointer;border-radius:.375rem;transition:all .2s}.btn-close:hover{background:var(--gray-100);color:var(--gray-900)}.modal-body{padding:1.5rem}.modal-body p{margin:.5rem 0;color:var(--gray-700)}.modal-body ul{margin:1rem 0;padding-left:1.5rem;color:var(--gray-700)}.modal-body li{margin:.5rem 0}.warning-box{margin-top:1rem;padding:1rem;background:#fff3cd;border-left:4px solid #ffc107;border-radius:.375rem;color:#856404;font-weight:500}.success-box{margin-top:1rem;padding:1rem;background:#d4edda;border-left:4px solid #28a745;border-radius:.375rem;color:#155724;font-weight:500}.modal-actions{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid var(--gray-200)}.modal-actions button{flex:1;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}@media(max-width:767px){.cleaning-header{flex-direction:column;align-items:flex-start;margin-bottom:1.5rem}.room-card{padding:var(--mobile-padding)}.room-card-header{flex-direction:column;align-items:flex-start;gap:.75rem}.room-actions{flex-direction:column}.btn-start-cleaning,.btn-complete-cleaning{min-height:var(--touch-target-min)}}@media(min-width:768px){.cleaning-dashboard{padding:2rem}}.volunteer-layout{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background-color:var(--gray-50);padding-bottom:calc(var(--bottom-nav-height) + var(--bottom-nav-safe))}.volunteer-header{background:linear-gradient(135deg,var(--amc-orange) 0%,var(--amc-orange-dark) 100%);padding:var(--mobile-padding);flex-shrink:0;box-shadow:0 2px 8px #00000026}.volunteer-header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--mobile-gap);max-width:1200px;margin:0 auto}.nav-logo{height:56px;width:auto;max-width:180px;object-fit:contain;filter:brightness(0) invert(1)}.volunteer-top-nav{display:none}.volunteer-header-right{display:flex;align-items:center;gap:.5rem;min-width:0}.volunteer-email{display:none;color:#ffffffe6;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.btn-logout{padding:.5rem .75rem;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:.5rem;font-size:.875rem;cursor:pointer;transition:all .2s;min-height:var(--touch-target-min)}.btn-logout:hover{background:#ffffff4d}.volunteer-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.volunteer-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--bottom-nav-height) + var(--bottom-nav-safe));padding-bottom:var(--bottom-nav-safe);background:#fff;border-top:1px solid var(--gray-200);display:flex;justify-content:space-around;align-items:flex-start;padding-top:.5rem;box-shadow:0 -2px 10px #00000014;z-index:100}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem .25rem;background:none;border:none;color:var(--gray-500);font-size:.6875rem;cursor:pointer;transition:all .2s;min-height:var(--touch-target-min)}.bottom-nav-item:hover{color:var(--amc-orange)}.bottom-nav-item.active{color:var(--amc-orange);font-weight:600}.bottom-nav-item.active .bottom-nav-icon{color:var(--amc-orange)}.bottom-nav-icon{display:flex;align-items:center;justify-content:center;color:inherit}.bottom-nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}@media(min-width:768px){.volunteer-layout{padding-bottom:0}.volunteer-bottom-nav{display:none}.volunteer-header{padding:1rem 1.5rem}.volunteer-header-inner{flex-wrap:nowrap}.volunteer-top-nav{display:flex;gap:.5rem;margin:0 1rem}.top-nav-item{padding:.5rem 1rem;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:.5rem;font-size:.9rem;cursor:pointer;transition:all .2s;white-space:nowrap}.top-nav-item:hover{background:#ffffff40}.top-nav-item.active{background:#fff;color:var(--amc-orange);border-color:#fff}.nav-logo{height:64px}.volunteer-email{display:block}.volunteer-header-right{flex:1;justify-content:flex-end}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;color:#1f2937;line-height:1.5;min-height:-webkit-fill-available}:root{--amc-orange: #F4811F;--amc-orange-dark: #d66e1a;--amc-orange-light: #f69547;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--white: #ffffff;--black: #000000;--success: #10b981;--error: #ef4444;--warning: #f59e0b;--info: #3b82f6;--bp-mobile: 390px;--bp-mobile-max: 767px;--bp-tablet: 768px;--bp-tablet-max: 1023px;--bp-desktop: 1024px;--mobile-padding: 1rem;--mobile-gap: .75rem;--touch-target-min: 44px;--bottom-nav-height: 64px;--bottom-nav-safe: env(safe-area-inset-bottom, 0px)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--gray-900)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}a{color:var(--amc-orange);text-decoration:none;transition:color .2s}a:hover{color:var(--amc-orange-dark)}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--amc-orange);color:var(--white);padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:1rem;min-height:44px}.btn-primary:hover:not(:disabled){background-color:var(--amc-orange-dark)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{background-color:var(--white);color:var(--gray-700);padding:.75rem 1.5rem;border:1px solid var(--gray-300);border-radius:.5rem;font-weight:500;font-size:1rem;min-height:44px}.btn-secondary:hover:not(:disabled){background-color:var(--gray-50);border-color:var(--gray-400)}.card{background-color:var(--white);border:1px solid var(--gray-200);border-radius:.5rem;box-shadow:0 1px 3px #00000014;padding:1.5rem}input,textarea,select{font-family:inherit;font-size:1rem;padding:.75rem;border:1px solid var(--gray-300);border-radius:.375rem;width:100%;transition:border-color .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--amc-orange);box-shadow:0 0 0 3px #f4811f1a}label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--gray-700)}.spinner{border:3px solid var(--gray-200);border-top-color:var(--amc-orange);border-radius:50%;width:2rem;height:2rem;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}@media(max-width:768px){body{font-size:16px}.container{padding:0 .75rem}button,a,input,select{min-height:44px}}
