:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}body{min-width:320px;height:100vh;margin:0;display:flex;overflow:hidden}#app{width:100%;display:flex}.sidebar{width:260px;box-shadow:none;z-index:50;background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;gap:.25rem;padding:2rem 1rem;transition:width .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;display:flex;position:relative}.sidebar:not(.collapsed){box-shadow:10px 0 15px -3px #0000000d}.sidebar.collapsed{width:80px;padding:2rem .5rem}.sidebar h1{color:#111827;text-align:left;align-items:center;gap:10px;margin-bottom:2rem;font-size:1.25rem;font-weight:700;display:flex}.nav-item{cursor:pointer;color:#4b5563;border-radius:.5rem;align-items:center;gap:10px;padding:.75rem 1rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover{color:#111827;background:#f3f4f6}.nav-item.active{color:#9f1239;background:#fff1f2}.main-content{box-sizing:border-box;background:#fff;flex:1;height:100vh;padding:1.5rem 2rem;overflow-y:auto}.card{background:#fff;border:none;border-radius:0;margin-bottom:1.5rem;padding:1.5rem 0}h2{color:#1e293b;margin-top:0;font-size:1.5rem}table{border-collapse:collapse;width:100%}th{text-align:left;color:#6b7280;border-bottom:1px solid #e5e7eb;padding:1rem .5rem;font-size:.875rem;font-weight:500}td{color:#111827;border-bottom:1px solid #f3f4f6;padding:1rem .5rem;font-size:.875rem;font-weight:600}tr:hover td{background:#f9fafb}.btn{cursor:pointer;border:none;border-radius:.375rem;padding:.5rem 1rem;font-weight:600;transition:all .2s}.btn-primary{color:#fff;background:#9f1239}.btn-danger{color:#fff;background:#ef4444}.btn:hover{opacity:.9}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.sub-nav-group{border-left:2px solid #e5e7eb;flex-direction:column;gap:.15rem;margin-top:.1rem;margin-left:1.6rem;padding-left:.75rem;transition:max-height .3s;display:flex}.sub-nav-item{cursor:pointer;color:#4b5563;border-radius:.375rem;align-items:center;gap:8px;padding:.5rem .75rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.sub-nav-item:hover{color:#111827;background:#f3f4f6}.sub-nav-item.active{color:#9f1239;background:#fff1f2;font-weight:600}.dashboard-wrapper[data-v-0f9dce72]{max-width:100%;overflow:hidden}.status-pill[data-v-0f9dce72]{color:#059669;background:#ecfdf5;border:1px solid #d1fae5;border-radius:2rem;align-items:center;gap:8px;padding:.4rem 1rem;font-size:.75rem;font-weight:700;display:flex}.pulse-dot[data-v-0f9dce72]{background:#10b981;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-0f9dce72}@keyframes pulse-0f9dce72{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 10px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.stats-grid[data-v-0f9dce72]{grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}@media (width<=1200px){.stats-grid[data-v-0f9dce72]{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.stats-grid[data-v-0f9dce72]{grid-template-columns:repeat(2,1fr)}}.stat-card[data-v-0f9dce72]{background:#fff;border:1px solid #f3f4f6;border-radius:1rem;align-items:center;gap:1rem;padding:1rem;display:flex;box-shadow:0 2px 4px #00000005}.stat-icon[data-v-0f9dce72]{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.stat-icon.red[data-v-0f9dce72]{color:#e11d48;background:#ffe4e6}.stat-icon.green[data-v-0f9dce72]{color:#059669;background:#d1fae5}.stat-icon.amber[data-v-0f9dce72]{color:#d97706;background:#fef3c7}.stat-icon.blue[data-v-0f9dce72]{color:#0284c7;background:#e0f2fe}.stat-icon.violet[data-v-0f9dce72]{color:#7c3aed;background:#f5f3ff}.stat-label[data-v-0f9dce72]{color:#6b7280;text-transform:uppercase;font-size:.7rem;font-weight:600}.stat-value[data-v-0f9dce72]{color:#111827;font-size:1.25rem;font-weight:800}.stat-value small[data-v-0f9dce72]{color:#9ca3af;font-size:.8rem;font-weight:500}.charts-row-two[data-v-0f9dce72]{grid-template-columns:1.8fr 1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}.charts-row-three[data-v-0f9dce72]{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}@media (width<=1024px){.charts-row-two[data-v-0f9dce72],.charts-row-three[data-v-0f9dce72]{grid-template-columns:1fr}}.chart-box[data-v-0f9dce72]{background:#fff;border:1px solid #f3f4f6;border-radius:1rem;flex-direction:column;padding:1.25rem;display:flex;box-shadow:0 4px 6px -1px #0000000d}.chart-header[data-v-0f9dce72]{color:#111827;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.9rem;font-weight:700;display:flex}.chart-container[data-v-0f9dce72]{height:25vh;position:relative}.donut-box[data-v-0f9dce72]{display:block}.donut-wrapper[data-v-0f9dce72]{justify-content:center;align-items:center;width:100%;height:25vh;padding-top:1rem;display:flex;position:relative}.empty-state[data-v-0f9dce72]{color:#9ca3af;text-align:center;justify-content:center;align-items:center;height:100%;font-size:.8rem;display:flex}.loading-overlay[data-v-0f9dce72]{color:#6b7280;flex-direction:column;justify-content:center;align-items:center;height:60vh;display:flex}.spinner[data-v-0f9dce72]{border:3px solid #f3f4f6;border-top-color:#e11d48;border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite spin-0f9dce72}@keyframes spin-0f9dce72{to{transform:rotate(360deg)}}.export-btn[data-v-0f9dce72]{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.export-btn[data-v-0f9dce72]:hover{color:#1e293b;background:#f1f5f9;border-color:#cbd5e1}.export-btn svg[data-v-0f9dce72]{color:#16a34a}.camera-scanner-wrapper[data-v-46310584]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172ab3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.scanner-card[data-v-46310584]{background:#fff;border-radius:16px;width:100%;max-width:500px;animation:.3s cubic-bezier(.16,1,.3,1) popIn-46310584;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.scanner-header[data-v-46310584]{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.scanner-header h3[data-v-46310584]{color:#0f172a;margin:0;font-size:1.1rem}.close-btn[data-v-46310584]{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:1.5rem}.scanner-body[data-v-46310584]{flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;display:flex}.video-container[data-v-46310584]{aspect-ratio:4/3;background:#000;border-radius:12px;width:100%;position:relative;overflow:hidden}video[data-v-46310584]{object-fit:cover;width:100%;height:100%}.scan-guideline[data-v-46310584]{pointer-events:none;border:2px solid #fff6;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:15% 10%;overflow:hidden;box-shadow:0 0 0 9999px #00000080}.scan-hint[data-v-46310584]{color:#fff;text-align:center;text-shadow:0 2px 4px #000c;z-index:10;flex-direction:column;align-items:center;font-size:.9rem;font-weight:600;display:flex}.scanning-laser[data-v-46310584]{background:#10b981;width:100%;height:2px;animation:3s linear infinite scanLaser-46310584;position:absolute;top:0;left:0;box-shadow:0 0 10px #10b981,0 0 20px #10b981}@keyframes scanLaser-46310584{0%{opacity:0;top:0}10%{opacity:1}90%{opacity:1}to{opacity:0;top:100%}}.corner[data-v-46310584]{z-index:5;border-style:solid;border-color:#10b981;width:30px;height:30px;position:absolute}.top-left[data-v-46310584]{border-width:4px 0 0 4px;border-top-left-radius:12px;top:-2px;left:-2px}.top-right[data-v-46310584]{border-width:4px 4px 0 0;border-top-right-radius:12px;top:-2px;right:-2px}.bottom-left[data-v-46310584]{border-width:0 0 4px 4px;border-bottom-left-radius:12px;bottom:-2px;left:-2px}.bottom-right[data-v-46310584]{border-width:0 4px 4px 0;border-bottom-right-radius:12px;bottom:-2px;right:-2px}.status-message[data-v-46310584]{color:#475569;text-align:center;margin:0;font-size:.9rem;font-weight:500}@keyframes popIn-46310584{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.centered-table th[data-v-b6c09ea4],.centered-table td[data-v-b6c09ea4]{text-align:center}.icon-btn[data-v-b6c09ea4]{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:inline-flex}.edit-btn[data-v-b6c09ea4]{color:#6366f1;margin-right:8px}.edit-btn[data-v-b6c09ea4]:hover{background:#e0e7ff}.suspend-btn[data-v-b6c09ea4]{color:#f59e0b;margin-right:8px}.suspend-btn[data-v-b6c09ea4]:hover{background:#fef3c7}.activate-btn[data-v-b6c09ea4]{color:#10b981;margin-right:8px}.activate-btn[data-v-b6c09ea4]:hover{background:#d1fae5}.delete-btn[data-v-b6c09ea4]{color:#ef4444}.delete-btn[data-v-b6c09ea4]:hover{background:#fee2e2}.modal-backdrop[data-v-b6c09ea4]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;width:100%;height:100%;animation:.2s ease-out fadeIn-b6c09ea4;display:flex;position:fixed;top:0;left:0}.modal-card[data-v-b6c09ea4]{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:650px;max-height:95vh;animation:.3s cubic-bezier(.16,1,.3,1) slideUp-b6c09ea4;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-header[data-v-b6c09ea4]{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-title-wrapper[data-v-b6c09ea4]{align-items:center;gap:12px;display:flex}.modal-icon[data-v-b6c09ea4]{color:#4f46e5;background:#e0e7ff;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.modal-header h3[data-v-b6c09ea4]{color:#0f172a;margin:0;font-size:1.25rem;font-weight:800}.close-btn[data-v-b6c09ea4]{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.close-btn[data-v-b6c09ea4]:hover{color:#0f172a;background:#e2e8f0}.modal-body[data-v-b6c09ea4]{flex-direction:column;gap:1.25rem;padding:2rem;display:flex;overflow-y:auto}.form-grid-2[data-v-b6c09ea4]{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.input-group[data-v-b6c09ea4]{flex-direction:column;gap:6px;display:flex}.input-group label[data-v-b6c09ea4]{color:#64748b;text-transform:uppercase;letter-spacing:.05em;text-align:left;font-size:.75rem;font-weight:700}.f.import-status span[data-v-b6c09ea4]{color:#111827;font-weight:700}.toast-container[data-v-b6c09ea4]{opacity:0;z-index:10000;background:#fff;border-left:5px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:1rem 1.5rem;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(150%);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.toast-show[data-v-b6c09ea4]{opacity:1;transform:translateY(0)}.toast-success[data-v-b6c09ea4]{border-left-color:#10b981}.toast-success .toast-icon[data-v-b6c09ea4]{color:#10b981;background:#d1fae5;border-radius:50%;padding:6px;display:flex}.toast-error[data-v-b6c09ea4]{border-left-color:#ef4444}.toast-error .toast-icon[data-v-b6c09ea4]{color:#ef4444;background:#fee2e2;border-radius:50%;padding:6px;display:flex}.toast-message[data-v-b6c09ea4]{color:#1f2937;font-size:.95rem;font-weight:600}.premium-input[data-v-b6c09ea4]{color:#1e293b;box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;width:100%;padding:12px 16px;font-family:inherit;font-size:.95rem;transition:all .2s}.premium-input[data-v-b6c09ea4]:focus{background:#fff;border-color:#6366f1;outline:none;box-shadow:0 0 0 4px #6366f11a}.premium-input[data-v-b6c09ea4]::placeholder{color:#94a3b8}.modal-footer[data-v-b6c09ea4]{background:#f8fafc;border-top:1px solid #f1f5f9;justify-content:flex-end;gap:12px;padding:1.25rem 2rem;display:flex}.btn-secondary[data-v-b6c09ea4]{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 20px;font-weight:600}.btn-secondary[data-v-b6c09ea4]:hover{background:#f1f5f9}.premium-btn[data-v-b6c09ea4]{color:#fff;cursor:pointer;background:#4f46e5;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 24px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 6px -1px #4f46e54d}.premium-btn[data-v-b6c09ea4]:hover{background:#4338ca;transform:translateY(-1px);box-shadow:0 6px 8px -1px #4f46e566}@keyframes fadeIn-b6c09ea4{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@keyframes slideUp-b6c09ea4{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes spin-b6c09ea4{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.premium-input.invalid[data-v-b6c09ea4]{background:#fef2f2!important;border-color:#ef4444!important}.premium-input.invalid[data-v-b6c09ea4]:focus{box-shadow:0 0 0 4px #ef44441a!important}.error-label[data-v-b6c09ea4]{color:#ef4444!important}.validation-banner[data-v-b6c09ea4]{color:#991b1b;text-align:left;background:#fef2f2;border:1px solid #fee2e2;border-radius:10px;align-items:center;gap:12px;margin-bottom:1rem;padding:12px 16px;font-size:.875rem;font-weight:600;animation:.4s ease-in-out shake-b6c09ea4;display:flex}@keyframes shake-b6c09ea4{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.spin[data-v-b6c09ea4]{animation:1.2s linear infinite spin-b6c09ea4}.login-container[data-v-e41113ff]{background:#0f172a;justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.animated-bg[data-v-e41113ff]{z-index:1;background-image:url(/assets/FondoAdmin-DeS59j7V.jpg);background-position:50%;background-size:cover;width:130%;height:100%;animation:40s linear infinite alternate slideBg-e41113ff;position:absolute;top:0;left:0}@keyframes slideBg-e41113ff{0%{transform:translate(0)}to{transform:translate(-15%)}}.bg-overlay[data-v-e41113ff]{z-index:2;background:linear-gradient(289deg,#00000073 0% 100%);width:100%;height:100%;position:absolute;top:0;left:0}.login-box[data-v-e41113ff]{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff8c;border:1px solid #fff9;border-radius:1.5rem;width:100%;max-width:380px;padding:2.5rem;position:relative;box-shadow:0 25px 50px -12px #00000080,inset 0 0 20px #ffffff80}.form-input[data-v-e41113ff]{box-sizing:border-box;color:#1e293b;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:.75rem;width:100%;padding:.875rem 1.25rem;font-family:inherit;transition:all .3s}.form-input[data-v-e41113ff]:focus{background:#fff;border-color:#9f1239;outline:none;box-shadow:0 0 0 4px #9f12391a}.btn-login[data-v-e41113ff]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#be123c 0%,#881337 100%);border:none;border-radius:.75rem;width:100%;padding:1rem;font-size:1.05rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 15px -3px #9f12394d,0 4px 6px -4px #9f12394d}.btn-login[data-v-e41113ff]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 20px 25px -5px #9f123966,0 8px 10px -6px #9f123966}.btn-login[data-v-e41113ff]:active:not(:disabled){transform:translateY(0)}.btn-login[data-v-e41113ff]:disabled{opacity:.7;cursor:not-allowed}.pc-map-container[data-v-db3097d9]{background:#fdfdfd;border:1px dashed #e2e8f0;border-radius:16px;padding:3rem;overflow-x:auto}.pc-grid[data-v-db3097d9]{grid-template-rows:repeat(9,100px);grid-template-columns:repeat(12,75px);justify-content:center;gap:45px;display:grid}.pc-card-wrapper[data-v-db3097d9]{justify-content:center;align-items:center;display:flex}.pc-card[data-v-db3097d9]{cursor:pointer;flex-direction:column;align-items:center;transition:all .2s;display:flex}.pc-card[data-v-db3097d9]:hover{transform:translateY(-5px)}.monitor[data-v-db3097d9]{background:#cbd5e1;border-radius:6px;width:70px;height:50px;margin-bottom:5px;padding:4px;transition:all .3s;box-shadow:0 4px 6px -1px #0000001a}.screen[data-v-db3097d9]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:3px;justify-content:center;align-items:center;width:100%;height:100%;font-size:24px;transition:all .3s;display:flex}.stand[data-v-db3097d9]{background:#cbd5e1;border-radius:0 0 4px 4px;width:24px;height:12px;margin:-2px auto 0;transition:all .3s}.occupied .monitor[data-v-db3097d9]{background:#5eead4;box-shadow:0 0 15px #14b8a64d}.occupied .stand[data-v-db3097d9]{background:#14b8a6}.occupied .screen[data-v-db3097d9]{color:#0d9488;background:#f0fdfa;border-color:#5eead4}.power-icon[data-v-db3097d9]{color:#94a3b8;font-size:18px}.user-icon[data-v-db3097d9]{text-shadow:0 2px 4px #0000001a}.pc-name[data-v-db3097d9]{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;margin-top:5px;padding:2px 6px;font-size:.7rem;font-weight:700}.empty-slot[data-v-db3097d9]{opacity:.4;cursor:default}.monitor.gray[data-v-db3097d9],.stand.gray[data-v-db3097d9]{background:#e2e8f0}.screen.gray[data-v-db3097d9]{background:#f8fafc}.pc-name.gray[data-v-db3097d9]{color:#94a3b8;border-color:#f1f5f9}.detail-overlay[data-v-db3097d9]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#c0c0c0b3;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.detail-card[data-v-db3097d9]{text-align:left;background:#fff;border:1px solid #fff;border-radius:20px;width:400px;padding:25px;animation:.3s cubic-bezier(.34,1.56,.64,1) modalEnter-db3097d9;box-shadow:0 25px 50px -12px #00000026}@keyframes modalEnter-db3097d9{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}input[type=time][data-v-db3097d9]::-webkit-calendar-picker-indicator{cursor:pointer}.centered-table[data-v-103383dd]{border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.centered-table th[data-v-103383dd]{color:#475569;text-transform:uppercase;letter-spacing:.05em;text-align:center;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:1rem;font-size:.75rem;font-weight:700}.centered-table td[data-v-103383dd]{text-align:center;color:#1e293b;border-bottom:1px solid #f1f5f9;padding:1rem;font-size:.9rem}.centered-table tbody tr[data-v-103383dd]:hover{background:#f8fafc}.icon-btn[data-v-103383dd]{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:inline-flex}.edit-btn[data-v-103383dd]{color:#6366f1;margin-right:8px}.edit-btn[data-v-103383dd]:hover{background:#e0e7ff}.delete-btn[data-v-103383dd]{color:#ef4444}.delete-btn[data-v-103383dd]:hover{background:#fee2e2}.suspend-btn[data-v-103383dd]{color:#f59e0b;margin-right:8px}.suspend-btn[data-v-103383dd]:hover{background:#fef3c7}.activate-btn[data-v-103383dd]{color:#10b981;margin-right:8px}.activate-btn[data-v-103383dd]:hover{background:#d1fae5}.modal-backdrop[data-v-103383dd]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-card[data-v-103383dd]{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:500px;display:flex;box-shadow:0 25px 50px -12px #00000040}.modal-header[data-v-103383dd]{background:#f8fafc;border-bottom:1px solid #f1f5f9;border-radius:16px 16px 0 0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title-wrapper[data-v-103383dd]{align-items:center;gap:12px;display:flex}.modal-icon[data-v-103383dd]{color:#4f46e5;background:#e0e7ff;border-radius:8px;justify-content:center;align-items:center;padding:8px;display:flex}.modal-header h3[data-v-103383dd]{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.close-btn[data-v-103383dd]{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px;transition:all .2s}.close-btn[data-v-103383dd]:hover{color:#0f172a;background:#f1f5f9}.modal-body[data-v-103383dd]{padding:1.5rem}.input-group[data-v-103383dd]{flex-direction:column;gap:8px;display:flex}.input-group label[data-v-103383dd]{color:#475569;font-size:.875rem;font-weight:600}.input-field[data-v-103383dd]{color:#1e293b;border:1px solid #cbd5e1;border-radius:8px;padding:.75rem 1rem;font-size:.95rem;transition:all .2s}.input-field[data-v-103383dd]:focus{border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f11a}.modal-footer[data-v-103383dd]{background:#f8fafc;border-top:1px solid #f1f5f9;border-radius:0 0 16px 16px;justify-content:flex-end;gap:12px;padding:1.5rem;display:flex}.btn[data-v-103383dd]{cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .2s}.btn-secondary[data-v-103383dd]{color:#475569;background:#fff;border:1px solid #cbd5e1}.btn-secondary[data-v-103383dd]:hover{background:#f1f5f9}.btn-primary[data-v-103383dd]{color:#fff;background:#6366f1;align-items:center;gap:8px;display:flex}.btn-primary[data-v-103383dd]:hover{background:#4f46e5}.centered-table[data-v-628044db]{border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.centered-table th[data-v-628044db]{color:#475569;text-transform:uppercase;letter-spacing:.05em;text-align:center;background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:1rem;font-size:.75rem;font-weight:700}.centered-table td[data-v-628044db]{text-align:center;color:#1e293b;border-bottom:1px solid #f1f5f9;padding:1rem;font-size:.9rem}.centered-table tbody tr[data-v-628044db]:hover{background:#f8fafc}.has-multiple[data-v-628044db]{background:#6366f105;transition:background .2s,border-left .2s}.has-multiple[data-v-628044db]:hover{background:#6366f10d!important}.has-multiple td[data-v-628044db]:first-child{position:relative}.has-multiple td[data-v-628044db]:first-child:before{content:"";background:#6366f1;border-radius:0 4px 4px 0;width:4px;position:absolute;top:6px;bottom:6px;left:0}.chevron-icon[data-v-628044db]{transition:transform .2s}.is-expanded .chevron-icon[data-v-628044db]{transform:rotate(90deg)}.multi-connection-badge[data-v-628044db]{color:#4f46e5;background:#e0e7ff;border:1px solid #c7d2fe;border-radius:9999px;align-items:center;padding:2px 8px;font-size:.65rem;font-weight:700;display:inline-flex}.nested-container[data-v-628044db]{border-left:2px dashed #cbd5e1;margin-left:.5rem;padding:.5rem 1rem}.nested-table[data-v-628044db]{border-collapse:collapse;background:0 0;width:100%}.nested-table th[data-v-628044db]{color:#64748b;text-transform:uppercase;text-align:center;letter-spacing:.05em;background:0 0;border-bottom:1px solid #e2e8f0;padding:.5rem 1rem;font-size:.7rem;font-weight:700}.nested-table td[data-v-628044db]{text-align:center;color:#475569;background:0 0;border-bottom:1px solid #f1f5f9;padding:.6rem 1rem;font-size:.85rem}.nested-table tbody tr[data-v-628044db]:hover{background:#6366f108!important}.expanded-row td[data-v-628044db]{border-bottom:1px solid #e2e8f0!important}.form-section[data-v-580b5a3f]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.form-section-title[data-v-580b5a3f]{color:#475569;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin:0 0 .5rem;padding-bottom:.5rem;font-size:.85rem;font-weight:700;display:flex}.field-error-message[data-v-580b5a3f]{color:#ef4444;text-align:left;margin-top:2px;font-size:.72rem;font-weight:600;line-height:1.2}.centered-table th[data-v-580b5a3f],.centered-table td[data-v-580b5a3f]{text-align:center}.icon-btn[data-v-580b5a3f]{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:inline-flex}.edit-btn[data-v-580b5a3f]{color:#6366f1;margin-right:8px}.edit-btn[data-v-580b5a3f]:hover{background:#e0e7ff}.delete-btn[data-v-580b5a3f]{color:#ef4444}.delete-btn[data-v-580b5a3f]:hover{background:#fee2e2}.modal-backdrop[data-v-580b5a3f]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;width:100%;height:100%;animation:.2s ease-out fadeIn-580b5a3f;display:flex;position:fixed;top:0;left:0}.modal-card[data-v-580b5a3f]{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:1250px;max-height:95vh;animation:.3s cubic-bezier(.16,1,.3,1) slideUp-580b5a3f;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-header[data-v-580b5a3f]{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-title-wrapper[data-v-580b5a3f]{align-items:center;gap:12px;display:flex}.modal-icon[data-v-580b5a3f]{color:#4f46e5;background:#e0e7ff;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.modal-header h3[data-v-580b5a3f]{color:#0f172a;margin:0;font-size:1.25rem;font-weight:800}.close-btn[data-v-580b5a3f]{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.close-btn[data-v-580b5a3f]:hover{color:#0f172a;background:#e2e8f0}.modal-body[data-v-580b5a3f]{flex-direction:column;gap:1.25rem;padding:2rem;display:flex;overflow-y:auto}.form-grid-2[data-v-580b5a3f]{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.form-grid-3[data-v-580b5a3f]{grid-template-columns:1fr 1fr 1fr;gap:1.25rem;display:grid}.input-group[data-v-580b5a3f]{flex-direction:column;gap:6px;display:flex}.input-group label[data-v-580b5a3f]{color:#64748b;text-transform:uppercase;letter-spacing:.05em;text-align:left;font-size:.75rem;font-weight:700}.toast-container[data-v-580b5a3f]{opacity:0;z-index:10000;background:#fff;border-left:5px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:1rem 1.5rem;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(150%);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.toast-show[data-v-580b5a3f]{opacity:1;transform:translateY(0)}.toast-success[data-v-580b5a3f]{border-left-color:#10b981}.toast-success .toast-icon[data-v-580b5a3f]{color:#10b981;background:#d1fae5;border-radius:50%;padding:6px;display:flex}.toast-error[data-v-580b5a3f]{border-left-color:#ef4444}.toast-error .toast-icon[data-v-580b5a3f]{color:#ef4444;background:#fee2e2;border-radius:50%;padding:6px;display:flex}.toast-message[data-v-580b5a3f]{color:#1f2937;font-size:.95rem;font-weight:600}.premium-input[data-v-580b5a3f]{color:#1e293b;box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;width:100%;padding:12px 16px;font-family:inherit;font-size:.95rem;transition:all .2s}.premium-input[data-v-580b5a3f]:focus{background:#fff;border-color:#9f1239;outline:none;box-shadow:0 0 0 4px #9f12391a}.premium-input[data-v-580b5a3f]::placeholder{color:#94a3b8}.modal-footer[data-v-580b5a3f]{background:#f8fafc;border-top:1px solid #f1f5f9;justify-content:flex-end;gap:12px;padding:1.25rem 2rem;display:flex}.btn-secondary[data-v-580b5a3f]{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 20px;font-weight:600}.btn-secondary[data-v-580b5a3f]:hover{background:#f1f5f9}.premium-btn[data-v-580b5a3f]{color:#fff;cursor:pointer;background:#9f1239;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 24px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 6px -1px #9f12394d}.premium-btn[data-v-580b5a3f]:hover{background:#881337;transform:translateY(-1px);box-shadow:0 6px 8px -1px #9f123966}@keyframes fadeIn-580b5a3f{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@keyframes slideUp-580b5a3f{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.premium-input.invalid[data-v-580b5a3f]{background:#fef2f2!important;border-color:#ef4444!important}.premium-input.invalid[data-v-580b5a3f]:focus{box-shadow:0 0 0 4px #ef44441a!important}.error-label[data-v-580b5a3f]{color:#ef4444!important}.validation-banner[data-v-580b5a3f]{color:#991b1b;text-align:left;background:#fef2f2;border:1px solid #fee2e2;border-radius:10px;align-items:center;gap:12px;margin-bottom:1rem;padding:12px 16px;font-size:.875rem;font-weight:600;animation:.4s ease-in-out shake-580b5a3f;display:flex}@keyframes shake-580b5a3f{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.book-cover-thumbnail[data-v-580b5a3f]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;justify-content:center;align-items:center;width:32px;height:44px;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000001a}.book-cover-thumbnail img[data-v-580b5a3f]{object-fit:cover;width:100%;height:100%}.book-cover-placeholder[data-v-580b5a3f]{color:#94a3b8;justify-content:center;align-items:center;display:flex}.modal-body-layout-wide[data-v-580b5a3f]{grid-template-columns:1fr 1fr 260px;align-items:start;gap:1.5rem;display:grid}.modal-form-column[data-v-580b5a3f]{flex-direction:column;gap:1rem;display:flex}.modal-cover-column[data-v-580b5a3f]{flex-direction:column;height:auto;display:flex}.cover-upload-container[data-v-580b5a3f]{box-sizing:border-box;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;height:auto;padding:1.5rem;display:flex}.book-cover-preview-lg[data-v-580b5a3f]{background:#fff;border:1px solid #cbd5e1;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:140px;height:187px;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.book-cover-preview-lg img[data-v-580b5a3f]{object-fit:cover;width:100%;height:100%}.book-cover-placeholder-xl[data-v-580b5a3f]{flex-direction:column;justify-content:center;align-items:center;display:flex}@media (width<=768px){.modal-body-layout[data-v-580b5a3f]{grid-template-columns:1fr;gap:1.5rem}}.image-viewer-backdrop[data-v-580b5a3f]{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;cursor:zoom-out;background:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.viewer-img[data-v-580b5a3f]{object-fit:contain;border-radius:8px;max-width:90vw;max-height:90vh;animation:.3s ease-out zoomIn-580b5a3f;box-shadow:0 25px 50px -12px #00000080}.close-viewer-btn[data-v-580b5a3f]{color:#fff;cursor:pointer;z-index:10001;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;position:absolute;top:20px;right:20px}.close-viewer-btn[data-v-580b5a3f]:hover{background:#ffffff40;transform:scale(1.1)}@keyframes zoomIn-580b5a3f{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.map-selector-backdrop[data-v-580b5a3f]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1100;background:#0f172a66;justify-content:center;align-items:center;width:100%;height:100%;animation:.2s ease-out fadeIn-580b5a3f;display:flex;position:fixed;top:0;left:0}.map-selector-card[data-v-580b5a3f]{background:#fff;border-radius:20px;flex-direction:column;width:90%;max-width:980px;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.map-selector-header[data-v-580b5a3f]{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;display:flex}.map-selector-body[data-v-580b5a3f]{grid-template-columns:280px 1fr;gap:1.5rem;height:480px;padding:1.5rem;display:grid}.map-selector-left[data-v-580b5a3f]{border-right:1px solid #f1f5f9;flex-direction:column;gap:1rem;padding-right:1.5rem;display:flex;overflow-y:auto}.selected-shelf-info h4[data-v-580b5a3f]{color:#0f172a;margin:0 0 4px;font-size:1.1rem;font-weight:800}.selected-shelf-info p[data-v-580b5a3f]{color:#64748b;margin:0;font-size:.8rem;line-height:1.3}.shelf-vertical-preview[data-v-580b5a3f]{background:#fafafa;border:1px solid #f1f5f9;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.floor-row[data-v-580b5a3f]{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;transition:all .2s;display:flex}.floor-row[data-v-580b5a3f]:hover{background:#fff1f2;border-color:#9f1239}.floor-row.selected-floor[data-v-580b5a3f]{background:#9f1239;border-color:#9f1239}.floor-shelf-line[data-v-580b5a3f]{border-bottom:2px solid #cbd5e1;flex:1;align-items:flex-end;height:24px;margin-right:12px;padding-bottom:1px;display:flex}.floor-books[data-v-580b5a3f]{align-items:flex-end;gap:1px;height:100%;display:flex}.floor-row.selected-floor .floor-shelf-line[data-v-580b5a3f]{border-bottom-color:#fff6}.book-spine[data-v-580b5a3f]{opacity:.85;border-radius:1px 1px 0 0;width:5px}.floor-number[data-v-580b5a3f]{color:#475569;font-size:.8rem;font-weight:700}.floor-number.selected-floor-text[data-v-580b5a3f]{color:#fff}.select-shelf-placeholder[data-v-580b5a3f]{color:#94a3b8;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;padding:2rem;font-size:.85rem;display:flex}.map-selector-right[data-v-580b5a3f]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.map-scene-wrapper[data-v-580b5a3f]{justify-content:center;align-items:center;width:100%;height:100%;display:flex;transform:scale(.9)}.isometric-scene-mini[data-v-580b5a3f]{perspective:2000px;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.wood-floor-mini[data-v-580b5a3f]{width:638px;height:450px;transform-style:preserve-3d;background-color:#d1bfae;background-image:repeating-linear-gradient(45deg,#c3b09e 25%,#0000 25% 75%,#c3b09e 75%,#c3b09e),repeating-linear-gradient(45deg,#c3b09e 25%,#d1bfae 25% 75%,#c3b09e 75%,#c3b09e);background-position:0 0,11px 11px;background-size:22px 22px;border:1px solid #111;position:relative;transform:rotateX(60deg)rotate(-35deg);box-shadow:-1px 1px #111,-2px 2px #111,-3px 3px 10px #0000004d}.iso-shelf-mini[data-v-580b5a3f]{transform-style:preserve-3d;cursor:pointer;transition:transform .2s;position:absolute}.iso-shelf-mini[data-v-580b5a3f]:hover{transform:translateZ(5px)}.iso-shelf-mini.is-selected-shelf[data-v-580b5a3f]{transform:translateZ(12px)}.iso-face-mini[data-v-580b5a3f]{backface-visibility:hidden;background:#8b5a2b;border:1px solid #5c3a21;position:absolute}.iso-face-mini.top-mini[data-v-580b5a3f]{color:#3e2723;background:#a06e3d;justify-content:center;align-items:center;width:100%;height:100%;font-size:.65rem;font-weight:900;display:flex;transform:translateZ(60px)}.iso-shelf-mini.is-selected-shelf .iso-face-mini.top-mini[data-v-580b5a3f]{color:#fff;background:#9f1239;border-color:#9f1239}.iso-face-mini.front-mini[data-v-580b5a3f]{transform-origin:bottom;background:#794d24;width:100%;height:60px;bottom:0;left:0;transform:rotateX(-90deg)}.iso-shelf-mini.is-selected-shelf .iso-face-mini.front-mini[data-v-580b5a3f]{background:#881337}.iso-face-mini.left-mini[data-v-580b5a3f]{transform-origin:0;background:#2e1b10;width:60px;height:100%;top:0;left:0;transform:rotateY(-90deg)}.iso-face-mini.right-mini[data-v-580b5a3f]{transform-origin:100%;background:#2e1b10;width:60px;height:100%;top:0;right:0;transform:rotateY(90deg)}.map-selector-footer[data-v-580b5a3f]{background:#f8fafc;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1rem 1.75rem;display:flex}.current-selection-summary[data-v-580b5a3f]{color:#475569;font-size:.85rem}.current-selection-summary strong[data-v-580b5a3f]{color:#9f1239;font-size:.95rem}.centered-table th[data-v-38d2e989],.centered-table td[data-v-38d2e989]{text-align:center}.icon-btn[data-v-38d2e989]{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:inline-flex}.edit-btn[data-v-38d2e989]{color:#6366f1;margin-right:8px}.edit-btn[data-v-38d2e989]:hover{background:#e0e7ff}.delete-btn[data-v-38d2e989]{color:#ef4444}.delete-btn[data-v-38d2e989]:hover{background:#fee2e2}.modal-backdrop[data-v-38d2e989]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0f172a66;justify-content:center;align-items:center;width:100%;height:100%;animation:.2s ease-out fadeIn-38d2e989;display:flex;position:fixed;top:0;left:0}.modal-card[data-v-38d2e989]{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:500px;max-height:95vh;animation:.3s cubic-bezier(.16,1,.3,1) slideUp-38d2e989;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-header[data-v-38d2e989]{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-title-wrapper[data-v-38d2e989]{align-items:center;gap:12px;display:flex}.modal-title-wrapper h3[data-v-38d2e989]{color:#0f172a;margin:0;font-size:1.25rem;font-weight:800}.modal-icon[data-v-38d2e989]{color:#4f46e5;background:#e0e7ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.close-btn[data-v-38d2e989]{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.close-btn[data-v-38d2e989]:hover{color:#475569;background:#e2e8f0}.modal-body[data-v-38d2e989]{padding:1.5rem 2rem;overflow-y:auto}.validation-banner[data-v-38d2e989]{color:#991b1b;background:#fef2f2;border:1px solid #fee2e2;border-radius:12px;align-items:center;gap:10px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600;display:flex}.input-group[data-v-38d2e989]{flex-direction:column;margin-bottom:1.25rem;display:flex}.input-group label[data-v-38d2e989]{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:.78rem;font-weight:700;transition:color .2s}.error-label[data-v-38d2e989]{color:#ef4444!important}.premium-input[data-v-38d2e989]{color:#1e293b;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;padding:.75rem 1rem;font-size:.95rem;transition:all .2s ease-in-out}.premium-input[data-v-38d2e989]:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a}.premium-input.invalid[data-v-38d2e989]{background:#fff8f8;border-color:#fca5a5}.premium-input.invalid[data-v-38d2e989]:focus{box-shadow:0 0 0 4px #ef44441a}.field-error-message[data-v-38d2e989]{color:#ef4444;margin-top:4px;font-size:.75rem;font-weight:600}.modal-footer[data-v-38d2e989]{background:#f8fafc;border-top:1px solid #f1f5f9;justify-content:flex-end;gap:12px;padding:1.25rem 2rem;display:flex}@keyframes fadeIn-38d2e989{0%{opacity:0}to{opacity:1}}@keyframes slideUp-38d2e989{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.selected-book-map-card[data-v-0087a92b]{z-index:30;-webkit-backdrop-filter:blur(12px);text-align:center;background:#ffffffd9;border:1px solid #fecdd3cc;border-radius:16px;flex-direction:column;align-items:center;width:220px;padding:1.25rem 1rem;display:flex;position:absolute;bottom:1.5rem;right:1.5rem;box-shadow:0 10px 25px -5px #9f123926,0 8px 16px -4px #0000000d}.book-cover-medium[data-v-0087a92b]{background:#fff;border-radius:6px;justify-content:center;align-items:center;width:90px;height:130px;margin-bottom:.75rem;display:flex;overflow:hidden;box-shadow:0 6px 12px -3px #00000026}.book-cover-medium img[data-v-0087a92b]{object-fit:cover;width:100%;height:100%}.book-cover-placeholder-medium[data-v-0087a92b]{color:#94a3b8;flex-direction:column;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;display:flex}.selected-info-vertical-medium h3[data-v-0087a92b]{color:#9f1239;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:0;margin-bottom:.2rem;font-size:1.05rem;font-weight:800;line-height:1.25;display:-webkit-box;overflow:hidden}.selected-info-vertical-medium .author[data-v-0087a92b]{color:#475569;white-space:nowrap;text-overflow:ellipsis;max-width:200px;margin-bottom:.75rem;font-size:.8rem;overflow:hidden}.location-badge-vertical-medium[data-v-0087a92b]{box-sizing:border-box;background:#ffffffe6;border:1px solid #fecdd3;border-radius:10px;width:100%;padding:.75rem;box-shadow:0 2px 4px #00000005}.location-badge-vertical-medium .badge-title[data-v-0087a92b]{color:#9f1239;letter-spacing:.08em;margin-bottom:.25rem;font-size:.65rem;font-weight:800}.location-badge-vertical-medium .badge-value[data-v-0087a92b]{color:#0f172a;margin-bottom:.1rem;font-size:1.15rem;font-weight:800}.location-badge-vertical-medium .badge-sub[data-v-0087a92b]{color:#64748b;font-size:.8rem;font-weight:600}.library-map-container[data-v-0087a92b]{background:#fff;border-radius:16px;grid-template-columns:360px 1fr;align-items:start;gap:1.5rem;padding:1.5rem;display:grid;box-shadow:0 4px 6px -1px #0000000d}@media (width<=1024px){.library-map-container[data-v-0087a92b]{grid-template-columns:1fr}}.left-panel[data-v-0087a92b]{flex-direction:column;gap:1.5rem;display:flex}.right-panel[data-v-0087a92b]{width:100%}.header h2[data-v-0087a92b]{color:#0f172a;margin-bottom:.5rem;font-size:1.8rem}.header p[data-v-0087a92b]{color:#64748b;font-size:.95rem}.search-section[data-v-0087a92b]{width:100%;position:relative}.search-box[data-v-0087a92b]{position:relative}.search-icon[data-v-0087a92b]{color:#9ca3af;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-input[data-v-0087a92b]{color:#111827;box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;width:100%;padding:.5rem 1rem .5rem 2.2rem;font-size:.875rem;transition:all .2s}.search-input[data-v-0087a92b]:focus{background:#fff;border-color:#9f1239;outline:none;box-shadow:0 0 0 3px #9f12391a}.search-results[data-v-0087a92b]{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:12px;max-height:300px;margin-top:.5rem;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 25px -5px #0000001a}.result-item[data-v-0087a92b]{cursor:pointer;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1rem 1.25rem;transition:background .2s;display:flex}.result-item[data-v-0087a92b]:hover{background:#fdf2f8}.book-title[data-v-0087a92b]{color:#0f172a;margin-bottom:4px;font-size:1rem;font-weight:700;display:block}.book-author[data-v-0087a92b]{color:#64748b;font-size:.8rem}.book-location[data-v-0087a92b]{color:#9f1239;white-space:nowrap;background:#ffe4e6;border-radius:999px;padding:.3rem .6rem;font-size:.75rem;font-weight:700}.selected-book-sidebar-card[data-v-0087a92b]{text-align:center;background:linear-gradient(135deg,#fdf2f8 0%,#fff1f2 100%);border:1px solid #fecdd3;border-radius:16px;flex-direction:column;align-items:center;padding:2rem 1.5rem;display:flex;position:relative;box-shadow:0 10px 20px -5px #9f123926}.clear-btn-sidebar[data-v-0087a92b]{color:#9f1239;cursor:pointer;background:#fff;border:1px solid #fecdd3;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem;box-shadow:0 2px 4px #0000000d}.clear-btn-sidebar[data-v-0087a92b]:hover{color:#fff;background:#9f1239;transform:scale(1.1)}.book-cover-large[data-v-0087a92b]{background:#fff;border-radius:8px;justify-content:center;align-items:center;width:140px;height:200px;margin-bottom:1.5rem;display:flex;overflow:hidden;box-shadow:0 10px 15px -3px #0003}.book-cover-large img[data-v-0087a92b]{object-fit:cover;width:100%;height:100%}.book-cover-placeholder[data-v-0087a92b]{color:#94a3b8;flex-direction:column;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.selected-info-vertical h3[data-v-0087a92b]{color:#9f1239;margin-bottom:.25rem;font-size:1.25rem;font-weight:800;line-height:1.3}.selected-info-vertical .author[data-v-0087a92b]{color:#475569;margin-bottom:1.5rem;font-size:.95rem}.location-badge-vertical[data-v-0087a92b]{box-sizing:border-box;background:#fff;border:1px solid #fecdd3;border-radius:12px;width:100%;padding:1.25rem;box-shadow:0 4px 6px #00000005}.location-badge-vertical .badge-title[data-v-0087a92b]{color:#9f1239;letter-spacing:.1em;margin-bottom:.5rem;font-size:.75rem;font-weight:800}.location-badge-vertical .badge-value[data-v-0087a92b]{color:#0f172a;margin-bottom:.25rem;font-size:1.5rem;font-weight:800}.location-badge-vertical .badge-sub[data-v-0087a92b]{color:#64748b;font-size:.9rem;font-weight:600}.scene-container[data-v-0087a92b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;height:650px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 20px #00000005}.back-btn[data-v-0087a92b]{z-index:20;color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:12px;align-items:center;gap:8px;padding:.75rem 1.2rem;font-weight:700;transition:all .2s;display:flex;position:absolute;top:1.5rem;left:1.5rem;box-shadow:0 4px 6px #0000000d}.back-btn[data-v-0087a92b]:hover{background:#f1f5f9;transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.isometric-scene[data-v-0087a92b]{perspective:2500px;background:#fff;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.wood-floor[data-v-0087a92b]{width:850px;height:600px;transform-style:preserve-3d;background-color:#d1bfae;background-image:repeating-linear-gradient(45deg,#c3b09e 25%,#0000 25% 75%,#c3b09e 75%,#c3b09e),repeating-linear-gradient(45deg,#c3b09e 25%,#d1bfae 25% 75%,#c3b09e 75%,#c3b09e);background-position:0 0,15px 15px;background-size:30px 30px;border:1px solid #111;position:relative;transform:rotateX(60deg)rotate(-35deg);box-shadow:-2px 2px #111,-4px 4px #111,-6px 6px #111,-8px 8px 15px #00000080}.floor-label-text[data-v-0087a92b]{color:#f1f5f9;letter-spacing:1px;text-shadow:1px 1px 2px #0000004d;font-size:.8rem;font-weight:800;position:absolute;transform:translateZ(1px)}.entrance-marker[data-v-0087a92b]{color:#fff;letter-spacing:2px;background:#111;border-radius:2px;padding:8px 40px;font-size:1.1rem;font-weight:900;position:absolute;bottom:0;right:0;transform:translateZ(1px)translate(25px)translateY(10px);box-shadow:0 4px 10px #00000080}.iso-shelf[data-v-0087a92b]{transform-style:preserve-3d;cursor:pointer;transition:transform .3s;position:absolute}.iso-shelf[data-v-0087a92b]:hover{transform:translateZ(10px)}.iso-face[data-v-0087a92b]{backface-visibility:hidden;background:#8b5a2b;border:1px solid #5c3a21;position:absolute}.iso-face.top[data-v-0087a92b]{color:#3e2723;letter-spacing:1px;background:#a06e3d;justify-content:center;align-items:center;width:100%;height:100%;font-size:.85rem;font-weight:800;display:flex;transform:translateZ(120px)}.top-label[data-v-0087a92b]{opacity:0;pointer-events:none;transition:opacity .3s}.iso-shelf:hover .top-label[data-v-0087a92b],.iso-shelf.is-target .top-label[data-v-0087a92b]{opacity:1}.iso-face.front[data-v-0087a92b]{transform-origin:bottom;background:#794d24;width:100%;height:120px;bottom:0;left:0;transform:rotateX(-90deg)}.iso-face.back[data-v-0087a92b]{transform-origin:top;background:#794d24;width:100%;height:120px;top:0;left:0;transform:rotateX(90deg)}.iso-face.left[data-v-0087a92b]{transform-origin:0;box-sizing:border-box;background:#2e1b10;justify-content:space-evenly;align-items:center;width:120px;height:100%;padding:3px 0;display:flex;top:0;left:0;transform:rotateY(-90deg)}.iso-face.right[data-v-0087a92b]{transform-origin:100%;box-sizing:border-box;background:#2e1b10;flex-direction:row-reverse;justify-content:space-evenly;align-items:center;width:120px;height:100%;padding:3px 0;display:flex;top:0;right:0;transform:rotateY(90deg)}.fake-book-col[data-v-0087a92b]{background-image:repeating-linear-gradient(#991b1b 0 12px,#1e40af 12px 24px,#065f46 24px 32px,#92400e 32px 48px,#374151 48px 58px,#b91c1c 58px 66px,#4338ca 66px 84px);background-size:100% 100px;width:14px;height:96%;position:relative;box-shadow:inset 4px 0 8px #00000080}.fake-book-col.alt-pattern[data-v-0087a92b]{background-image:repeating-linear-gradient(#4338ca 0 16px,#991b1b 16px 24px,#065f46 24px 40px,#374151 40px 48px,#1e40af 48px 60px,#92400e 60px 70px,#b91c1c 70px 84px)}.fake-book-col.left-face[data-v-0087a92b]{border-left:3px solid #a06e3d}.fake-book-col.right-face[data-v-0087a92b]{border-right:3px solid #a06e3d}.iso-shelf.is-target .iso-face[data-v-0087a92b]{box-shadow:0 0 25px #ef444499;background:#ef4444e6!important;border-color:#f87171!important}.iso-shelf.is-target .iso-face.top[data-v-0087a92b]{text-shadow:0 0 5px #fffc;color:#fff!important;background:#ef4444!important}.iso-shelf.is-target .iso-face.left[data-v-0087a92b],.iso-shelf.is-target .iso-face.right[data-v-0087a92b]{background:#7f1d1d!important}.iso-shelf.is-target .fake-book-col[data-v-0087a92b]{box-shadow:inset 0 0 0 100px #ef444499,inset 4px 0 8px #0009!important}.iso-shelf.is-target .fake-book-col.left-face[data-v-0087a92b]{border-left-color:#fca5a5!important}.iso-shelf.is-target .fake-book-col.right-face[data-v-0087a92b]{border-right-color:#fca5a5!important}.detail-scene[data-v-0087a92b]{background:#fff;flex-direction:column;width:100%;height:100%;padding:5rem 2rem 2rem;display:flex;position:absolute}.detail-header[data-v-0087a92b]{text-align:center;margin-bottom:2rem}.detail-header h3[data-v-0087a92b]{color:#0f172a;font-size:2rem;font-weight:900}.detail-header p[data-v-0087a92b]{color:#64748b}.detail-faces[data-v-0087a92b]{justify-content:center;gap:4rem;height:100%;display:flex}.detail-face[data-v-0087a92b]{background:#f8fafc;border:12px solid #cbd5e1;border-radius:8px;flex-direction:column;width:350px;padding:0 1rem;transition:all .3s;display:flex;box-shadow:0 20px 40px #0000001a,inset 0 0 30px #0000000d}.target-face[data-v-0087a92b]{border-color:#fca5a5;box-shadow:0 20px 50px #e11d4833,inset 0 0 30px #fecdd380}.face-header[data-v-0087a92b]{text-align:center;color:#fff;letter-spacing:.1em;background:#94a3b8;border-radius:0 0 8px 8px;margin-bottom:1rem;padding:.5rem;font-weight:800}.target-face .face-header[data-v-0087a92b]{background:#e11d48}.detail-floors[data-v-0087a92b]{flex-direction:column;flex:1;display:flex}.detail-floor[data-v-0087a92b]{border-bottom:10px solid #cbd5e1;flex:1;align-items:flex-end;transition:background .3s;display:flex;position:relative}.detail-floor[data-v-0087a92b]:last-child{border-bottom:none}.has-target-book[data-v-0087a92b]{background:linear-gradient(#0000 0%,#fecdd380 100%)}.floor-bookshelf[data-v-0087a92b]{align-items:flex-end;gap:2px;width:100%;height:100%;padding-bottom:2px;display:flex}.book-spine[data-v-0087a92b]{border-left:1px solid #fff3;border-radius:2px 2px 0 0;width:12px;box-shadow:inset -3px 0 5px #0000004d}.target-book-spine[data-v-0087a92b]{z-index:10;cursor:pointer;background:linear-gradient(135deg,#e11d48 0%,#9f1239 100%);border-radius:4px 4px 0 0;justify-content:center;align-items:center;width:30px;height:80%;animation:1.5s infinite targetPulse-0087a92b;display:flex;position:relative;box-shadow:0 0 20px #f43f5e,inset -2px 0 10px #00000080}.book-label[data-v-0087a92b]{color:#fff;letter-spacing:1px;font-size:.6rem;font-weight:900;transform:rotate(-90deg)}@keyframes targetPulse-0087a92b{0%,to{transform:scale(1);box-shadow:0 0 15px #f43f5e}50%{transform:scale(1.05);box-shadow:0 0 30px #f43f5e,0 0 10px #fff}}.floor-label[data-v-0087a92b]{color:#94a3b8;font-size:.8rem;font-weight:800;position:absolute;bottom:10px;left:-40px}.has-target-book .floor-label[data-v-0087a92b]{color:#e11d48}.selected-shelf-sidebar-card[data-v-0087a92b]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;padding:1.5rem 1.25rem;display:flex;position:relative;box-shadow:0 4px 6px -1px #0000000d}.shelf-sidebar-header[data-v-0087a92b]{border-bottom:2px solid #f1f5f9;margin-bottom:1.25rem;padding-bottom:.5rem}.shelf-sidebar-header h3[data-v-0087a92b]{color:#0f172a;margin:0;font-size:1.2rem;font-weight:800}.shelf-subtitle[data-v-0087a92b]{color:#9f1239;letter-spacing:.05em;font-size:.7rem;font-weight:700}.sidebar-bookshelf-container[data-v-0087a92b]{background:#f8fafc;border:4px solid #cbd5e1;border-radius:8px;padding:0 .5rem;box-shadow:inset 0 0 15px #0000000d}.sidebar-bookshelf[data-v-0087a92b]{flex-direction:column;display:flex}.sidebar-floor[data-v-0087a92b]{border-bottom:4px solid #cbd5e1;justify-content:flex-start;align-items:flex-end;height:52px;padding-left:28px;display:flex;position:relative}.sidebar-floor[data-v-0087a92b]:last-child{border-bottom:none}.sidebar-floor.has-target-book-sidebar[data-v-0087a92b]{background:#fecdd34d}.sidebar-bookshelf-shelf[data-v-0087a92b]{align-items:flex-end;gap:1.5px;width:100%;height:100%;padding-bottom:1px;display:flex}.sidebar-book-spine[data-v-0087a92b]{border-left:.5px solid #fff3;border-radius:1px 1px 0 0;width:6px;box-shadow:inset -1px 0 2px #0000004d}.sidebar-target-book[data-v-0087a92b]{z-index:10;background:linear-gradient(135deg,#e11d48 0%,#9f1239 100%);border-radius:2px 2px 0 0;justify-content:center;align-items:center;width:15px;height:85%;animation:1.5s infinite targetPulseSidebar-0087a92b;display:flex;position:relative;box-shadow:0 0 8px #f43f5e,inset -1px 0 5px #00000080}.sidebar-book-label[data-v-0087a92b]{color:#fff;letter-spacing:.5px;white-space:nowrap;font-size:.45rem;font-weight:900;transform:rotate(-90deg)}@keyframes targetPulseSidebar-0087a92b{0%,to{transform:scale(1);box-shadow:0 0 6px #f43f5e}50%{transform:scale(1.05);box-shadow:0 0 12px #f43f5e,0 0 4px #fff}}.sidebar-floor-label[data-v-0087a92b]{color:#94a3b8;pointer-events:none;font-size:.65rem;font-weight:800;position:absolute;bottom:4px;left:4px}.sidebar-floor-label.has-target-text[data-v-0087a92b]{color:#e11d48}.fade-enter-active[data-v-0087a92b],.fade-leave-active[data-v-0087a92b]{transition:opacity .4s}.fade-enter-from[data-v-0087a92b],.fade-leave-to[data-v-0087a92b]{opacity:0}.stats-view-wrapper[data-v-42307ead]{max-width:100%}.tops-section-grid[data-v-42307ead]{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=1200px){.tops-section-grid[data-v-42307ead]{grid-template-columns:1fr 1fr}}.chart-box[data-v-42307ead]{background:#fff;border:1px solid #f3f4f6;border-radius:1rem;flex-direction:column;padding:1.5rem;display:flex;box-shadow:0 4px 6px -1px #0000000d}.chart-header[data-v-42307ead]{color:#111827;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:.95rem;font-weight:800;display:flex}.split-layout[data-v-42307ead]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:.5rem;display:flex}.split-chart[data-v-42307ead]{flex:1;justify-content:center;align-items:center;min-width:180px;height:220px;display:flex;position:relative}.split-list[data-v-42307ead]{flex:1.25;min-width:260px}.donut-container[data-v-42307ead]{position:relative}.donut-center-text[data-v-42307ead]{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute}.donut-center-title[data-v-42307ead]{text-transform:uppercase;color:#6b7280;letter-spacing:.05em;font-size:.65rem;font-weight:700}.donut-center-val[data-v-42307ead]{color:#111827;margin-top:2px;font-size:1rem;font-weight:800}.ranking-list[data-v-42307ead]{flex-direction:column;gap:.85rem;display:flex}.ranking-item[data-v-42307ead]{background:#fdfdfd;border:1px solid #f3f4f6;border-radius:.75rem;align-items:center;gap:1rem;padding:.75rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.ranking-item[data-v-42307ead]:hover{background:#fff;border-color:#e5e7eb;transform:translateY(-2px);box-shadow:0 4px 12px #0000000a}.ranking-badge[data-v-42307ead]{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:800;display:flex}.ranking-badge.rank-1[data-v-42307ead]{color:#d97706;background:#fef3c7;border:1px solid #fde68a;box-shadow:0 2px 4px #d977061a}.ranking-badge.rank-2[data-v-42307ead]{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.ranking-badge.rank-3[data-v-42307ead]{color:#c2410c;background:#ffedd5;border:1px solid #fed7aa}.ranking-badge.rank-4[data-v-42307ead],.ranking-badge.rank-5[data-v-42307ead]{color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb}.ranking-name[data-v-42307ead]{color:#111827;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.ranking-time[data-v-42307ead]{color:#111827;white-space:nowrap;font-size:.85rem;font-weight:800}.color-dot[data-v-42307ead]{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:6px;display:inline-block}.export-btn[data-v-42307ead]{color:#166534;cursor:pointer;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.export-btn[data-v-42307ead]:hover{background:#dcfce7;border-color:#86efac}.toggle-btn[data-v-42307ead]{color:#0369a1;cursor:pointer;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.toggle-btn[data-v-42307ead]:hover{background:#e0f2fe;border-color:#7dd3fc}.perf-map-container[data-v-42307ead]{background:#fdfdfd;border:1px solid #f3f4f6;border-radius:12px;margin-top:.5rem;padding:1.5rem;overflow-x:auto}.legend-color-box[data-v-42307ead]{border-radius:3px;width:12px;height:12px;display:inline-block}.perf-grid[data-v-42307ead]{grid-template-rows:repeat(9,65px);grid-template-columns:repeat(12,42px);justify-content:center;gap:15px;display:grid}.pc-card-wrapper[data-v-42307ead]{justify-content:center;align-items:center;display:flex}.pc-card[data-v-42307ead]{cursor:pointer;flex-direction:column;align-items:center;transition:all .2s;display:flex}.pc-card[data-v-42307ead]:hover{transform:scale(1.08)}.monitor[data-v-42307ead]{border-radius:4px;width:42px;height:32px;margin-bottom:2px;padding:2px;box-shadow:0 2px 4px #0000000d}.screen[data-v-42307ead]{background:#fff;border:1px solid #0000000d;border-radius:2px;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.stand[data-v-42307ead]{border-radius:0 0 2px 2px;width:14px;height:6px;margin:-1px auto 0}.pc-name[data-v-42307ead]{color:#475569;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:3px;padding:1px 4px;font-size:.55rem;font-weight:700}.empty-slot[data-v-42307ead]{opacity:.15}.loading-overlay[data-v-42307ead]{color:#6b7280;flex-direction:column;justify-content:center;align-items:center;height:60vh;display:flex}.spinner[data-v-42307ead]{border:3px solid #f3f4f6;border-top-color:#3b82f6;border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite spin-42307ead}@keyframes spin-42307ead{to{transform:rotate(360deg)}}.detail-overlay[data-v-42307ead]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#0f172a66;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.detail-card[data-v-42307ead]{text-align:left;border:1px solid #fff;animation:.3s cubic-bezier(.34,1.56,.64,1) modalEnter-42307ead;box-shadow:0 25px 50px -12px #00000026}@keyframes modalEnter-42307ead{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.map-modal-card[data-v-42307ead]{background:#fff;border-radius:20px;padding:2rem;overflow-y:auto;width:95vw!important;max-width:1200px!important;max-height:90vh!important}.close-modal-btn[data-v-42307ead]{color:#475569;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;transition:all .2s;display:flex}.close-modal-btn[data-v-42307ead]:hover{color:#0f172a;background:#e2e8f0}
