:root{--snowfun-primary:#c3f53c;--snowfun-primary-light:#d4f76d;--snowfun-primary-dark:#9bc82d;--snowfun-secondary:#a8e619;--snowfun-secondary-light:#c8f052;--snowfun-secondary-dark:#8bc70a;--snowfun-accent:#6b9b1f;--snowfun-accent-light:#8bc02a;--snowfun-accent-dark:#4a7010;--snowfun-success:#6b9b1f;--snowfun-warning:#f9a825;--snowfun-danger:#d32f2f;--snowfun-white:#fff;--snowfun-snow:#f7fce8;--snowfun-light-gray:#edf7d4;--snowfun-gray:#bdc3c7;--snowfun-dark-gray:#5a6a3e;--snowfun-charcoal:#2c3e1e;--snowfun-dark:#4a7010}*,:after,:before{box-sizing:border-box}html{font-size:16px}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--snowfun-snow);color:var(--snowfun-charcoal);line-height:1.6}a{color:inherit;text-decoration:none}.p-button{border-radius:6px}.p-button.p-button-primary{background-color:var(--snowfun-primary);border-color:var(--snowfun-primary);color:var(--snowfun-charcoal)}.p-button.p-button-primary:hover{background-color:var(--snowfun-primary-light);border-color:var(--snowfun-primary-light);color:var(--snowfun-charcoal)}.p-button.p-button-secondary{background-color:var(--snowfun-accent);border-color:var(--snowfun-accent)}.p-button.p-button-secondary:hover{background-color:var(--snowfun-accent-light);border-color:var(--snowfun-accent-light)}.p-card{border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.p-calendar .p-inputtext:focus,.p-dropdown:focus,.p-inputtext:focus{border-color:var(--snowfun-primary);box-shadow:0 0 0 2px rgba(26,82,118,.2)}.snowfun-header{background:linear-gradient(135deg,var(--snowfun-primary) 0,var(--snowfun-primary-dark) 100%);color:var(--snowfun-charcoal);padding:1.5rem 2rem}.snowfun-header h1{margin:0;font-size:1.75rem;font-weight:600}.snowfun-header p{margin:.5rem 0 0;opacity:.9}.stats-card{background:var(--snowfun-white);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.08)}.stats-card .stats-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.stats-card .stats-icon.primary{background-color:rgba(26,82,118,.1);color:var(--snowfun-primary)}.stats-card .stats-icon.accent{background-color:rgba(230,126,34,.1);color:var(--snowfun-accent)}.stats-card .stats-icon.success{background-color:rgba(39,174,96,.1);color:var(--snowfun-success)}.stats-card .stats-icon.warning{background-color:rgba(241,196,15,.1);color:var(--snowfun-warning)}.stats-card .stats-value{font-size:2rem;font-weight:700;color:var(--snowfun-charcoal)}.stats-card .stats-label{color:var(--snowfun-dark-gray);font-size:.875rem}.booking-container{max-width:800px;margin:0 auto;padding:2rem}.booking-step{background:var(--snowfun-white);border-radius:12px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.08)}.booking-step h2{color:var(--snowfun-primary);margin-top:0;margin-bottom:1.5rem;font-size:1.25rem;display:flex;align-items:center;gap:.75rem}.booking-step h2 .step-number{background:var(--snowfun-primary);color:var(--snowfun-charcoal);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600}.course-card{border:2px solid var(--snowfun-light-gray);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease;background:var(--snowfun-white)}.course-card:hover{border-color:var(--snowfun-secondary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.course-card.selected{border-color:var(--snowfun-primary);background:rgba(26,82,118,.03)}.course-card .course-name{font-weight:600;color:var(--snowfun-charcoal);margin-bottom:.5rem}.course-card .course-description{color:var(--snowfun-dark-gray);font-size:.875rem;margin-bottom:.75rem}.course-card .course-meta{display:flex;gap:1rem;flex-wrap:wrap}.course-card .course-tag{background:var(--snowfun-light-gray);padding:.25rem .75rem;border-radius:20px;font-size:.75rem;color:var(--snowfun-dark-gray)}.course-card .course-price{color:var(--snowfun-accent);font-weight:700;font-size:1.25rem}.admin-sidebar{background:var(--snowfun-accent-dark);min-height:100vh;color:var(--snowfun-white)}.admin-sidebar .sidebar-header{padding:1.5rem;border-bottom:1px solid hsla(0,0%,100%,.1)}.admin-sidebar .sidebar-menu{padding:1rem 0}.admin-sidebar .menu-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;color:hsla(0,0%,100%,.7);text-decoration:none;transition:all .2s ease}.admin-sidebar .menu-item:hover{background:hsla(0,0%,100%,.1);color:var(--snowfun-white)}.admin-sidebar .menu-item.active{background:var(--snowfun-primary);color:var(--snowfun-charcoal)}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.bestaetigt{background:rgba(39,174,96,.15);color:#1e8449}.status-badge.storniert{background:rgba(231,76,60,.15);color:#c0392b}.status-badge.abgeschlossen{background:rgba(93,173,226,.15);color:#2471a3}@media (max-width:768px){.booking-container{padding:1rem}.booking-step{padding:1.25rem}.snowfun-header{padding:1rem}.snowfun-header h1{font-size:1.25rem}}.p-datatable .p-datatable-thead>tr>th{background:var(--snowfun-snow);color:var(--snowfun-charcoal);font-weight:600}.p-datatable .p-datatable-tbody>tr:hover{background:rgba(26,82,118,.03)}.p-toast .p-toast-message{box-shadow:0 4px 12px rgba(0,0,0,.15)}.p-toast .p-toast-message .p-toast-message-content{padding:1rem}.p-toast .p-toast-message .p-toast-message-content .p-toast-message-text{margin-left:.75rem}.p-toast .p-toast-message.p-toast-message-success{background:#1e8449;border:none;color:#fff}.p-toast .p-toast-message.p-toast-message-success .p-toast-icon-close,.p-toast .p-toast-message.p-toast-message-success .p-toast-message-icon{color:#fff}.p-toast .p-toast-message.p-toast-message-info{background:#2471a3;border:none;color:#fff}.p-toast .p-toast-message.p-toast-message-info .p-toast-icon-close,.p-toast .p-toast-message.p-toast-message-info .p-toast-message-icon{color:#fff}.p-toast .p-toast-message.p-toast-message-warn{background:#b7950b;border:none;color:#fff}.p-toast .p-toast-message.p-toast-message-warn .p-toast-icon-close,.p-toast .p-toast-message.p-toast-message-warn .p-toast-message-icon{color:#fff}.p-toast .p-toast-message.p-toast-message-error{background:#c0392b;border:none;color:#fff}.p-toast .p-toast-message.p-toast-message-error .p-toast-icon-close,.p-toast .p-toast-message.p-toast-message-error .p-toast-message-icon{color:#fff}.p-dialog .p-dialog-header{background:var(--snowfun-primary)}.p-dialog .p-dialog-header,.p-dialog .p-dialog-header .p-dialog-header-icon{color:var(--snowfun-charcoal)}.confirmation-success{text-align:center;padding:2rem}.confirmation-success .success-icon{width:80px;height:80px;border-radius:50%;background:rgba(39,174,96,.1);color:var(--snowfun-success);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:2.5rem}.confirmation-success h2{color:var(--snowfun-success);margin-bottom:1rem}.confirmation-success .booking-details{background:var(--snowfun-snow);border-radius:8px;padding:1.5rem;text-align:left;margin-top:1.5rem}.fc{font-family:inherit}.fc .fc-toolbar-title{font-size:1.25rem;font-weight:600;color:var(--snowfun-charcoal)}.fc .fc-button-primary{background-color:var(--snowfun-primary);border-color:var(--snowfun-primary);color:var(--snowfun-charcoal)}.fc .fc-button-primary:hover{background-color:var(--snowfun-primary-dark);border-color:var(--snowfun-primary-dark);color:var(--snowfun-charcoal)}.fc .fc-button-primary:disabled{background-color:var(--snowfun-gray);border-color:var(--snowfun-gray)}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background-color:var(--snowfun-accent-dark);border-color:var(--snowfun-accent-dark);color:#fff}.fc .fc-daygrid-day-top{justify-content:center}.fc .fc-daygrid-day.fc-day-today{background-color:var(--snowfun-light-gray)}.fc .fc-timegrid-slot{height:2.5rem}.fc .fc-event{cursor:pointer;border-radius:4px;font-size:.85rem;padding:2px 4px}.fc .fc-event:hover{opacity:.9}.fc .fc-col-header-cell-cushion{color:var(--snowfun-charcoal);font-weight:600}.fc .fc-timegrid-axis-cushion{color:var(--snowfun-dark-gray)}.fc .fc-timegrid-now-indicator-line{border-color:var(--snowfun-danger)}.fc .fc-timegrid-now-indicator-arrow{border-color:var(--snowfun-danger);border-top-color:transparent;border-bottom-color:transparent}