.skeleton-loader{background:linear-gradient(90deg,#2a2a2a 25%,#363636,#2a2a2a 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;opacity:.7}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{display:flex;flex-direction:column;gap:8px}.skeleton-text-line{margin-bottom:4px}.skeleton-card{background:#1e1e1e;border:1px solid #444444;border-radius:8px;padding:16px;margin-bottom:12px}.skeleton-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.skeleton-card-content{display:flex;flex-direction:column;gap:12px}.skeleton-card-stats{display:flex;gap:16px;margin-top:8px}.skeleton-attributes{padding:20px}.skeleton-title{margin-bottom:20px}.skeleton-attributes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.skeleton-attribute{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.skeleton-armor-diagram{display:flex;flex-direction:column;align-items:center;padding:20px}.skeleton-armor-body{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:20px}.skeleton-head{margin-bottom:10px}.skeleton-armor-torso{display:flex;gap:15px}.skeleton-armor-arms{display:flex;gap:30px;margin-top:-20px}.skeleton-armor-legs{display:flex;gap:15px;margin-top:-30px}.skeleton-equipment-list{padding:20px}.skeleton-equipment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.skeleton-equipment-items{display:flex;flex-direction:column;gap:12px}.skeleton-equipment-item{min-height:120px}.skeleton-skills{padding:20px}.skeleton-skills-search{margin:20px 0}.skeleton-skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.skeleton-skill-item{background:#1e1e1e;border:1px solid #444444;border-radius:8px;padding:12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.skeleton-vehicle{padding:20px}.skeleton-vehicle-header{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.skeleton-vehicle-stats{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}.skeleton-vehicle-column{display:flex;flex-direction:column;gap:12px}.skeleton-vehicle-stat{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #333}.skeleton-vehicle-armor{margin-top:20px}.skeleton-armor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:16px}.skeleton-page{padding:20px;min-height:400px}.skeleton-page-title{margin-bottom:30px}.skeleton-page-content{display:flex;flex-direction:column;gap:30px}.skeleton-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}@media (max-width: 768px){.skeleton-attributes-grid{grid-template-columns:repeat(2,1fr)}.skeleton-skills-grid,.skeleton-vehicle-stats{grid-template-columns:1fr}.skeleton-armor-arms{gap:10px}.skeleton-armor-torso{flex-direction:column;gap:10px}.skeleton-page-grid{grid-template-columns:1fr}}@media (max-width: 480px){.skeleton-card,.skeleton-attributes,.skeleton-equipment-list,.skeleton-skills,.skeleton-vehicle,.skeleton-page,.skeleton-armor-diagram{padding:15px}.skeleton-armor-body{gap:10px}}.vehicles-container{padding:20px;background:#1a1a2e;min-height:100vh;color:#fff}.vehicles-header{text-align:center;margin-bottom:30px}.vehicles-header h1{background:#16213e;color:#fff;padding:15px;margin:0;border-radius:8px;font-size:28px;border:2px solid #3498db;box-shadow:0 4px 8px #3498db4d}.vehicles-filter{margin:1rem 0;padding:1rem;background:var(--vscode-editor-background);border:1px solid var(--vscode-panel-border);border-radius:4px;text-align:center}.search-control{display:inline-flex;align-items:center;gap:.5rem}.search-input{padding:.5rem;border:2px solid #555;background:var(--vscode-input-background);color:var(--vscode-input-foreground);border-radius:4px;font-size:14px;min-width:300px}.search-input:focus{outline:none;border-color:var(--vscode-focusBorder)}.vehicle-categories{display:flex;flex-direction:column;gap:30px}.vehicle-category{background:#16213e;border:2px solid #3498db;border-radius:8px;padding:20px;box-shadow:0 4px 8px #3498db4d}.vehicle-category h2{color:#3498db;margin:0 0 20px;padding:10px;background:#1a1a2e;border-radius:6px;text-align:center;font-size:20px;border:1px solid #3498db}.vehicles-table-container{margin:0}.vehicles-table{width:100%;border-collapse:collapse;margin:0}.vehicles-table th{background:#1a1a2e;color:#fff;padding:12px 8px;text-align:center;border:1px solid #3498db;font-weight:700;font-size:14px}.vehicles-table td{padding:10px 8px;text-align:center;border:1px solid #3498db;background:#16213e;color:#fff;font-size:13px}.vehicles-table tbody tr:hover{background-color:#3498db1a}.vehicle-radio{width:18px;height:18px;accent-color:#3498db;cursor:pointer;-webkit-appearance:radio!important;-moz-appearance:radio!important;appearance:radio!important}.vehicle-name{font-weight:700;color:#3498db}.vehicle-cost{color:#2ecc71;font-weight:500}.vehicle-crew{color:#e74c3c;font-weight:500}.vehicle-range{color:#f39c12;font-weight:500}.view-vehicle-btn{background:#3498db;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:700;transition:background .3s ease}.view-vehicle-btn:hover{background:#2980b9}.view-vehicle-btn:disabled{background:#7f8c8d;cursor:not-allowed}.own-vehicle-btn{border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:11px;font-weight:700;transition:background .3s ease;min-width:65px}.own-vehicle-btn.not-owned{background:#28a745;color:#fff}.own-vehicle-btn.not-owned:hover{background:#218838}.own-vehicle-btn.owned{background:#dc3545;color:#fff}.own-vehicle-btn.owned:hover{background:#c82333}.own-vehicle-btn:disabled{background:#6c757d;cursor:not-allowed}@media (max-width: 768px){.vehicles-table th,.vehicles-table td{padding:8px 4px;font-size:12px}.vehicles-header h1{font-size:24px;padding:12px}}@media (max-width: 600px){.vehicles-table{font-size:11px}.vehicles-table th,.vehicles-table td{padding:6px 2px}.view-vehicle-btn{padding:6px 12px;font-size:11px}}.vehicle-record-sheet{padding:20px;background:#1a1a2e;font-family:Arial,sans-serif;max-width:1200px;margin:0 auto;color:#fff}.record-sheet-header{text-align:center;margin-bottom:30px}.record-sheet-header h1{background:#16213e;color:#fff;padding:10px;margin:0;border-radius:5px}.ownership-controls{margin-top:10px;display:flex;align-items:center;justify-content:center;gap:10px}.ownership-button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:700;transition:background-color .2s}.ownership-button.own{background-color:#28a745;color:#fff}.ownership-button.own:hover{background-color:#218838}.ownership-button.remove{background-color:#dc3545;color:#fff}.ownership-button.remove:hover{background-color:#c82333}.ownership-status{font-size:14px;color:#ffc107;font-weight:700}.vehicle-name-display{background:#16213e;color:#fff;padding:8px;margin-top:10px;border-radius:3px;font-size:18px;font-weight:700;border:1px solid #3498db}.vehicle-name-button{background:#16213e;color:#fff;padding:8px 16px;margin-top:10px;border-radius:3px;font-size:18px;font-weight:700;border:1px solid #3498db;cursor:pointer;transition:all .2s ease}.vehicle-name-button:hover{background:#3498db;border-color:#fff;transform:translateY(-1px)}.vehicle-name-button:active{transform:translateY(0)}.record-sheet-layout{display:grid;grid-template-columns:1fr;gap:30px;margin-bottom:30px}.armor-diagram-section{background:#16213e;border:2px solid #3498db;border-radius:10px;padding:80px 100px;overflow:visible;min-height:700px}.armor-circle{position:relative;width:100%;aspect-ratio:1;border:3px solid #3498db;border-radius:30%;display:flex;align-items:center;justify-content:center;margin:20px auto 40px;max-width:700px;background:#1a1a2e}.armor-segment{position:absolute;background:#16213e;border:2px solid #3498db;padding:10px 18px;border-radius:8px;text-align:center;font-size:14px;min-width:220px;min-height:140px;box-shadow:0 2px 4px #3498db4d;z-index:1;color:#fff!important;text-shadow:1px 1px 2px rgba(0,0,0,.8);overflow:visible;white-space:nowrap}.armor-segment.front{top:-80px;left:50%;transform:translate(-50%)}.armor-segment.front-left{top:12%;left:-10%}.armor-segment.front-right{top:12%;right:-10%}.armor-segment.rear{bottom:-35px;left:50%;transform:translate(-50%)}.armor-segment.rear-left{bottom:10%;left:-10%}.armor-segment.rear-right{bottom:10%;right:-10%}.armor-segment.left{top:50%;left:-20px;transform:translateY(-50%)}.armor-segment.right{top:50%;right:-20px;transform:translateY(-50%)}.armor-segment.top{top:15%;left:50%;transform:translate(-50%)}.armor-segment.bottom{bottom:17%;left:50%;transform:translate(-50%)}.armor-segment.front-top{top:15%;left:50%;transform:translate(-50%)}.armor-segment.rear-top{bottom:42%;left:50%;transform:translate(-50%)}.armor-label{font-weight:700;margin-bottom:5px;font-size:14px;color:#fff!important;background:#1a1a2e;padding:4px 8px;border-radius:3px;text-shadow:1px 1px 2px rgba(0,0,0,.8);display:block;width:100%;text-align:center}.armor-values{display:grid;grid-template-columns:50px 50px 50px 50px;gap:4px;margin-bottom:8px;font-size:12px;color:#fff!important;font-weight:700;text-shadow:1px 1px 1px rgba(0,0,0,.8);text-align:center}.armor-values span{display:block;text-align:center}.armor-inputs{display:grid;grid-template-columns:54px 54px 54px 54px;gap:2px}.armor-inputs input{width:52px;height:28px;border:1px solid #3498db;text-align:center;font-size:13px;padding:2px;background:#1a1a2e;color:#fff!important;font-weight:700;text-shadow:1px 1px 1px rgba(0,0,0,.5)}.armor-inputs input[type=number]::-webkit-outer-spin-button,.armor-inputs input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.armor-inputs input[type=number]{-moz-appearance:textfield;appearance:textfield}.armor-inputs input[readonly]{background:#2c3e50!important;color:#ecf0f1!important;border-color:#34495e!important;cursor:default}.base-stat-display{background:#2c3e50!important;color:#ecf0f1!important;border-color:#34495e!important;cursor:default!important;font-weight:700!important}.armor-inputs input:not([readonly]):not([disabled]){background:#1a1a2e!important;color:#fff!important;border-color:#3498db!important}.armor-inputs input[disabled]{background:#34495e!important;color:#7f8c8d!important;border-color:#2c3e50!important;cursor:not-allowed}.damage-inputs{display:grid;grid-template-columns:54px 54px 54px 54px;gap:2px;margin-top:2px}.damage-inputs input{width:52px;height:28px;border:1px solid #3498db;text-align:center;font-size:13px;padding:2px;background:#1a1a2e;color:#fff!important;font-weight:700;text-shadow:1px 1px 1px rgba(0,0,0,.5)}.damage-inputs input[type=number]::-webkit-outer-spin-button,.damage-inputs input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.damage-inputs input[type=number]{-moz-appearance:textfield;appearance:textfield}.damage-inputs input[disabled]{background:#34495e!important;color:#7f8c8d!important;border-color:#2c3e50!important;cursor:not-allowed}.armor-segment{width:52px;height:32px;border:2px solid #e74c3c;text-align:left;font-size:10px;padding:1px;background:#2c1810;color:#fff!important;font-weight:700;border-radius:3px}.glass-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.glass-item{background:#16213e;border:1px solid #3498db;padding:6px;border-radius:3px;text-align:center}.glass-item label{display:block;font-weight:700;font-size:10px;margin-bottom:4px;color:#fff}.glass-values{display:flex;justify-content:space-between;font-size:9px;color:#bbb}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px}.info-item{display:flex;flex-direction:column;gap:5px}.info-item label{font-weight:700;font-size:14px;color:#fff;background:#16213e;padding:8px;border:1px solid #3498db;border-radius:3px}.info-item input{padding:8px;border:1px solid #3498db;border-radius:2px;font-size:13px;background:#1a1a2e;color:#fff}.stats-section{background:#16213e;border:2px solid #3498db;border-radius:10px;padding:15px}.statistics-panel h3{background:var(--bg-secondary, #1a1a2e);color:var(--text-primary, #fff);padding:8px;margin:0 0 12px;border-radius:3px;text-align:center;font-size:14px;border:1px solid var(--accent-color, #3498db)}.stat-grid{display:grid;gap:10px;margin-bottom:20px}.stat-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center}.stat-row label{font-weight:700;font-size:13px;white-space:nowrap;color:#fff}.stat-row input{padding:6px;border:1px solid #3498db;border-radius:2px;font-size:12px;background:#1a1a2e;color:#fff}.crew-size-section h4,.modifiers-weight h4,.performance-section h4{background:#1a1a2e;color:#fff;padding:8px;margin:15px 0 10px;border-radius:2px;border:1px solid #3498db;font-size:13px;text-align:center}.crew-grid,.size-grid,.modifier-grid,.weight-grid,.speed-grid,.accel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;margin-bottom:15px}.crew-grid div,.size-grid div,.modifier-grid div,.weight-grid div,.speed-grid div,.accel-grid div{display:flex;flex-direction:column;gap:2px}.crew-grid label,.size-grid label,.modifier-grid label,.weight-grid label,.speed-grid label,.accel-grid label{font-size:11px;font-weight:700;color:#fff;margin-bottom:2px}.crew-grid input,.size-grid input,.modifier-grid input,.weight-grid input,.speed-grid input,.accel-grid input{padding:2px;border:1px solid #000;font-size:10px;text-align:center}.components-section{margin-top:20px}.components-section h3{background:#000;color:#fff;padding:8px;margin:0 0 10px;border-radius:3px;text-align:center}.components-table{width:100%;border-collapse:collapse;border:2px solid #000}.components-table th,.components-table td{border:1px solid #000;padding:4px;text-align:center;font-size:10px}.components-table th{background:#333;color:#fff;font-weight:700}.components-table td:first-child{text-align:left;font-size:9px}.bottom-sections{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-bottom:30px}.turret-section,.flux-shield-section,.armor-integrity-section{background:#16213e;border:2px solid #000;border-radius:5px;padding:15px}.turret-section h3,.flux-shield-section h3,.armor-integrity-section h3{background:#1a1a2e;color:#fff;padding:6px;margin:0 0 10px;border-radius:2px;border:1px solid #3498db;font-size:12px;text-align:center}.turret-table{width:100%;border-collapse:collapse;border:1px solid #000}.turret-table th,.turret-table td{border:1px solid #000;padding:4px;text-align:center;font-size:9px;height:20px}.turret-table th{background:#333;color:#fff}.flux-inputs{display:flex;align-items:center;gap:8px}.flux-inputs label{font-size:10px;font-weight:700}.flux-inputs input{flex:1;padding:4px;border:1px solid #000;font-size:10px}.integrity-circle{width:120px;height:120px;border:2px solid #000;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto}.integrity-center{text-align:center;font-size:8px;line-height:1.2}.components-section{background:#16213e;border:2px solid #3498db;padding:15px;border-radius:8px;margin-top:20px}.components-section h3{background:#1a1a2e;color:#fff;padding:8px;margin:-15px -15px 15px;border-radius:6px 6px 0 0;text-align:center;font-size:14px;border:1px solid #3498db}.components-table{width:100%;border-collapse:collapse;margin-bottom:10px}.components-table th,.components-table td{border:1px solid #3498db;padding:6px;text-align:center;font-size:11px;color:#fff}.components-table th{background:#1a1a2e;font-weight:700}.components-table td{background:#16213e}.weapons-section,.description-section{background:#16213e;border:2px solid #3498db;border-radius:5px;padding:15px;margin-bottom:20px}.weapons-section h3,.description-section h3{background:#1a1a2e;color:#fff;padding:8px;margin:0 0 10px;border-radius:3px;border:1px solid #3498db}.weapons-section ul{list-style-type:disc;padding-left:20px;margin:0}.weapons-section li{margin-bottom:4px;font-size:12px;color:#fff}.description-section p{margin:0;font-size:12px;line-height:1.4;color:#fff}.record-sheet-placeholder{text-align:center;padding:50px;font-size:18px;color:#666}@media (max-width: 768px){.record-sheet-layout,.bottom-sections{grid-template-columns:1fr}.armor-segment{font-size:8px;min-width:60px;padding:4px}.armor-inputs input{width:16px;height:14px;font-size:7px}}.vehicle-combat-page{padding:20px;max-width:1200px;margin:0 auto;background:#1a1a2e;min-height:100vh;color:#fff}.vehicle-combat-page h2{background:#16213e;color:#fff;padding:15px;margin:0 0 30px;border-radius:8px;font-size:28px;border:2px solid #3498db;box-shadow:0 4px 8px #3498db4d;text-align:center}.hit-location-section{background:#16213e;border:2px solid #3498db;border-radius:8px;padding:20px;margin-bottom:30px;box-shadow:0 4px 8px #3498db4d}.hit-location-section h3{color:#3498db;margin:0 0 20px;padding:10px;background:#1a1a2e;border-radius:6px;text-align:center;font-size:20px;border:1px solid #3498db}.hit-location-inputs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-bottom:20px}.hit-location-result{background:#1a1a2e;border:2px solid #3498db;border-radius:6px;padding:15px;text-align:center;font-size:18px;font-weight:700;color:#3498db}.hit-location-section{background:#1a1a2e;border:1px solid #3498db;border-radius:8px;padding:20px;margin-bottom:30px}.hit-location-section h3{color:#3498db;margin-bottom:15px;font-size:18px}.hit-location-inputs{display:flex;gap:15px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.hit-location-result{background:#16213e;border:1px solid #52a8ec;border-radius:6px;padding:15px;margin-top:15px}.hit-location-result h4{color:#52a8ec;margin-bottom:10px;font-size:16px}.location-details p{margin:5px 0;color:#fff;font-size:14px}.location-details strong{color:#3498db}.hit-location-explanation{background:#16213e;border:1px solid #52a8ec;border-radius:6px;padding:15px;margin-top:20px}.hit-location-explanation h4{color:#52a8ec;margin-bottom:10px;font-size:16px}.hit-location-explanation ul{margin:0;padding-left:20px;color:#fff}.hit-location-explanation li{margin:8px 0;font-size:14px}.hit-location-explanation strong{color:#3498db}.collision-calculator{background:#16213e;border:2px solid #3498db;border-radius:8px;padding:20px;box-shadow:0 4px 8px #3498db4d}.collision-calculator h3{margin-bottom:20px;color:#3498db;text-align:center;font-size:20px;padding:10px;background:#1a1a2e;border-radius:6px;border:1px solid #3498db}.collision-inputs{display:grid;gap:15px;margin-bottom:20px}.input-group{display:flex;flex-direction:column;gap:5px}.input-group label{font-weight:700;color:#fff}.input-group select,.input-group input{padding:8px;border:1px solid #3498db;border-radius:4px;font-size:14px;background:#1a1a2e;color:#fff}.input-group select:focus,.input-group input:focus{outline:none;border-color:#52a8ec;box-shadow:0 0 5px #52a8ec80}.calculate-button{padding:12px 24px;background-color:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:700;transition:background-color .3s}.calculate-button:hover{background-color:#2980b9}.collision-results{background:#1a1a2e;padding:20px;border-radius:8px;border:1px solid #3498db}.collision-results h4{margin-bottom:15px;color:#52a8ec}.result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;margin-bottom:20px}.result-item{padding:10px;background:#16213e;border-radius:4px;border-left:4px solid #3498db;color:#fff}.damage-notes{background:#16213e;padding:15px;border-radius:4px;border:1px solid #52a8ec}.damage-notes h5{margin-bottom:10px;color:#52a8ec}.damage-notes ul{margin:0;padding-left:20px}.damage-notes li{margin-bottom:5px;color:#fff}@media (max-width: 768px){.tables-row{flex-direction:column}.hit-location-table{min-width:100%}.result-grid{grid-template-columns:1fr}}.speed-converter-section{background:#16213e;border:2px solid #3498db;border-radius:8px;padding:20px;margin-bottom:30px;box-shadow:0 4px 8px #3498db4d}.speed-converter-section h3{color:#3498db;margin:0 0 20px;padding:10px;background:#1a1a2e;border-radius:6px;text-align:center;font-size:20px;border:1px solid #3498db}.speed-converter-inputs{display:grid;grid-template-columns:1fr auto 1fr auto;gap:20px;align-items:center;margin-bottom:20px}.converter-arrow{font-size:24px;color:#3498db;text-align:center;font-weight:700}.clear-button{background:#e74c3c;color:#fff;border:none;border-radius:6px;padding:10px 20px;cursor:pointer;font-size:14px;transition:background-color .3s}.clear-button:hover{background:#c0392b}.converter-explanation{background:#1a1a2e;border:1px solid #3498db;border-radius:6px;padding:15px;margin-top:20px}.converter-explanation h4{color:#3498db;margin:0 0 10px;font-size:16px}.converter-explanation p{margin:5px 0;font-size:14px}.converter-explanation em{color:#95a5a6}@media (max-width: 768px){.speed-converter-inputs{grid-template-columns:1fr;gap:15px}.converter-arrow{transform:rotate(90deg);margin:10px 0}.clear-button{justify-self:center;width:100px}}
