:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#333;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:320px;min-height:100vh;background:#f5f5f5}#root{width:100%;min-height:100vh}} h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.navbar{background:#fff;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:100}.navbar-container{max-width:1400px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:70px}.navbar-brand{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:700;color:#333}.brand-icon{font-size:28px}.brand-name{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mobile-menu-btn{display:none;background:none;border:none;font-size:24px;cursor:pointer;color:#333}.navbar-menu{display:flex;align-items:center;gap:30px}.nav-links{display:flex;gap:20px}.nav-link{background:none;border:none;padding:8px 16px;font-size:15px;font-weight:600;color:#666;cursor:pointer;border-radius:4px;transition:all .3s;white-space:nowrap}.nav-link:hover:not(:disabled){color:#667eea;background:#667eea1a}.nav-link.active{color:#667eea;background:#667eea26}.nav-link:disabled{opacity:.5;cursor:not-allowed}.navbar-actions{display:flex;gap:15px}.admin-toggle{padding:8px 16px;background:#f0f0f0;border:none;border-radius:4px;font-size:13px;font-weight:600;color:#333;cursor:pointer;transition:all .3s;white-space:nowrap}.admin-toggle:hover{background:#e0e0e0}.admin-toggle.active{background:#4caf50;color:#fff}@media(max-width:768px){.navbar-container{padding:0 15px;height:60px}.mobile-menu-btn{display:block}.navbar-menu{position:absolute;top:60px;left:0;right:0;flex-direction:column;gap:0;background:#fff;padding:15px;border-bottom:1px solid #e0e0e0;max-height:0;overflow:hidden;transition:max-height .3s}.navbar-menu.active{max-height:300px}.nav-links{flex-direction:column;gap:10px;width:100%}.nav-link{width:100%;text-align:left}.navbar-actions{flex-direction:column;gap:10px;width:100%}.admin-toggle{width:100%;text-align:center}.brand-name{font-size:18px}}.work-record-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;margin-bottom:20px;transition:box-shadow .3s ease}.work-record-card:hover{box-shadow:0 4px 12px #00000026}.card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;gap:15px}.card-actions{display:flex;gap:8px}.btn-edit,.btn-delete{padding:6px 12px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-edit{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-edit:hover{background:#ffffff4d}.btn-delete{background:#ff00004d;color:#fff;border:1px solid rgba(255,0,0,.5)}.btn-delete:hover{background:#ff000080}.card-description{padding:20px;border-bottom:1px solid #e0e0e0}.card-description p{margin:0;color:#333;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.card-images{padding:20px;background:#f9f9f9}.card-images h3{margin:0 0 15px;font-size:16px;color:#333}.images-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,150px));gap:12px}.image-container{position:relative;overflow:hidden;border-radius:6px;background:#fff;border:1px solid #e0e0e0;transition:all .2s;aspect-ratio:4 / 3}.image-container:hover{box-shadow:0 2px 8px #00000026}.work-image{width:100%;height:100%;object-fit:cover;display:block}.image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f5f5f5;color:#ccc;font-size:14px}.btn-remove-image{position:absolute;top:5px;right:5px;width:28px;height:28px;padding:0;background:#e60000d9;color:#fff;border:none;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;opacity:0}.image-container:hover .btn-remove-image{opacity:1}.btn-remove-image:hover{background:#c80000}@media(max-width:768px){.card-header{flex-direction:column;align-items:flex-start}.work-date{margin-left:0;margin-top:10px}.images-grid{grid-template-columns:repeat(auto-fit,minmax(100px,120px))}.image-container{aspect-ratio:4 / 3}}.user-view{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:40px 20px}.user-view-container{max-width:1200px;margin:0 auto}.page-title{font-size:32px;color:#333;text-align:center;margin-bottom:30px;font-weight:700}.search-controls{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px;background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.records-dropdown{min-width:150px;background:#fff;cursor:pointer;display:none}.no-records{text-align:center;padding:60px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.no-records p{margin:0;font-size:18px;color:#999}.loading,.error{text-align:center;padding:40px;font-size:18px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.error{background:#ffebee;color:#c62828;border-left:4px solid #c62828}@media(max-width:768px){.user-view{padding:20px 10px}.page-title{font-size:24px;margin-bottom:20px}.search-controls{flex-direction:column}.search-input,.records-dropdown{width:100%}}.work-record-form{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px;margin-bottom:30px}.work-record-form h2{margin:0 0 30px;color:#333;font-size:24px}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600;font-size:14px}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:120px}.image-upload-area{border:2px dashed #667eea;border-radius:6px;padding:30px;text-align:center;background:#f9f9f9;cursor:pointer;transition:all .3s;-webkit-user-select:none;user-select:none}.image-upload-area:hover{background:#f0f0f0;border-color:#764ba2}.image-upload-area.dragover{background:#e8e4ff;border-color:#764ba2;box-shadow:0 0 0 3px #667eea26;transform:scale(1.02)}.image-upload-area input{display:none}.image-upload-area p{margin:10px 0;color:#666}.image-count{font-weight:600;color:#667eea;font-size:14px}.images-preview{margin-top:20px}.images-preview h4{margin:0 0 15px;color:#333;font-size:14px}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:15px}.preview-item{position:relative;border-radius:6px;overflow:hidden;background:#fff;border:1px solid #e0e0e0}.preview-image{width:100%;height:120px;object-fit:cover;display:block}.remove-btn{position:absolute;top:5px;right:5px;background:#e60000e6;color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:12px;cursor:pointer;transition:background .3s}.remove-btn:hover:not(:disabled){background:#c80000}.remove-btn:disabled{opacity:.6;cursor:not-allowed}.file-name{margin:8px 8px 0;font-size:12px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.form-actions{display:flex;gap:10px;margin-top:30px}.submit-btn{flex:1;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.cancel-btn{flex:1;padding:12px;background:#e0e0e0;color:#333;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn:hover:not(:disabled){background:#d0d0d0}.cancel-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.work-record-form{padding:20px}.preview-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.preview-image{height:100px}}.admin-view{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px}.admin-container{max-width:1400px;margin:0 auto}.admin-header{text-align:center;margin-bottom:40px;color:#fff}.admin-header h1{margin:0 0 10px;font-size:32px;font-weight:700}.admin-badge{display:inline-block;background:#ffffff4d;color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.alert{padding:16px;border-radius:6px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;font-weight:500}.alert-success{background:#e8f5e9;color:#2e7d32;border-left:4px solid #2e7d32}.alert-error{background:#ffebee;color:#c62828;border-left:4px solid #c62828}.alert button{background:transparent;border:none;color:inherit;cursor:pointer;font-size:20px;opacity:.7;transition:opacity .2s;padding:0;margin:0;line-height:1}.alert button:hover{opacity:1}.admin-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.form-section{display:flex;flex-direction:column;height:calc(100vh - 200px);position:sticky;top:20px;overflow-y:auto;padding-right:10px}.form-section::-webkit-scrollbar{width:8px}.form-section::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.form-section::-webkit-scrollbar-thumb{background:#667eea99;border-radius:4px;transition:background .3s}.form-section::-webkit-scrollbar-thumb:hover{background:#667eeae6}.records-section{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000001a}.records-header{margin-bottom:25px}.records-header h2{margin:0 0 20px;color:#333;font-size:22px}.search-controls{display:flex;gap:12px;flex-wrap:wrap}.search-input,.records-dropdown{padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s}.search-input{flex:1;min-width:100%;background:#f9f9f9}.search-input:focus{outline:none;background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.records-dropdown{min-width:150px;background:#fff;cursor:pointer}.records-dropdown:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.no-records{text-align:center;padding:40px 20px;background:#f9f9f9;border-radius:6px}.no-records p{margin:0;color:#999}.records-list{display:grid;grid-template-columns:1fr;gap:20px}@media(max-width:1024px){.admin-content{grid-template-columns:1fr}.form-section{position:relative;top:auto}}@media(max-width:768px){.admin-view{padding:20px 10px}.admin-header h1{font-size:24px}.admin-container{max-width:100%}.records-section{padding:20px}.search-controls{flex-direction:column}.search-input,.records-dropdown{width:100%}}.login-modal{background:#fff;border-radius:8px;padding:40px;box-shadow:0 4px 20px #0000004d;max-width:450px;width:90%;animation:slideUp .3s ease}.login-modal h2{margin:0 0 30px;color:#333;font-size:24px;text-align:center}.login-modal form{display:flex;flex-direction:column;gap:20px}.login-modal .form-group{display:flex;flex-direction:column;gap:8px}.login-modal .form-group label{color:#333;font-weight:600;font-size:14px}.login-modal .form-group input{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s,box-shadow .3s}.login-modal .form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.login-modal .form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background:#ffebee;color:#c62828;padding:12px;border-radius:6px;font-size:14px;border-left:4px solid #c62828;margin:-10px 0 0}.login-modal .modal-actions{display:flex;gap:10px;margin-top:10px}.login-modal .btn-confirm,.login-modal .btn-cancel{flex:1;padding:12px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.login-modal .btn-confirm{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.login-modal .btn-confirm:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.login-modal .btn-confirm:disabled{opacity:.6;cursor:not-allowed}.login-modal .btn-cancel{background:#e0e0e0;color:#333}.login-modal .btn-cancel:hover:not(:disabled){background:#d0d0d0}.login-modal .btn-cancel:disabled{opacity:.6;cursor:not-allowed}.login-note{margin:20px 0 0;font-size:12px;color:#999;text-align:center}@media(max-width:768px){.login-modal{max-width:90%;padding:30px}.login-modal h2{font-size:20px}.login-modal .form-group input{font-size:16px}}.App{display:flex;flex-direction:column;min-height:100vh;background:#f5f5f5}.main-content{flex:1}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:8px;padding:30px;box-shadow:0 4px 20px #0000004d;max-width:400px;width:90%;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal h2{margin:0 0 20px;color:#333;font-size:20px;text-align:center}.modal form{display:flex;flex-direction:column;gap:15px}.modal input{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;transition:border-color .3s}.modal input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.modal-actions{display:flex;gap:10px}.btn-confirm,.btn-cancel{flex:1;padding:12px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.btn-confirm{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-confirm:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-cancel{background:#e0e0e0;color:#333}.btn-cancel:hover{background:#d0d0d0}*{margin:0;padding:0;box-sizing:border-box}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:#f5f5f5}@media(max-width:768px){.modal{max-width:90%}.modal h2{font-size:18px}}
