*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#0f172a;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.container{max-width:800px;margin:0 auto;padding:20px}header{text-align:center;margin-bottom:30px;color:#fff}header h1{font-size:2.5rem;margin-bottom:10px;font-weight:700;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.3)}header p{font-size:1.1rem;color:#fff;opacity:.9}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.language-switcher{display:flex;gap:5px;background:#fff3;border-radius:6px;padding:4px}.lang-btn{background:transparent;color:#fff;border:none;padding:6px 12px;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.lang-btn:hover{background:#fff3}.lang-btn.active{background:#fff;color:#0f172a}.card{background:#fff;border-radius:10px;padding:25px;margin-bottom:20px;box-shadow:0 4px 6px #0000001a;transition:transform .2s ease}.card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.card h2{color:#0f172a;margin-bottom:20px;font-size:1.5rem;font-weight:600}.section-description{color:#64748b;margin-bottom:20px;font-style:italic}.form-note{margin-top:15px;padding:10px;background:#f8fafc;border-left:3px solid #0f172a;border-radius:4px}.form-note small{color:#64748b;font-size:.85rem}.form-actions{display:flex;gap:10px;margin-top:20px}.form-actions button{flex:1}.form-group{margin-bottom:20px;width:100%;overflow:hidden}.form-inline{display:flex;align-items:center}.checkbox-label{display:flex;align-items:center;gap:10px;font-weight:500;color:#0f172a}.form-hint{display:block;margin-top:6px;font-size:.8rem;color:#64748b}label{display:block;margin-bottom:5px;font-weight:500;color:#0f172a}input[type=text],input[type=date],input[type=time],input[type=number],input[type=email],input[type=tel],input[type=password]{width:100%;padding:12px;border:2px solid #e2e8f0;border-radius:6px;font-size:16px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#0f172a;background-color:#fff;box-sizing:border-box;transition:border-color .2s ease}input[type=text]:focus,input[type=date]:focus,input[type=time]:focus,input[type=number]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=password]:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1a}textarea{width:100%;padding:12px;border:2px solid #e2e8f0;border-radius:6px;font-size:16px;transition:border-color .2s ease}textarea:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1a}textarea:focus-visible{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1a}button{background:#0f172a;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease}button:hover{background:#1e293b;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}button:active{transform:translateY(0)}.secondary-btn{background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0}.secondary-btn:hover{background:#f1f5f9;border-color:#cbd5e0}.edit-btn{background:#3b82f6;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.edit-btn:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 8px #3b82f64d}.event-navigation{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e2e8f0}.event-header{margin-bottom:20px}.event-title-section{flex:1;min-width:200px}.event-datetime-display{display:flex;gap:12px;align-items:center;margin-bottom:8px;flex-wrap:wrap}.event-date,.event-time,.event-description{font-size:.9rem;color:#64748b;font-weight:500;background:#f8fafc;padding:4px 8px;border-radius:4px;border:1px solid #e2e8f0}.event-id-display{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;background:#f7fafc;border-radius:6px;border:1px solid #e2e8f0}.event-id-label{color:#64748b;font-size:.9rem;font-weight:500}.event-id-value{color:#0f172a;font-family:Courier New,monospace;font-weight:600;font-size:1rem;background:#f8fafc;padding:2px 6px;border-radius:4px;border:1px solid #e2e8f0}.copy-id-btn{background:#0f172a;color:#fff;border:none;padding:4px 8px;border-radius:4px;font-size:.8rem;cursor:pointer;transition:all .2s ease}.copy-id-btn:hover{background:#1e293b;transform:scale(1.05)}.cars-summary{display:flex;flex-direction:column;gap:12px;padding:16px 20px;background:#fff;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;margin-bottom:16px}.summary-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.cars-summary h3{margin:0;font-size:1.1rem;font-weight:600;color:#0f172a}.summary-stats{display:flex;gap:16px;margin:0;flex-wrap:wrap}.stat{font-size:.875rem;color:#64748b}.stat.highlight{color:#0f172a;font-weight:600}.add-car-btn{background:#0f172a;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease}.add-car-btn:hover{background:#1e293b}.ride-passenger-list{display:flex;flex-direction:column;gap:10px}.passenger-input-row{display:flex;align-items:center;gap:8px}.passenger-input-row input{flex:1}.remove-passenger-btn{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;padding:6px 10px;font-size:.8rem}.remove-passenger-btn:hover{background:#f1f5f9;color:#0f172a}.add-passenger-btn{margin-top:12px;width:100%;font-size:.9rem}.car-item{background:#f8fafc;padding:20px;border-radius:8px;margin-bottom:15px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000001a;position:relative}.car-layout{display:flex;flex-direction:column;gap:20px}.seats-container{display:flex;flex-wrap:wrap;gap:8px;padding:16px 0;justify-content:center}.seat-box{position:relative;width:100px;min-width:80px;max-width:120px;height:70px;cursor:pointer;transition:all .2s ease;border-radius:8px;border:1px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 12px;font-weight:500;font-size:14px;flex:1}.seat-box:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.seat-box.available{background:#22c55e;border-color:#16a34a;color:#fff}.seat-box.available:hover{background:#16a34a;border-color:#15803d}.seat-box.occupied{background:#475569;border-color:#334155;color:#fff}.seat-box.occupied .passenger-name{color:#fff;opacity:1}.seat-box.occupied:hover{background:#475569;border-color:#334155}.seat-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}.seat-number{font-size:16px;font-weight:600;margin-bottom:2px}.passenger-name{font-size:12px;font-weight:600;text-align:center;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:1;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);line-height:1.2}.seats-legend{display:flex;align-items:center;gap:15px;margin-bottom:12px;padding:8px 12px;background:#f8fafc;border-radius:6px;flex-wrap:wrap}.legend-label{font-size:13px;font-weight:600;color:#475569;margin-right:5px}.legend-item{display:flex;align-items:center;gap:6px}.legend-seat{width:50px;height:35px;min-width:50px;max-width:50px;cursor:default;flex:0 0 auto}.legend-seat:hover{transform:none;box-shadow:none}.legend-text{font-size:12px;color:#64748b;font-weight:500}.car-header{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.car-header-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.car-title-container{display:flex;align-items:center;gap:8px;flex:1}.car-header h4{color:#64748b;margin:0;font-size:1.1rem;font-weight:600;flex:1}.car-badge-row{display:flex;align-items:center;gap:10px}.car-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.driver-badge{background:#0f172a;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:500;font-size:.875rem;line-height:1.5;box-sizing:border-box;display:inline-block;cursor:pointer;transition:all .2s ease}.car-pin-badge{padding:4px 12px;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.3px;white-space:nowrap;border:1px solid;color:#fff}.car-pin-badge.has-seats{background:#22c55e;border-color:#16a34a;color:#fff}.car-pin-badge.no-seats{background:#475569;border-color:#334155;color:#fff}.remove-car-btn{background:#0f172a;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:500;font-size:.875rem;line-height:1.5;box-sizing:border-box;display:inline-block;cursor:pointer;transition:all .2s ease}.remove-car-btn:hover{background:#1e293b}.remove-car-btn:active{transform:scale(.95)}.car-menu-container{position:relative;display:inline-block}.car-menu-trigger{color:#64748b;font-size:1.2rem;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px;line-height:1;transition:color .2s ease}.car-menu-trigger:hover{color:#0f172a}.car-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:120px;z-index:1000;overflow:hidden}.car-menu-item{display:block;width:100%;padding:10px 16px;text-align:left;background:#fff;border:none;color:#0f172a;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease}.car-menu-item:hover{background:#f8fafc}.car-menu-item-danger{color:#b91c1c}.car-menu-item-danger:hover{background:#fee2e2;color:#991b1b}.car-addresses{padding:12px 20px;background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;font-size:.9rem}.car-address{color:#64748b;display:flex;align-items:center;gap:6px}.car-address strong{color:#0f172a;font-weight:600;min-width:70px}.seat-info{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.seat-count{font-weight:500;color:#64748b}.ride-requests-block{margin-top:25px}.ride-requests-card{background:#f8fafc;border-radius:10px;padding:20px;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0f172a0d;width:100%}.ride-requests-card h3{margin-bottom:12px;color:#0f172a;font-size:1.2rem;font-weight:600}.ride-request-helper{color:#64748b;font-size:.9rem;margin-bottom:16px}.ride-requests-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.ride-requests-header>div{flex:1}.ride-requests-count{font-size:.85rem;color:#64748b}.ride-requests-list{display:flex;flex-direction:column;gap:12px}.ride-request-item{display:flex;flex-direction:column;gap:16px;padding:20px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.ride-request-main h4{margin:0 0 6px;font-size:1.05rem;color:#0f172a}.ride-request-main{display:flex;flex-direction:column;gap:8px}.ride-request-passengers-list{display:flex;flex-direction:column;gap:12px}.ride-request-party,.ride-request-car,.ride-request-notes{color:#64748b;font-size:.9rem;margin-bottom:4px}.ride-request-notes{font-style:italic}.ride-request-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ride-request-actions button{font-size:.85rem;padding:8px 12px}.ride-request-passenger{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.ride-request-passenger.waiting{border-left:4px solid #0f172a}.ride-request-passenger.assigned{opacity:.6}.ride-request-passenger header{display:flex;justify-content:space-between;align-items:center;gap:12px}.ride-request-passenger header h4{color:#0f172a;font-weight:600}.ride-request-passenger header h4{margin:0}.ride-request-meta{font-size:.85rem;color:#64748b;display:flex;flex-direction:column;gap:4px}.map-link{color:#3b82f6;text-decoration:none;margin-left:4px;transition:transform .2s ease;display:inline-flex;align-items:center;vertical-align:middle}.map-link svg{width:16px;height:16px}.map-link:hover{transform:scale(1.2);color:#2563eb}.assign-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.assign-controls.no-cars{gap:12px}.assign-select{flex:1;min-width:160px;padding:10px;border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;background:#fff;color:#0f172a}.assign-controls button{font-size:.8rem;padding:6px 10px}.status-tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-tag.waiting{background:#fef3c7;color:#b45309}.status-tag.assigned{background:#dcfce7;color:#166534}.empty-state{text-align:center;padding:24px 16px;background:#fff;border:1px dashed #cbd5e0;border-radius:8px;color:#64748b;font-size:.95rem}@media (min-width: 700px){.ride-requests-block{grid-template-columns:repeat(2,minmax(0,1fr))}}.seat-booking-form{background:#f8fafc;padding:20px;border-radius:6px;margin-top:20px;border:1px solid #e2e8f0}.seat-booking-form h3{margin-bottom:15px;color:#0f172a;font-weight:600}.passengers{margin-top:15px;padding:15px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.passengers strong{color:#0f172a;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;display:block;font-weight:600}.passengers ul{list-style:none;margin:0;padding:0}.passengers li{background:#f8fafc;padding:8px 12px;margin:5px 0;border-radius:4px;border-left:3px solid #0f172a;font-size:.9rem;color:#0f172a;display:flex;align-items:center;justify-content:space-between}.free-seat-btn{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-left:8px}.free-seat-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e0}.free-seat-btn:active{transform:scale(.95)}.field-error{color:#dc2626;font-size:.875rem;margin-top:5px;display:flex;align-items:center}.field-error:before{content:"!";margin-right:5px;font-size:.75rem;font-weight:700}button:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none}button:disabled:hover{background:#f1f5f9;color:#94a3b8;transform:none;box-shadow:none}.loading{opacity:.6;pointer-events:none}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 10px 25px #0003;border:1px solid #e2e8f0;max-height:90vh;overflow-y:auto}.modal-content-large{max-width:600px}.modal-content h3{margin:0 0 12px;color:#0f172a;font-size:1.25rem;font-weight:600}.modal-content p{margin:0 0 20px;color:#64748b;font-size:.9rem;line-height:1.5}.modal-content input{width:100%;padding:12px;border:2px solid #e2e8f0;border-radius:6px;font-size:16px;margin-bottom:20px;transition:border-color .2s ease}.modal-content input:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1a}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.btn-primary{background:#0f172a;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary:hover{background:#1e293b;transform:translateY(-1px)}.btn-danger{background:#dc2626;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-danger:hover{background:#b91c1c;transform:translateY(-1px)}.hidden{display:none}.success,.error{background:#f8fafc;color:#0f172a;padding:12px 16px;border-radius:8px;margin-bottom:16px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;font-weight:500;font-size:.9rem}input[type=date],input[type=time]{-webkit-appearance:none;-moz-appearance:none;appearance:none}@supports (-webkit-touch-callout: none){input[type=date],input[type=time]{font-size:16px;transform:scale(1);-webkit-transform:scale(1)}}@media (max-width: 600px){.container{padding:10px}header h1{font-size:2rem}.share-section{flex-direction:column}input[type=date],input[type=time]{font-size:16px;padding:14px 12px;min-height:48px;max-width:100%;box-sizing:border-box}.form-group{max-width:100%;box-sizing:border-box}.card{overflow:hidden}.ride-requests-header{flex-direction:column;align-items:stretch;gap:12px}.ride-requests-header>div{width:100%}.ride-requests-header button{width:100%}.modal-content-large{max-width:95%;padding:20px}.ride-request-item{flex-direction:column;align-items:stretch}.ride-request-actions{justify-content:flex-end}.passenger-input-row{flex-direction:column;align-items:stretch}.event-navigation{text-align:center}.event-header{margin-bottom:15px}.event-title-section{min-width:auto}.event-datetime-display{flex-direction:column;align-items:flex-start;gap:6px}.event-date,.event-time{font-size:.85rem;padding:3px 6px}.cars-summary{flex-direction:column;align-items:stretch;gap:12px;text-align:center}.summary-stats{justify-content:center;gap:12px}.car-header-row{flex-direction:column;align-items:stretch;gap:8px}.car-actions{justify-content:center;width:100%}.car-badge-row{justify-content:center}.seats-legend{gap:10px;padding:6px 10px}.legend-label{font-size:12px}.legend-seat{width:40px;height:30px;min-width:40px;max-width:40px}.legend-text{font-size:11px}.seats-container{padding:12px;gap:6px}.seat-box{width:80px;min-width:70px;max-width:100px;height:60px;padding:6px 8px;flex:0 0 auto}.seat-number{font-size:14px}.passenger-name{font-size:11px;max-width:70px;font-weight:600}}@media (max-width: 400px){.container{padding:8px}.card{padding:15px}.event-date,.event-time{font-size:.8rem;padding:2px 4px}.summary-stats{flex-direction:column;gap:4px}.seat-box{width:70px;min-width:60px;height:55px;padding:4px 6px}.seat-number{font-size:12px}.passenger-name{font-size:10px;max-width:60px;font-weight:600}}
