body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.signup-container{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);display:flex;justify-content:center;min-height:100vh;padding:20px}.signup-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:500px;padding:40px;width:100%}.signup-header{margin-bottom:30px;text-align:center}.signup-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#ff6b6b,#ffd93d,#6bcf7f);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:2.2rem;margin-bottom:10px}.signup-header p{color:#a0a0a0;font-size:1rem;margin:0}.signup-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-size:.9rem}.form-group input{background:#ffffff1a;border:1px solid #ffffff4d;border-radius:8px;color:#fff;font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-group input::placeholder{color:#fff9}.form-group input:focus{background:#ffffff26;border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b33;outline:none}.form-group input.error{background:#ff47571a;border-color:#ff4757}.error-message{font-size:.8rem;font-weight:500}.submit-error{border-radius:6px}.password-hint{color:#fff9;font-size:.8rem;margin-top:5px}.signup-button{background:linear-gradient(45deg,#ff6b6b,#ff8e8e);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:10px;padding:14px 20px;transition:all .3s ease}.signup-button:hover:not(:disabled){background:linear-gradient(45deg,#ff5252,#ff7575);box-shadow:0 5px 15px #ff6b6b66;transform:translateY(-2px)}.signup-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.signup-footer{border-top:1px solid #fff3;margin-top:30px;padding-top:20px;text-align:center}.signup-footer p{color:#a0a0a0;font-size:.9rem;margin:8px 0}.signup-footer a{color:#ff6b6b;font-weight:500;text-decoration:none;transition:color .3s ease}.signup-footer a:hover{color:#ff8e8e;text-decoration:underline}@media (max-width:768px){.signup-card{margin:10px;padding:30px 20px}.form-row{gap:20px;grid-template-columns:1fr}.signup-header h1{font-size:1.8rem}.signup-header p{font-size:.9rem}}@media (max-width:480px){.signup-container{padding:10px}.signup-card{padding:25px 15px}.form-group input{padding:10px 14px}.signup-button{font-size:1rem;padding:12px 18px}}.dashboard-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;min-height:100vh;overflow-y:auto;padding:20px}.dashboard-header{align-items:flex-start;background-color:#000000b3;border-radius:12px;box-shadow:0 3px 6px #0003;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.user-welcome{color:#ccc;font-size:.85rem;margin:0}.btn-logout{background:#ff6b6b;color:#fff;transition:background .3s}.btn-logout:hover{background:#ff5252}header h1{font-size:2.2rem}.header-actions .btn{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;margin:0 5px;padding:10px 20px}.dashboard-main{display:flex;flex-direction:column;gap:30px}.stats-section{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.stat-card{background:#ffffff1a;border-radius:10px;flex:1 1;max-width:180px;min-width:120px;padding:20px;text-align:center}.stat-card h3{font-size:1rem;margin-bottom:10px}.stat-number{font-size:1.8rem;font-weight:700}.content-section{background-color:#0009;border-radius:12px;box-shadow:0 4px 8px #0003;padding:20px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h2{color:#fff;font-size:1.5em;margin:0}.section-actions{align-items:center;display:flex;gap:15px}.view-all-link{color:#ff6b6b;font-size:.9rem;text-decoration:none;transition:color .3s}.view-all-link:hover{color:#ff8e8e}.firearm-card,.load-card,.session-card{background:#ffffff1a;border-radius:12px;box-shadow:0 4px 10px #0003;flex:1 1;max-width:350px;min-width:280px;padding:20px}.card-header,.session-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.card-header h3,.session-header h4{margin:0}.card-content,.session-content{margin-top:10px}.firearm-details,.load-details,.session-details{margin-bottom:15px}.detail-grid{grid-gap:15px 20px;display:grid;gap:15px 20px;grid-template-columns:1fr 1fr;margin-top:10px}.detail-item{display:flex;flex-direction:column;gap:2px}.card-notes,.session-notes{background-color:#ffffff0d;border-radius:8px;color:#ddd;font-size:.9rem;padding:15px}.sessions-list{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.session-date{margin-bottom:5px}.location{color:#ccc;font-size:.9rem}.session-summary{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.cartridge-info,.rounds-count{color:#ccc;font-size:.9rem;white-space:nowrap}.detail-item .label{font-size:.85rem;margin-bottom:2px}.detail-item .value{word-wrap:break-word;font-size:.9rem;overflow-wrap:break-word}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:10px}.stat-card{max-width:100%}.cards-grid,.sessions-list{flex-direction:column}.firearm-card,.load-card,.session-card{min-width:100%}}@media (max-width:480px){.header-content,.section-header{align-items:flex-start;flex-direction:column;gap:5px}.stat-card{padding:15px}.btn{padding:8px 16px}.cards-grid{gap:15px}.load-card,.session-card{padding:15px}.detail-grid{gap:10px;grid-template-columns:1fr}.detail-item{min-width:auto}.session-summary{align-items:flex-start;flex-direction:column;gap:5px}}.dashboard-footer{border-top:1px solid #fff3;margin-top:40px;padding:20px;text-align:center}.admin-link{color:#888;font-size:.9rem;text-decoration:none;transition:color .3s}.admin-link:hover{color:#ff6b6b}.new-load-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;min-height:100vh;padding:20px}.new-load-header{background-color:#000000b3;border-radius:12px;box-shadow:0 3px 6px #0003;margin-bottom:30px;padding:20px;text-align:center}.new-load-header h1{color:#fff;font-size:2.5rem;margin:10px 0}.new-load-header p{color:#ccc;font-size:1rem;margin:0}.new-load-form-container{margin:0 auto;max-width:800px}.new-load-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 20px 40px #0000004d;padding:40px}.form-section{border-bottom:1px solid #fff3;margin-bottom:40px;padding-bottom:30px}.form-section:last-of-type{border-bottom:none;margin-bottom:30px}.form-section h2{color:#fff;display:inline-block;font-weight:600}.form-row{grid-gap:20px;grid-template-columns:1fr 1fr}.form-group label{color:#fff;font-weight:600}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:12px 16px}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff9}.form-group input.error,.form-group select.error,.form-group textarea.error{background:#ff47571a;border-color:#ff4757}.error-message{color:#ff4757;font-size:14px}.submit-error{background:#ff47571a;border:1px solid #ff47574d;border-radius:8px;color:#ff4757;margin-bottom:20px;padding:12px 16px}.form-actions{justify-content:flex-end}.btn{border-radius:25px;font-size:16px;font-weight:600}.btn-primary:hover:not(:disabled){background:linear-gradient(45deg,#ff5252,#ff7575);box-shadow:0 5px 15px #ff6b6b66;transform:translateY(-2px)}.btn-primary:disabled{opacity:.6}.btn-secondary{background:#ffffff1a;border:1px solid #ffffff4d}.btn-secondary:hover{background:#fff3}@media (max-width:768px){.new-load-container{padding:10px}.new-load-form{border-radius:15px;margin:10px;padding:20px}.new-load-header h1{font-size:2rem}.form-row{gap:0;grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%}.back-button{display:inline-block;margin-bottom:20px;position:static}}.form-group input[type=number]{-moz-appearance:textfield}.form-group input[type=number]::-webkit-inner-spin-button,.form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px;padding-right:40px}.btn-primary:disabled{background:#ccc}.btn:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid #ff6b6b;outline-offset:2px}.load-developments-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;min-height:100vh;overflow-y:auto;padding:20px}.load-developments-header{background-color:#000000b3;border-radius:12px;box-shadow:0 3px 6px #0003;margin-bottom:20px;padding:20px}.load-developments-header h1{color:#fff;font-size:2rem;margin:10px 0}.load-developments-header p{color:#ccc;font-size:.9rem;margin:0}.back-button{display:inline-block;font-size:.9rem}.load-developments-main{display:flex;flex-direction:column;gap:20px}.loading{font-size:1.2rem}.loading,.no-loads{color:#fff;padding:40px;text-align:center}.no-loads{background:#ffffff1a;border-radius:12px}.no-loads p{font-size:1.1rem;margin-bottom:20px}.btn-primary:hover{background:linear-gradient(45deg,#ff5252,#ff7373);transform:translateY(-1px)}.cards-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.load-card{background:#ffffff1a;border-radius:12px;box-shadow:0 4px 10px #0003;flex:1 1;max-width:350px;min-width:280px;padding:20px}.card-header{margin-bottom:15px}.card-header h3{font-size:1.2rem}.status-badge{border-radius:12px;padding:5px 10px}.card-content{margin-top:10px}.load-details{margin-bottom:15px}.detail-row{margin-top:5px}.value.highlight{color:#ffd93d;font-weight:700}.card-stats{border-top:1px solid #fff3;justify-content:space-between;margin-top:15px;padding-top:10px}.stat-value{color:#ffd93d;font-size:1.1rem}.stat-label{margin-top:2px}.card-notes{color:#ddd;font-size:.9rem;margin-top:15px}@media (max-width:768px){.load-developments-container{padding:15px}.cards-grid{flex-direction:column}.load-card{min-width:100%}.card-header{align-items:flex-start;flex-direction:column;gap:10px}.detail-row{flex-direction:column;gap:2px}.card-stats{flex-direction:column;gap:10px}.stat-item{flex-direction:row;justify-content:space-between}}.new-session-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;min-height:100vh;padding:20px}.new-session-header{background-color:#000000b3;border-radius:12px;box-shadow:0 3px 6px #0003;margin-bottom:30px;padding:20px;text-align:center}.new-session-header h1{color:#fff;font-size:2.5rem;margin:10px 0}.new-session-header p{color:#ccc;font-size:1rem;margin:0}.back-button{background:none;border:none;cursor:pointer;margin-bottom:15px}.new-session-form-container{background-color:#ffffff1a;border-radius:12px;box-shadow:0 4px 8px #0003;margin:0 auto;max-width:800px;padding:30px}.new-session-form{display:flex;flex-direction:column;gap:30px}.form-section{background-color:#ffffff0d;border-left:4px solid #ff6b6b;border-radius:8px;padding:20px}.form-section h2{color:#ffd93d;font-size:1.4rem;margin:0 0 20px}.form-group{margin-bottom:20px}.form-row{display:flex;flex-wrap:wrap;gap:20px}.form-row .form-group{flex:1 1;min-width:200px}.form-group label{color:#ddd;display:block}.form-group input,.form-group select,.form-group textarea{background-color:#ffffff1a;border:1px solid #444;border-radius:4px;box-sizing:border-box;transition:border-color .3s,box-shadow .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#ffffff26}.form-group input::placeholder,.form-group textarea::placeholder{color:#888}.form-group input.error,.form-group select.error{background-color:#ff44441a!important;border-color:#f44!important;box-shadow:0 0 0 1px #f44!important;outline:none!important}.error-message{display:block;font-size:.8rem!important;margin-top:5px}.error-message,.submit-error{font-weight:400;line-height:1.2}.submit-error{background-color:#ff44441a;border:1px solid #f44;border-radius:4px;font-size:.9rem!important;margin:20px 0;padding:10px;text-align:center}.radio-group{display:flex;gap:20px;margin-top:5px}.radio-label{align-items:center;color:#ddd;cursor:pointer;display:flex;font-weight:400;gap:8px}.radio-label input[type=radio]{margin:0;width:auto}.form-actions{border-top:1px solid #fff3;gap:20px;justify-content:space-between}.btn{min-width:120px;padding:12px 24px;transition:all .3s}.btn-primary:hover:not(:disabled){background:linear-gradient(45deg,#ff5252,#ff7373);transform:translateY(-1px)}.btn-primary:disabled{background:#666;cursor:not-allowed;transform:none}.btn-secondary:hover{transform:translateY(-1px)}@media (max-width:768px){.new-session-container{padding:15px}.new-session-form-container{padding:20px}.form-row{flex-direction:column;gap:0}.form-row .form-group{min-width:auto}.radio-group{gap:10px}.form-actions,.radio-group{flex-direction:column}.new-session-header h1{font-size:2rem}}.session-logging-container{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;font-family:Arial,sans-serif;min-height:100vh;padding:20px}.error,.loading{align-items:center;color:#aaa;display:flex;font-size:18px;justify-content:center;min-height:60vh}.error{color:#ff6b6b}.session-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.session-info h1{font-size:24px;font-weight:600;margin:0 0 10px}.session-details{display:flex;flex-wrap:wrap;gap:20px}.session-details span{background:#ffffff1a;border-radius:8px;font-size:14px;padding:5px 12px}.session-actions .btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.btn-danger{background:#ff6b6b;color:#fff}.btn-danger:hover{background:#ff5252;transform:translateY(-2px)}.session-main{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 300px;margin-bottom:30px}.logging-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;padding:25px}.logging-section h2{font-size:20px;font-weight:600;margin:0 0 20px}.shot-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.form-group label{font-size:14px;font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ffffff4d;font-size:14px;padding:10px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4ecdc4;box-shadow:0 0 0 2px #4ecdc44d}.form-group textarea{min-height:60px}.single-shot-row{grid-gap:15px;align-items:end;display:grid;gap:15px;grid-template-columns:1fr 1fr 2fr auto}.save-shot-btn{background:#4ecdc4;border:none;border-radius:8px;color:#1a1a2e;cursor:pointer;font-size:16px;font-weight:600;height:fit-content;padding:12px 24px;transition:all .3s ease}.save-shot-btn:hover:not(:disabled){background:#45b7aa;transform:translateY(-2px)}.save-shot-btn:disabled{background:#666;cursor:not-allowed;transform:none}.add-shot-btn{background:#4ecdc4;border:none;border-radius:8px;color:#1a1a2e;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:12px 24px;transition:all .3s ease}.add-shot-btn:hover:not(:disabled){background:#45b7aa;transform:translateY(-2px)}.add-shot-btn:disabled{background:#666;cursor:not-allowed;transform:none}.statistics-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;margin-bottom:30px;padding:25px}.statistics-section h2{font-size:20px;font-weight:600;margin:0 0 20px}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr}.stat-item{background:#ffffff1a;border-radius:8px;padding:15px}.stat-value{color:#4ecdc4;font-size:24px}.stat-label{color:#ccc;font-size:12px;letter-spacing:.5px}.shots-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;grid-column:1/-1;padding:25px}.shots-section h2{font-size:20px;font-weight:600;margin:0 0 20px}.shots-list{display:flex;flex-direction:column;gap:15px}.shot-entry{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:15px}.shot-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.shot-number{color:#4ecdc4;font-weight:600}.shot-time{color:#aaa;font-size:12px}.shot-details{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:8px}.shot-details span{background:#ffffff1a;border-radius:4px;font-size:12px;padding:4px 8px}.shot-notes{color:#e0e0e0;font-size:14px;font-style:italic;margin-top:10px}@media (max-width:768px){.session-logging-container{padding:15px}.session-header{flex-direction:column;gap:20px;text-align:center}.session-details{justify-content:center}.form-row,.session-main,.single-shot-row{grid-template-columns:1fr}.single-shot-row{gap:15px}.shot-details{flex-direction:column;gap:8px}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.session-info h1{font-size:20px}.session-details span{font-size:12px}.stats-grid{grid-template-columns:1fr}}.add-firearm-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;margin:0 auto;max-width:1000px;min-height:100vh;padding:20px}.add-firearm-header{margin-bottom:30px;text-align:center}.add-firearm-header h1{color:#fff;font-size:2.5rem;margin-bottom:10px}.add-firearm-header p{color:#aaa;font-size:1rem;margin:5px 0 0}.error-state,.loading-state{min-height:400px}.error-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.error-state h2{color:#ff6b6b;margin-bottom:20px}.error-state p{color:#aaa;margin-bottom:30px;max-width:400px}.error-message{background:#ff6b6b33;border:1px solid #ff6b6b;border-radius:8px;color:#ff6b6b;font-weight:700;margin-bottom:20px;padding:12px;text-align:center}.add-firearm-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;box-shadow:0 20px 40px #0000004d;padding:30px}.form-section{margin-bottom:30px}.form-section h2{border-bottom:2px solid #ff6b6b;color:#ff6b6b;font-size:1.5rem;margin-bottom:20px;padding-bottom:10px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#e0e0e0;font-size:.95rem;font-weight:700;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#ffffff1a;border:2px solid #555;border-radius:8px;color:#fff;font-size:1rem;padding:12px;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#ffffff26;border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b33;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#aaa}.form-group select option{background:#333;color:#fff}.form-group textarea{min-height:100px;resize:vertical}.form-actions{border-top:1px solid #555;display:flex;gap:15px;justify-content:center;margin-top:30px;padding-top:20px}.btn{border-radius:8px;font-size:1rem;font-weight:700;padding:12px 30px}.btn-primary:hover{background:linear-gradient(45deg,#ff5252,#ff7575);box-shadow:0 5px 15px #ff6b6b66}.btn-cancel{background:#666;color:#fff}.btn-cancel:hover{background:#555;box-shadow:0 5px 15px #6666;transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn:disabled,.btn:disabled:hover{box-shadow:none;transform:none}@media (max-width:768px){.add-firearm-container{padding:15px}.add-firearm-header h1{font-size:2rem}.add-firearm-form{padding:20px}.form-grid{gap:15px;grid-template-columns:1fr}.form-actions{align-items:center;flex-direction:column}.btn{max-width:300px;width:100%}}@media (max-width:480px){.add-firearm-header h1{font-size:1.8rem}.add-firearm-header p{font-size:1rem}.form-section h2{font-size:1.3rem}.form-group input,.form-group select,.form-group textarea{font-size:.95rem;padding:10px}}.firearms-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;min-height:100vh;overflow-y:auto;padding:20px}.firearms-header{background-color:#000000b3;border-radius:12px;box-shadow:0 3px 6px #0003;margin-bottom:30px;padding:20px}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.header-left{flex-grow:1}.header-left h1{color:#fff;font-size:2.2rem;margin:0 0 5px}.page-description{color:#ccc;font-size:1rem;margin:0}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.btn{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:.95rem;padding:10px 20px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(45deg,#ff6b6b,#ff8e8e);color:#fff}.btn-primary:hover{background:linear-gradient(45deg,#ff5252,#ff7a7a);transform:translateY(-2px)}.btn-secondary{background:#555;color:#fff}.btn-secondary:hover{background:#666;transform:translateY(-2px)}.firearms-main{padding:0 20px}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#ff6b6b;height:40px;margin-bottom:20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.7}.empty-state h2{color:#ddd;font-size:1.8rem;margin-bottom:10px}.empty-state p{color:#aaa;font-size:1rem;margin-bottom:30px;max-width:400px}.firearms-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));padding:20px 0}.firearm-card{background:#ffffff1a;border-radius:12px;box-shadow:0 4px 10px #0003;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.firearm-card:hover{box-shadow:0 8px 20px #0000004d;transform:translateY(-5px)}.card-header{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.card-title-section{align-items:center;display:flex;flex:1 1;gap:15px}.card-header h3{color:#fff;font-size:1.4rem;margin:0}.btn-edit{background:#4caf50;border-radius:4px;color:#fff;display:inline-block;font-size:.85rem;padding:8px 16px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-edit:hover{background:#45a049;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.status-badge{border-radius:15px;color:#000;font-size:.8rem;font-weight:700;padding:5px 12px;text-transform:uppercase}.card-content{gap:20px}.card-content,.firearm-details{display:flex;flex-direction:column}.firearm-details{gap:12px}.detail-row{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.label{color:#ddd;font-weight:700;min-width:120px}.label,.value{font-size:.9rem}.value{word-wrap:break-word;color:#fff;flex:1 1;text-align:right}.card-stats{background-color:#ffffff0d;border-radius:8px;display:flex;gap:20px;justify-content:space-around;padding:15px 0}.stat-item{align-items:center;display:flex;flex-direction:column;text-align:center}.stat-value{color:#ff6b6b;font-size:1.2rem;font-weight:700;margin-bottom:5px}.stat-label{color:#aaa;font-size:.8rem;text-transform:uppercase}.card-notes{background-color:#ffffff0d;border-radius:8px;margin-top:10px;padding:15px}.card-notes h4{color:#ddd;font-size:.9rem;margin:0 0 10px;text-transform:uppercase}.card-notes p{color:#ccc;font-size:.9rem;line-height:1.4;margin:0}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:15px}.header-actions{justify-content:flex-start;width:100%}.firearms-grid{gap:20px;grid-template-columns:1fr}.firearm-card{padding:20px}.header-left h1{font-size:1.8rem}.card-stats{flex-direction:column;gap:10px}.detail-row{align-items:flex-start;flex-direction:column;gap:5px}.value{text-align:left}.label{min-width:auto}.card-title-section{gap:10px}.card-header,.card-title-section{align-items:flex-start;flex-direction:column}.card-header{gap:15px}.btn-edit{align-self:flex-end}}@media (max-width:480px){.firearms-container,.firearms-header{padding:15px}.firearms-main{padding:0 10px}.btn{font-size:.9rem;padding:8px 16px}.header-left h1{font-size:1.6rem}.page-description{font-size:.9rem}}.admin-container{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;min-height:100vh;padding:20px}.admin-header{align-items:center;background-color:#000000b3;border-radius:12px;box-shadow:0 3px 6px #0003;color:#fff;display:flex;flex-direction:column;margin-bottom:20px;padding:20px}.admin-header h1{font-size:2.5rem;margin:10px 0}.admin-header p{font-size:1rem;margin:0}.back-button{align-self:flex-start;color:#ff6b6b;font-size:1rem;margin-bottom:10px;text-decoration:none;transition:color .3s}.back-button:hover{color:#ff8e8e}.admin-main{display:flex;flex-direction:column;gap:40px}.admin-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;box-shadow:0 20px 40px #0000004d;padding:20px}.admin-section h2{color:#fff;margin-top:0}.info-card,.status-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;box-shadow:0 2px 4px #0000004d;color:#fff;margin-bottom:20px;padding:15px}.status-grid{display:flex;flex-wrap:wrap;justify-content:space-around}.status-card{flex:1 1;margin:10px;max-width:200px;text-align:center}.status-indicator{border-radius:12px;display:inline-block;font-size:.9rem;font-weight:700;margin-top:10px;padding:5px 10px}.status-indicator.online{background:#c8e6c9;color:#388e3c}.App{text-align:center}.App-header{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:40px 20px}.welcome-container{max-width:900px;padding:20px;width:100%}.app-title{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#ff6b6b,#ffd93d,#6bcf7f);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;font-weight:700;margin-bottom:10px;text-shadow:0 0 30px #ff6b6b4d}.subtitle{color:#a0a0a0;font-size:1.4rem;font-weight:300;margin-bottom:30px}.description{font-size:1.1rem;line-height:1.6;margin-bottom:40px}.description p{color:#e0e0e0;margin-bottom:30px}.features{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:40px 0}.feature-item{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.feature-item:hover{box-shadow:0 10px 30px #0000004d;transform:translateY(-5px)}.feature-item h3{color:#fff;font-size:1.3rem;margin-bottom:15px}.feature-item p{color:silver;font-size:.95rem;margin:0}.cta-section{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:40px}.cta-button{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;min-width:140px;padding:14px 30px;text-align:center;text-decoration:none;transition:all .3s ease}.cta-button:not(.secondary){background:linear-gradient(45deg,#ff6b6b,#ff8e8e);color:#fff}.cta-button:not(.secondary):hover{background:linear-gradient(45deg,#ff5252,#ff7575);box-shadow:0 5px 15px #ff6b6b66;transform:translateY(-2px)}.cta-button.secondary{background:#0000;border:2px solid #fff;color:#fff}.cta-button.secondary:hover{background:#fff;color:#1a1a2e;transform:translateY(-2px)}@media (max-width:768px){.app-title{font-size:2.5rem}.subtitle{font-size:1.2rem}.description{font-size:1rem}.features{grid-template-columns:1fr}.cta-section{align-items:center;flex-direction:column}.cta-button{max-width:250px;width:100%}}
/*# sourceMappingURL=main.60a3cae8.css.map*/