@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--vv-safe-top: 0px;--vv-safe-bottom: 0px;--vv-safe-left: 0px;--vv-safe-right: 0px;--safe-area-top: max(env(safe-area-inset-top, 0px), var(--vv-safe-top));--safe-area-bottom: max(env(safe-area-inset-bottom, 0px), var(--vv-safe-bottom));--safe-area-left: max(env(safe-area-inset-left, 0px), var(--vv-safe-left));--safe-area-right: max(env(safe-area-inset-right, 0px), var(--vv-safe-right))}:root,:root[data-theme=dark]{color-scheme:dark;--primary-color: #D34A09;--primary-hover: #E55A19;--primary-shadow: rgba(211, 74, 9, .3);--bg-primary: #000000;--bg-secondary: #0A0A0A;--bg-tertiary: #171717;--surface-elevated: rgba(18, 18, 18, .95);--surface-glass: rgba(0, 0, 0, .85);--text-primary: #FFFFFF;--text-secondary: #A3A3A3;--text-tertiary: #737373;--text-disabled: #525252;--border-color: rgba(255, 255, 255, .12);--border-hover: rgba(255, 255, 255, .2);--border-focus: rgba(211, 74, 9, .5);--hover-bg: rgba(255, 255, 255, .08);--active-bg: rgba(255, 255, 255, .12);--selected-bg: rgba(211, 74, 9, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px rgba(0, 0, 0, .6);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .7);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .8);--input-bg: #121212;--input-border: #262626;--input-focus-border: var(--primary-color);--card-bg: rgba(18, 18, 18, .95);--card-border: rgba(255, 255, 255, .1);--scrollbar-track: #0A0A0A;--scrollbar-thumb: #404040;--scrollbar-thumb-hover: #525252;--toggle-bg: #262626;--toggle-knob: #E5E5E5;--success: #22C55E;--warning: #EAB308;--error: #EF4444;--info: #3B82F6;--map-bg: #000000;--path-color: #0EA5E9}:root[data-theme=light]{color-scheme:light;--primary-color: #D34A09;--primary-hover: #B33F08;--primary-shadow: rgba(211, 74, 9, .2);--bg-primary: #FFFFFF;--bg-secondary: #F8FAFC;--bg-tertiary: #E2E8F0;--surface-elevated: rgba(255, 255, 255, .98);--surface-glass: rgba(248, 250, 252, .95);--text-primary: #0F172A;--text-secondary: #475569;--text-tertiary: #64748B;--text-disabled: #94A3B8;--border-color: rgba(0, 0, 0, .1);--border-hover: rgba(0, 0, 0, .2);--border-focus: rgba(211, 74, 9, .5);--hover-bg: rgba(0, 0, 0, .05);--active-bg: rgba(0, 0, 0, .1);--selected-bg: rgba(211, 74, 9, .1);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--input-bg: #FFFFFF;--input-border: #E2E8F0;--input-focus-border: var(--primary-color);--card-bg: rgba(255, 255, 255, .95);--card-border: rgba(0, 0, 0, .08);--scrollbar-track: #F1F5F9;--scrollbar-thumb: #CBD5E1;--scrollbar-thumb-hover: #94A3B8;--toggle-bg: #E2E8F0;--toggle-knob: #FFFFFF;--success: #22C55E;--warning: #EAB308;--error: #EF4444;--info: #3B82F6;--map-bg: #F8FAFC;--path-color: #0EA5E9}html,body{background-color:var(--bg-primary);color:var(--text-primary)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow-x:hidden;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0}#root{width:100%;min-height:100vh;min-height:100svh}a{font-weight:500;color:#3b82f6;text-decoration:inherit}a:hover{color:#60a5fa}button{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}::selection{background:var(--selected-bg);color:var(--text-primary)}.floor-map-container{position:relative;width:100%;height:100%;min-height:600px;background:var(--map-bg);border-radius:16px;overflow:hidden;perspective:2000px;perspective-origin:50% 50%;touch-action:none;user-select:none;-webkit-user-select:none}.canvas-wrapper{width:100%;height:100%;transition:transform 1.2s cubic-bezier(.19,1,.22,1);transform-style:preserve-3d;background:var(--map-bg);will-change:transform;touch-action:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}.canvas-wrapper canvas{image-rendering:high-quality;image-rendering:-webkit-optimize-contrast;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.view-3d .canvas-wrapper{transform:rotateX(55deg) rotate(-12deg) translateY(60px) scale(.9);box-shadow:0 50px 100px -20px #000c,0 30px 60px -30px #000000e6}.floor-map-container.fullscreen{position:fixed;top:0;left:0;width:100vw;height:100svh;height:100dvh;z-index:990;background:#000}.fullscreen-close{background:#d34a09e6}.fullscreen-close:hover{background:#d34a09}.map-ui-header{position:absolute;top:20px;left:20px;right:auto;display:flex;gap:12px;z-index:150}.ui-group{display:flex;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:8px;padding:4px;gap:4px}.ui-group button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-primary);border-radius:6px;cursor:pointer;transition:all .2s;opacity:.8}.ui-group button:hover{background:var(--hover-bg);color:var(--text-primary);opacity:1}.ui-group button.active{background:var(--primary-color);color:#fff}.map-editor-toolbar{position:absolute;top:80px;left:20px;display:flex;flex-direction:column;gap:8px;z-index:150;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:12px;padding:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:140px}.toolbar-label{font-size:10px;font-weight:700;color:var(--text-tertiary);margin-bottom:4px;letter-spacing:.05em}.map-editor-toolbar button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:var(--bg-secondary);border:1px solid transparent;border-radius:8px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;text-align:left}.map-editor-toolbar button:hover{background:var(--hover-bg);color:var(--text-primary);border-color:var(--border-hover)}.map-editor-toolbar button.active{background:var(--primary-color);color:#fff;border-color:transparent;box-shadow:0 4px 12px var(--primary-shadow)}.tool-options{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.tool-options select{width:100%;background:#000;border:1px solid #333;color:#fff;font-size:11px;padding:6px;border-radius:6px;outline:none;cursor:pointer}.tool-options input[type=range]{width:100%;height:4px;background:var(--border-hover);border-radius:2px;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.tool-options input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:linear-gradient(135deg,#d34a09,#d8830d);border-radius:50%;cursor:pointer}.tool-options input[type=range]::-moz-range-thumb{width:14px;height:14px;background:linear-gradient(135deg,#d34a09,#d8830d);border-radius:50%;cursor:pointer;border:none}.editor-properties-panel{position:absolute;top:80px;left:170px;width:260px;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:12px;padding:16px;z-index:150;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:1px solid var(--border-color);padding-bottom:8px}.panel-header span{color:var(--text-primary);font-weight:600;font-size:13px}.panel-header button{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;display:flex}.panel-header button:hover{color:var(--text-primary)}.panel-row{margin-bottom:12px}.panel-row label{display:block;color:var(--text-secondary);font-size:10px;font-weight:600;margin-bottom:6px;text-transform:uppercase}.panel-row input,.panel-row select{width:100%;background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);padding:8px;border-radius:6px;font-size:12px;outline:none}.panel-row input:focus,.panel-row select:focus{border-color:var(--primary-color)}.panel-row.coords{display:flex;gap:8px}.delete-btn{width:100%;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2);padding:10px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:600;margin-top:12px;transition:all .2s}.delete-btn:hover{background:#ef4444;color:#fff}.disabled-input{opacity:.5;cursor:not-allowed;font-family:monospace;color:#737373!important}.map-legend-colored{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:12px;padding:12px 20px;display:flex;flex-direction:column;gap:8px;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.legend-row{display:flex;gap:16px;justify-content:center}.legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#a3a3a3;font-weight:500}.dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 4px #0000004d}@media (max-width: 768px){.map-ui-header{top:130px;left:10px;right:10px;flex-wrap:wrap;gap:8px;z-index:350}.ui-group{flex-shrink:0}.ui-group button{width:36px;height:36px}.map-editor-toolbar{top:70px;left:10px;width:120px}.editor-properties-panel{left:140px;width:200px}}.map-attribution{position:absolute;bottom:8px;right:12px;font-size:10px;color:#fff;opacity:.9;pointer-events:none;z-index:90;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.6);background:#000000d9;padding:4px 8px;border-radius:6px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (max-width: 768px){.map-attribution{display:none}}.search-bar-container{position:relative;width:100%}.search-input-wrapper{position:relative;display:flex;align-items:center;background:var(--input-bg);border:1.5px solid var(--input-border);border-radius:12px;transition:border-color .2s ease,box-shadow .2s ease}.search-input-wrapper:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-shadow)}.search-icon{position:absolute;left:14px;color:var(--text-tertiary);pointer-events:none}.search-input{width:100%;padding:13px 44px;border:none;border-radius:12px;background:transparent;font-size:14px;font-weight:500;color:var(--text-primary);outline:none}.search-input::placeholder{color:var(--text-tertiary)}.clear-button{position:absolute;right:10px;width:26px;height:26px;border:none;border-radius:50%;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.clear-button:hover{background:var(--hover-bg);color:var(--text-primary)}.suggestions-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:14px;box-shadow:var(--shadow-lg);max-height:360px;overflow-y:auto;z-index:1000}.suggestion-item{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;transition:background .15s ease}.suggestion-item:not(:last-child){border-bottom:1px solid var(--border-color)}.suggestion-item:hover,.suggestion-item.selected{background:var(--selected-bg)}.suggestion-icon{color:var(--text-tertiary);flex-shrink:0;display:flex;align-items:center;justify-content:center}.suggestion-item:hover .suggestion-icon,.suggestion-item.selected .suggestion-icon{color:var(--text-primary)}.suggestion-content{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.suggestion-label{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.5rem}.match-badge{display:inline-block;padding:.125rem .375rem;font-size:.65rem;font-weight:700;text-transform:uppercase;background:var(--selected-bg);color:var(--primary-color);border-radius:4px;letter-spacing:.03em;flex-shrink:0}.floor-badge{display:inline-block;padding:.125rem .5rem;font-size:.65rem;font-weight:700;background:#a855f733;color:#a855f7;border-radius:4px;letter-spacing:.03em;flex-shrink:0}.suggestion-type{font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px}.no-results{padding:28px 20px;text-align:center}.no-results-icon{color:var(--primary-color);margin-bottom:6px}.no-results-text{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.no-results-hint{font-size:12px;color:var(--text-secondary);margin:0}.suggestions-dropdown::-webkit-scrollbar{width:6px}.suggestions-dropdown::-webkit-scrollbar-track{background:var(--scrollbar-track)}.suggestions-dropdown::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.suggestions-dropdown::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}@media (max-width: 768px){.search-input{padding:9px 36px;font-size:14px}.search-icon{left:12px;width:16px;height:16px}.clear-button{right:10px;width:24px;height:24px}.suggestion-item{padding:12px;min-height:48px}.suggestion-label{font-size:14px}.suggestion-type{font-size:11px}.suggestions-list{max-height:50vh}}.quick-actions-container{background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:16px;padding:16px;box-shadow:var(--shadow-lg)}.quick-actions-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin-bottom:14px;-webkit-user-select:none;user-select:none}.quick-actions-container.collapsed .quick-actions-header{margin-bottom:0}.quick-actions-title{font-size:11px;font-weight:700;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.6px}.toggle-icon{color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;transition:color .15s ease}.quick-actions-header:hover .toggle-icon{color:var(--text-primary)}.animate-in{animation:gridFadeIn .25s cubic-bezier(.16,1,.3,1)}@keyframes gridFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (max-width: 768px){.quick-actions-grid{grid-template-columns:repeat(3,1fr);gap:8px}.quick-action-button{padding:12px 8px;gap:4px}.quick-actions-container{padding:12px}}.quick-action-button{--action-color: #D34509;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 10px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;color:var(--text-primary);transition:background .15s ease,border-color .15s ease}.quick-action-button:hover:not(:disabled){background:var(--selected-bg);border-color:var(--action-color)}.quick-action-button:disabled{opacity:.35;cursor:not-allowed}.quick-action-button .action-icon{color:var(--action-color);transition:color .15s ease}.quick-action-button:hover:not(:disabled) .action-icon{color:var(--text-primary)}.quick-action-button .action-label{font-size:11px;font-weight:600;text-align:center;color:var(--text-secondary);transition:color .15s ease}.quick-action-button:hover:not(:disabled) .action-label{color:var(--text-primary)}@media (max-width: 768px){.quick-actions-grid{grid-template-columns:repeat(3,1fr);gap:8px}.quick-action-button{padding:12px 8px}.quick-action-button .action-label{font-size:10px}}@media (max-width: 480px){.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.quick-attribution-mobile{display:none;text-align:center;font-size:10px;color:var(--text-tertiary);margin-top:12px;font-weight:500}.fed-logo{height:18px;width:auto;display:inline-block;vertical-align:middle;margin-left:4px;margin-bottom:2px}@media (max-width: 768px){.quick-attribution-mobile{display:block}}.nav-overlay-integrated{width:100%}.nav-card-integrated{background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;margin-bottom:6px}.nav-content-integrated{display:flex;align-items:center;gap:8px;padding:8px 10px}.nav-content-integrated .nav-icon-wrapper{width:34px;height:34px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease,color .2s ease}.nav-card-integrated.turn-left .nav-icon-wrapper,.nav-card-integrated.turn-right .nav-icon-wrapper{background:#d34a0924;color:#d34a09;border-color:#d34a0947}.nav-card-integrated.end .nav-icon-wrapper{background:#10b98124;color:#10b981;border-color:#10b98147}.nav-content-integrated .nav-text{flex:1;min-width:0}.nav-content-integrated .step-count{font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:#9a9a9a;font-weight:600;line-height:1;margin-bottom:2px}.nav-content-integrated .instruction-text{font-size:13px;font-weight:600;line-height:1.25;color:var(--text-primary);word-break:break-word}.nav-content-integrated .nav-controls{display:flex;align-items:center;gap:6px;padding-left:6px;border-left:1px solid var(--border-color);flex-shrink:0}.nav-content-integrated .nav-btn{width:30px;height:30px;border-radius:7px;border:1px solid var(--border-color);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;transition:background .15s ease}.nav-content-integrated .nav-btn:hover:not(:disabled){background:var(--hover-bg)}.nav-content-integrated .nav-btn:disabled{opacity:.35}.nav-content-integrated .nav-btn.finish{background:#10b981;border:none;color:#000}.nav-minimize-btn{width:26px;height:26px;border-radius:6px;background:transparent;border:none;color:#888}.nav-minimize-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.nav-card-integrated.multi-floor{position:relative}.multi-floor-badge{position:absolute;top:5px;right:6px;padding:2px 6px;font-size:8px;border-radius:6px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;font-weight:600}.nav-progress{height:2.5px;background:#ffffff0f}.nav-progress-bar{height:100%;transition:width .25s ease}.nav-progress-bar.multi-floor-progress{background:linear-gradient(90deg,#f97316,#ea580c,#10b981)}.nav-card-integrated.transition-phase{background:#f973161f;border-color:#f973164d}.nav-icon-wrapper.floor-change{background:#f973162e;color:#f97316;border-color:#f973164d}.floor-change-label{color:#f97316}.nav-btn.floor-reached-btn{min-width:64px;padding:0 8px;font-size:11px;border-radius:8px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none}.skip-to-transition{width:100%;padding:6px 8px;font-size:10.5px;background:#f973161a;border:none;border-top:1px solid rgba(249,115,22,.25);color:#f97316}@media (max-width: 768px){.nav-content-integrated{padding:7px 8px;gap:6px}.nav-content-integrated .instruction-text{font-size:14px}.nav-content-integrated .nav-icon-wrapper{width:32px;height:32px}.nav-content-integrated .nav-btn{width:28px;height:28px}}.install-prompt{position:fixed;bottom:-100px;left:50%;transform:translate(-50%);z-index:9999;transition:bottom .4s cubic-bezier(.34,1.56,.64,1);max-width:90%;width:400px}.install-prompt.show{bottom:calc(24px + var(--safe-area-bottom))}.install-prompt-content{background:linear-gradient(135deg,#d34a09f2,#d8830df2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:16px;border:1px solid rgba(211,74,9,.9);box-shadow:0 0 0 3px #fff,0 0 0 5px #d34a09d9,0 10px 26px #d34a0938}.install-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;background:transparent;border:1px solid rgba(211,74,9,.9);box-shadow:0 0 0 2px #fff,0 0 0 3px #d34a09d9}.install-text{flex:1;min-width:0}.install-text h3{margin:0;font-size:16px;font-weight:700;color:#fff;line-height:1.2}.install-text p{margin:4px 0 0;font-size:13px;color:#ffffffe6;line-height:1.3}.install-actions{display:flex;align-items:center;gap:8px}.install-btn{background:#fff;color:#d34a09;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid rgba(211,74,9,.6);box-shadow:0 0 0 2px #fff,0 6px 16px #0000001f}.dismiss-btn{width:36px;height:36px;background:#000;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid rgba(211,74,9,.9);box-shadow:0 0 0 2px #fff,0 0 0 3px #d34a09d9}@media (max-width: 768px){.install-prompt{width:calc(100% - 32px);max-width:none}.install-prompt.show{bottom:calc(16px + var(--safe-area-bottom))}.install-prompt-content{padding:14px 16px;gap:12px}.install-icon{width:44px;height:44px}.install-text h3{font-size:15px}.install-text p{font-size:12px}.install-btn{padding:8px 16px;font-size:13px}}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .3s ease}.tutorial-overlay.visible{opacity:1}.tutorial-modal{position:relative;width:100%;max-width:420px;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;opacity:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s ease}.tutorial-modal.visible{transform:scale(1) translateY(0);opacity:1}.tutorial-close{position:absolute;top:16px;right:16px;width:36px;height:36px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease;z-index:10}.tutorial-close:hover{background:var(--hover-bg);color:var(--text-primary)}.tutorial-header{padding:32px 24px 16px;text-align:center}.tutorial-badge{display:inline-block;padding:6px 16px;background:var(--accent-gradient);border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#fff}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseBorder{0%{box-shadow:0 0 0 4px var(--bg-primary),0 0 0 6px var(--border-color)}50%{box-shadow:0 0 0 6px var(--bg-primary),0 0 0 8px var(--accent-primary)}to{box-shadow:0 0 0 4px var(--bg-primary),0 0 0 6px var(--border-color)}}.tutorial-content{padding:24px 32px 32px;text-align:center;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:slideUpFade .4s cubic-bezier(.16,1,.3,1)}.tutorial-icon{width:80px;height:80px;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-color);margin-bottom:24px;border:1px solid rgba(211,74,9,.9);box-shadow:0 0 0 3px #fff,0 0 0 5px #d34a09d9,0 10px 26px #d34a0938;transition:all .3s cubic-bezier(.25,.8,.25,1)}.tutorial-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 12px;letter-spacing:-.5px}.tutorial-description{font-size:15px;line-height:1.6;color:var(--text-secondary);margin:0;max-width:340px}.tutorial-progress{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 24px 24px}.progress-dot{width:8px;height:8px;border-radius:50%;background:var(--border-color);border:none;cursor:pointer;padding:0;transition:background .3s ease,width .3s ease}.progress-dot:hover{background:var(--text-disabled)}.progress-dot.active{width:24px;border-radius:12px;background:var(--accent-gradient)}.progress-dot.completed{background:var(--accent-primary);opacity:.6}.tutorial-actions{display:flex;align-items:center;justify-content:space-between;padding:16px 24px 24px;gap:12px}.tutorial-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 24px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.tutorial-btn.primary{flex:1;background:var(--accent-gradient);color:#fff;box-shadow:0 4px 12px #00000026}.tutorial-btn.primary:hover{opacity:.95;box-shadow:0 6px 16px #0003}.tutorial-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.tutorial-btn.secondary:hover{background:var(--hover-bg)}.tutorial-btn.skip{background:transparent;color:var(--text-secondary);padding:12px 16px}.tutorial-btn.skip:hover{color:var(--text-primary)}@media (max-width: 480px){.tutorial-modal{max-width:100%;margin:0 12px}.tutorial-content{padding:20px 24px 28px;min-height:180px}.tutorial-icon{width:64px;height:64px}.tutorial-icon svg{width:28px;height:28px}.tutorial-title{font-size:20px}.tutorial-description{font-size:14px}.tutorial-actions{flex-direction:column-reverse;gap:10px}.tutorial-btn{width:100%}}:root{--accent-ring: rgba(211, 74, 9, .85);--accent-border: rgba(211, 74, 9, .9);--outer-ring: #ffffff;--depth-shadow: 0 10px 26px rgba(211, 74, 9, .22)}.theme-toggle-buttons{display:flex;gap:8px;background:var(--surface-elevated);border-radius:10px;padding:5px;border:1px solid var(--accent-border);box-shadow:0 0 0 3px var(--outer-ring),0 0 0 5px var(--accent-ring),var(--depth-shadow)}.theme-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border-radius:8px;border:1px solid transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.theme-btn:hover{background:#d34a0914;color:var(--text-primary)}.theme-btn.active{background:#fff;color:#d34a09;border:1px solid var(--accent-border);box-shadow:0 0 0 3px var(--outer-ring),0 0 0 5px var(--accent-ring),0 8px 22px #d34a0938}.theme-btn svg{flex-shrink:0}.theme-toggle-container{display:flex;align-items:center}.theme-toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.theme-icon{color:var(--text-secondary);transition:color .2s ease}.theme-toggle-label:hover .theme-icon{color:var(--text-primary)}.theme-toggle-switch{position:relative;width:46px;height:26px}.theme-toggle-switch input{opacity:0;width:0;height:0}.theme-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--toggle-bg);border-radius:30px;border:1px solid var(--accent-border);box-shadow:0 0 0 3px var(--outer-ring),0 0 0 5px var(--accent-ring),var(--depth-shadow);transition:background .3s ease,border-color .3s ease}.theme-slider:before{content:"";position:absolute;height:18px;width:18px;left:4px;top:3px;background:var(--toggle-knob);border-radius:50%;border:1px solid rgba(211,74,9,.6);box-shadow:0 3px 8px #00000047;transition:transform .3s ease,background .3s ease}.theme-toggle-switch input:checked+.theme-slider{background:#d34a09;border-color:#d34a09f2}.theme-toggle-switch input:checked+.theme-slider:before{transform:translate(20px);background:#fff}@media (max-width: 768px){.theme-toggle-buttons{width:100%}.theme-btn{flex:1;justify-content:center}}.settings-trigger{transition:all .2s ease}.settings-trigger:hover{transform:rotate(45deg)}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.settings-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:500px;max-height:80vh;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-xl);z-index:1000;display:flex;flex-direction:column;animation:slideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.settings-title{display:flex;align-items:center;gap:12px;color:var(--text-primary)}.settings-title h2{font-size:18px;font-weight:600;margin:0}.settings-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.settings-close:hover{background:var(--hover-bg);color:var(--text-primary)}.settings-content{padding:24px;overflow-y:auto;flex:1}.settings-section{margin-bottom:32px}.settings-section:last-child{margin-bottom:0}.section-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.section-description{font-size:13px;color:var(--text-secondary);margin:0 0 16px;line-height:1.5}.theme-options{display:flex;flex-direction:column;gap:12px}.theme-option{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.theme-option:hover{background:var(--hover-bg);border-color:var(--border-hover)}.theme-option.selected{background:var(--selected-bg);border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-shadow)}.theme-option-content{flex:1;min-width:0}.theme-option-name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.theme-option-description{font-size:13px;color:var(--text-secondary)}.theme-option-check{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--primary-color);border-radius:50%;color:#fff;flex-shrink:0}.settings-info{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px}.settings-info p{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.6}@media (max-width: 768px){.settings-panel{width:95%;max-height:90vh}.settings-header{padding:16px 20px}.settings-content{padding:20px}.theme-option{padding:14px}.theme-option-icon{width:44px;height:44px}}:root{--accent-gradient: linear-gradient(135deg, #D34A09 0%, #D8830D 100%);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 16px;--font-family: "Inter", sans-serif}body{font-family:var(--font-family);overflow:hidden}.app{position:relative;width:100vw;height:100vh;height:100svh}.map-fullscreen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.floating-menu-trigger{position:absolute;top:16px;right:16px;left:auto;z-index:10;opacity:0;pointer-events:none}.floating-menu-trigger.visible{opacity:1;pointer-events:auto}.glass-btn{width:40px;height:40px;background:var(--surface-elevated);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);transition:background .15s ease,transform .15s ease}.glass-btn:hover{background:var(--hover-bg)}.glass-btn.active{background:var(--accent-gradient);border-color:transparent}.sidebar-wrapper{position:absolute;inset:0 auto 0 0;width:310px;z-index:20;padding:14px;display:flex;flex-direction:column;gap:10px;pointer-events:none;transition:transform .35s cubic-bezier(.32,.72,0,1)}.sidebar-wrapper.closed{transform:translate(-110%)}.panel-card{background:var(--surface-elevated);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;overflow:hidden;animation:panelIn .35s ease-out}@keyframes panelIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.header-island{overflow:visible;z-index:20}.sidebar-header{padding:12px 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.brand{display:flex;align-items:center;gap:8px}.brand-dot{width:6px;height:6px;background:var(--accent-gradient);border-radius:50%}.brand h1{font-size:13px;font-weight:600;letter-spacing:.4px}.close-btn-mini{background:none;border:none;padding:4px;color:var(--text-secondary);cursor:pointer}.close-btn-mini:hover{color:var(--text-primary)}.search-section{padding:14px}.search-label{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:4px}.dot{width:6px;height:6px;border-radius:50%}.start-dot{border:2px solid var(--text-secondary)}.end-dot{background:var(--accent-primary)}.connector-gap{height:12px;display:flex;align-items:center;justify-content:flex-end;margin-right:6px}.swap-button-floating{position:relative;top:9px;width:24px;height:24px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,transform .15s ease}.swap-button-floating:hover:not(:disabled){background:var(--accent-gradient);color:#fff;transform:rotate(180deg)}.clear-route-link{width:100%;margin-top:12px;padding:10px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;font-size:12px;font-weight:600;text-align:center;color:var(--error);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.clear-route-link:hover{background:#ef444426;border-color:#ef444466}.error-message{font-size:11px;color:var(--error);margin-top:6px;display:flex;align-items:center;gap:6px}.action-island{padding:14px;max-height:calc(100vh - 220px);overflow-y:auto;scroll-padding-bottom:24px;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.action-island::-webkit-scrollbar{width:5px}.action-island::-webkit-scrollbar-track{background:transparent}.action-island::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:10px}.action-island::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.navigation-integrated{margin-bottom:0}.card-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:6px}.divider{height:1px;background:var(--border-color);margin:10px 0}.map-tool-layer{position:absolute;top:20px;right:20px;z-index:150;display:flex;flex-direction:column;gap:12px}.map-controls-group{display:flex;flex-direction:row;align-items:center;gap:8px;justify-content:flex-end}.admin-controls-group{display:flex;flex-direction:column;gap:8px}.admin-access-btn:hover{color:var(--accent-primary)!important}.logout-btn{transition:all .2s ease}.logout-btn:hover{color:#ef4444!important;background:#ef44441a!important}.floor-dropdown-container{position:relative;display:flex;flex-direction:column;align-items:flex-end;z-index:200}.floor-dropdown-trigger{width:auto!important;padding:0 12px;gap:10px}.floor-label{font-size:13px;font-weight:700;min-width:24px;text-align:center}.rotate-180{transform:rotate(180deg)}.floor-options-panel{position:absolute;top:calc(100% + 8px);right:0;width:200px;padding:8px;display:flex;flex-direction:column;gap:4px;animation:dropdownFade .2s cubic-bezier(.16,1,.3,1);z-index:201}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.glass-panel{background:var(--surface-elevated);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.floor-option{display:flex;align-items:center;gap:12px;padding:10px 14px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;text-align:left;transition:all .2s}.floor-option:hover{background:var(--hover-bg);color:var(--text-primary)}.floor-option.selected{background:#d34a0926;color:var(--accent-primary);border-color:#d34a094d}.floor-num{font-weight:800;font-size:12px;width:20px}.floor-name{font-size:12px;font-weight:500}.theme-toggle-wrapper{width:auto!important;padding:4px!important;height:auto!important}.theme-toggle-wrapper .theme-toggle-buttons{background:transparent;border:none;padding:0;gap:4px}.theme-toggle-wrapper .theme-btn{padding:8px 14px;font-size:12px;background:#ffffff0d;border-radius:8px}.theme-toggle-wrapper .theme-btn:hover{background:#ffffff1a}.theme-toggle-wrapper .theme-btn.active{background:var(--accent-gradient);color:#fff}.top-search-bar{position:absolute;top:12px;left:12px;right:12px;z-index:400;pointer-events:auto}.top-search-card{background:var(--surface-elevated);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:12px}.search-compact-group{display:flex;flex-direction:column;gap:8px}.search-row{display:flex;align-items:center;gap:6px}.search-row .search-bar-container{flex:1}.swap-btn-compact{width:36px;height:36px;min-width:36px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.swap-btn-compact:hover:not(:disabled){background:var(--accent-gradient);color:#fff;transform:rotate(180deg)}.swap-btn-compact:disabled{opacity:.3;cursor:not-allowed}.clear-route-btn-mobile{background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:6px 10px;color:var(--error);font-size:12px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:all .2s ease}.clear-route-btn-mobile:hover{background:#ef444440;color:#ef4444}.search-compact-selected{display:flex;flex-direction:column;gap:8px}.search-inline-row{display:flex;align-items:center;gap:6px}.location-pill{flex:1;display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:8px 10px;min-width:0;cursor:pointer;transition:all .2s ease}.location-pill:hover{background:var(--hover-bg);border-color:var(--border-hover)}.pill-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.pill-dot.start{background:#22c55e}.pill-dot.end{background:#ef4444}.pill-text{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swap-btn-inline{width:28px;height:28px;min-width:28px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.swap-btn-inline:hover{background:var(--accent-gradient);color:#fff;transform:rotate(180deg)}@media (max-width: 768px){.sidebar-wrapper{inset:auto 0 0 0;width:100%;padding:0;gap:0;z-index:50;padding-bottom:var(--safe-area-bottom)}.sidebar-wrapper.closed{transform:translateY(calc(100% - 50px - var(--safe-area-bottom)))}.sidebar-wrapper.minimized{transform:translateY(0)}.sidebar-wrapper.minimized .action-island{padding:12px;max-height:auto}.sidebar-wrapper.minimized .sheet-handle{display:none}.panel-card{border-radius:20px 20px 0 0;border-bottom:none;box-shadow:0 -4px 20px #0006}.header-island{display:none}.action-island{border-radius:20px 20px 0 0;max-height:65vh;overflow-y:auto;padding-bottom:calc(16px + var(--safe-area-bottom));scroll-padding-bottom:calc(16px + var(--safe-area-bottom))}.top-search-bar{display:block}.top-search-card{padding:8px}.search-compact-group{gap:6px}.map-tool-layer{top:130px;bottom:auto;right:12px;z-index:350;transition:top .3s ease}.app.route-active .map-tool-layer{top:130px}.app.route-active .map-ui-header{top:130px!important}.sidebar-wrapper:not(.closed)~.map-tool-layer{top:130px}.sidebar-wrapper.minimized~.map-tool-layer{top:130px}.floating-menu-trigger{display:none}.glass-btn{width:44px;height:44px}.sheet-handle{width:40px;height:4px;background:var(--border-hover);border-radius:2px;margin:8px auto 12px;cursor:grab}.sheet-handle:active{cursor:grabbing}}@media (min-width: 769px){.top-search-bar,.sheet-handle{display:none}}.cross-floor-indicator{background:linear-gradient(135deg,#f9731626,#ea580c26);border:1px solid rgba(249,115,22,.3);border-radius:var(--radius-md);padding:10px 12px;margin-bottom:8px}.cross-floor-header{display:flex;justify-content:center;align-items:center;margin-bottom:8px}.cross-floor-info{font-size:13px;color:#fff;font-weight:600;background:#f97316;padding:4px 12px;border-radius:20px}.cross-floor-phases{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:12px}.phase-step{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border-radius:8px;transition:all .2s ease}.phase-step.active{background:#a855f74d}.phase-step.completed{background:#22c55e33}.phase-step.completed .phase-num{background:#22c55e}.phase-num{width:24px;height:24px;border-radius:50%;background:#ffffff26;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text-primary)}.phase-step.active .phase-num{background:var(--accent-gradient)}.phase-text{font-size:10px;color:var(--text-secondary);text-transform:capitalize}.phase-step.active .phase-text{color:var(--text-primary)}.phase-connector{width:20px;height:2px;background:#ffffff26}.transition-message{text-align:center;padding:16px;background:#a855f71a;border-radius:var(--radius-sm);margin-top:8px}.transition-icon{font-size:32px;margin-bottom:8px}.transition-message p{font-size:14px;color:var(--text-primary);margin-bottom:16px}.continue-btn{background:var(--accent-gradient);color:#fff;border:none;padding:12px 24px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.continue-btn:hover{transform:scale(1.02);box-shadow:0 4px 12px #d34a0966}.phase-navigation{display:flex;justify-content:center;gap:12px;margin-top:12px}.phase-btn{padding:8px 16px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text-primary)}.phase-btn:hover{background:#ffffff1a}.phase-btn.next{background:var(--accent-gradient);border:none}.phase-btn.next:hover{box-shadow:0 4px 12px #d34a0966}.transition-selection{margin-top:4px}.selection-title{font-size:12px;color:var(--text-secondary);margin-bottom:8px;text-align:center}.transition-options{display:flex;gap:8px;align-items:center}.transition-or{font-size:12px;color:var(--text-secondary);font-weight:500}.transition-option{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.1);background:#ffffff08;cursor:pointer;transition:all .2s ease}.transition-option:hover{border-color:#ffffff40;background:#ffffff14;transform:translateY(-2px)}.transition-option.lift-option:hover,.transition-option.stairs-option:hover{border-color:#f9731680;background:#f973161a}.option-label{font-size:13px;font-weight:600;color:var(--text-primary)}.option-distance{font-size:11px;color:var(--text-secondary)}.admin-page{width:100%;height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.admin-page:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(211,74,9,.15) 0%,transparent 70%);border-radius:50%;top:-250px;right:-250px;pointer-events:none}.back-to-home{position:absolute;top:2rem;left:2rem;display:flex;align-items:center;gap:.5rem;padding:3rem 5rem;z-index:10}.back-to-home:hover{color:var(--accent-primary)}.admin-login-container{width:100%;max-width:450px;padding:2rem}.admin-login-card{padding:3rem 2.5rem;text-align:center;animation:slideUp .4s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lock-icon{width:80px;height:80px;background:linear-gradient(135deg,#d34a0933,#d34a090d);color:var(--accent-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;border:2px solid rgba(211,74,9,.3)}.login-header h1{font-size:2rem;font-weight:900;margin-bottom:.5rem;color:var(--text-primary);letter-spacing:-.02em}.login-header p{color:var(--text-secondary);font-size:.95rem;margin-bottom:2.5rem}.login-form{display:flex;flex-direction:column;gap:1.25rem}.input-field{position:relative;display:flex;align-items:center}.field-icon{position:absolute;left:1.125rem;color:var(--text-secondary);z-index:1}.input-field input{width:100%;padding:1rem 1.125rem 1rem 3rem;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;transition:all .2s}.input-field input:focus{outline:none}.input-field input::placeholder{color:var(--text-secondary)}.login-error{color:#ef4444;font-size:.875rem;font-weight:600;padding:.75rem;background:#ef44441a;border-radius:var(--radius-sm);border:1px solid rgba(239,68,68,.3)}.login-submit{width:100%;padding:1rem;background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:800;font-size:1rem;cursor:pointer;transition:all .2s;margin-top:.5rem;letter-spacing:.02em}.admin-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--glass-border)}.security-note{color:var(--text-secondary);font-size:.85rem;display:flex;align-items:center;justify-content:center;gap:.5rem}@media (max-width: 640px){.admin-login-container{padding:1rem}.admin-login-card{padding:2rem 1.5rem}.back-to-home{top:1rem;left:1rem}}
