*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333}#app{max-width:800px;margin:0 auto;padding:20px;min-height:100vh}header{text-align:center;margin-bottom:30px;color:#fff}header h1{font-size:2.5rem;margin-bottom:10px;text-shadow:0 2px 4px rgba(0,0,0,.3)}header p{font-size:1.1rem;opacity:.9;margin-bottom:20px}.nav-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:20px}.nav-tab{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;padding:12px 24px;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-tab:hover{background:#ffffff4d;transform:translateY(-2px)}.nav-tab.active{background:#ffffffe6;color:#333;border-color:#ffffffe6}.page{display:none;background:#fff;border-radius:20px;padding:30px;box-shadow:0 10px 30px #0003;animation:fadeIn .5s ease-out}.page.active{display:block}.date-section,.report-section{margin-bottom:25px}label{display:block;font-weight:600;margin-bottom:8px;color:#555;font-size:1.1rem}input[type=date]{width:100%;padding:15px;border:2px solid #e1e5e9;border-radius:10px;font-size:1.1rem;transition:border-color .3s ease}input[type=date]:focus{outline:none;border-color:#667eea}textarea{width:100%;padding:15px;border:2px solid #e1e5e9;border-radius:10px;font-size:1rem;font-family:inherit;resize:vertical;min-height:200px;transition:border-color .3s ease}textarea:focus{outline:none;border-color:#667eea}.actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:30px}.btn{padding:12px 24px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;min-width:120px}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5a6fd8;transform:translateY(-2px)}.btn-secondary{background:#f8f9fa;color:#555;border:2px solid #e1e5e9}.btn-secondary:hover{background:#e9ecef;transform:translateY(-2px)}.btn-sync{background:#28a745;color:#fff}.btn-sync:hover{background:#218838;transform:translateY(-2px)}.status{margin-top:20px;padding:15px;border-radius:10px;text-align:center;font-weight:600}.status.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.status.info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.list-header h2{color:#333;font-size:1.8rem}.reports-list{max-height:500px;overflow-y:auto}.report-item{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:15px;padding:20px;margin-bottom:15px;transition:all .3s ease}.report-item:hover{border-color:#667eea;box-shadow:0 5px 15px #0000001a}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.report-date{font-weight:600;font-size:1.1rem;color:#333}.report-status{padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.report-status.synced{background:#d4edda;color:#155724}.report-status.unsynced{background:#fff3cd;color:#856404}.report-status.syncing{background:#d1ecf1;color:#0c5460}.report-content{color:#666;line-height:1.6;max-height:100px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.report-actions{margin-top:15px;display:flex;gap:10px}.report-actions .btn{flex:none;padding:8px 16px;font-size:.9rem}.empty-state{text-align:center;padding:40px;color:#666}.empty-state h3{margin-bottom:10px;color:#333}@media (max-width: 768px){#app{padding:10px}header h1{font-size:2rem}.page{padding:20px}.actions{flex-direction:column}.btn{flex:none}.list-header{flex-direction:column;gap:15px;align-items:stretch}.report-header{flex-direction:column;align-items:flex-start;gap:10px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.boat-section,.crew-section{margin-bottom:25px}select{width:100%;padding:15px;border:2px solid #e1e5e9;border-radius:10px;font-size:1.1rem;background:#fff;transition:border-color .3s ease}select:focus{outline:none;border-color:#667eea}
