@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--color-primary-50:#eef6f3;--color-primary-100:#dcede7;--color-primary-200:#b7dace;--color-primary-300:#86c0ad;--color-primary-400:#52a68d;--color-primary-500:#3a987e;--color-primary-600:#278b70;--color-primary-700:#20735d;--color-primary-800:#1a5d4b;--color-primary-900:#143f34;--color-secondary-50:#fbf6f1;--color-secondary-100:#f6eadf;--color-secondary-200:#edd5bf;--color-secondary-300:#e3be9e;--color-secondary-500:#d8a77e;--color-secondary-600:#c68e5f;--color-secondary-700:#9a6234;--color-secondary-800:#7a4c27;--color-white:#fff;--color-neutral-50:#f6f6f8;--color-neutral-100:#edeef0;--color-neutral-200:#d5d7dd;--color-neutral-300:#b9bdc7;--color-neutral-400:#a1a7b4;--color-neutral-500:#8a91a1;--color-neutral-600:#6e7481;--color-neutral-700:#535861;--color-neutral-800:#42454d;--color-neutral-900:#32343a;--color-red:#dc2626;--color-red-light:#fef2f2;--color-red-border:#fecaca;--color-red-dark:#b91c1c;--color-green:#059669;--color-green-light:#ecfdf5;--color-green-border:#a7f3d0;--color-green-dark:#047857;--color-blue:#0284c7;--color-blue-light:#f0f9ff;--color-blue-border:#bae6fd;--color-blue-dark:#0369a1;--color-yellow:#f59e0b;--color-yellow-light:#fffbeb;--color-yellow-border:#fde68a;--color-yellow-dark:#b45309;--primary:var(--color-primary-600);--primary-hover:var(--color-primary-700);--primary-active:var(--color-primary-800);--primary-dark:var(--color-primary-700);--primary-light:var(--color-primary-50);--primary-soft:var(--color-primary-100);--primary-border:var(--color-primary-200);--primary-text:var(--color-primary-700);--secondary:var(--color-secondary-500);--secondary-hover:var(--color-secondary-600);--secondary-active:var(--color-secondary-700);--secondary-light:var(--color-secondary-50);--secondary-soft:var(--color-secondary-100);--secondary-border:var(--color-secondary-200);--secondary-text:var(--color-secondary-700);--accent:var(--secondary);--accent-light:var(--secondary-light);--accent-text:var(--secondary-text);--bg:var(--color-neutral-50);--bg-card:var(--color-white);--bg-subtle:var(--color-neutral-50);--bg-muted:var(--color-neutral-100);--bg-hover:var(--color-neutral-50);--overlay:#32343a7a;--text:var(--color-neutral-900);--text-body:var(--color-neutral-800);--text-secondary:var(--color-neutral-600);--text-muted:var(--color-neutral-500);--text-placeholder:var(--color-neutral-400);--text-disabled:var(--color-neutral-300);--text-on-primary:var(--color-white);--border:var(--color-neutral-200);--border-light:var(--color-neutral-100);--border-strong:var(--color-neutral-300);--success:var(--color-green);--success-light:var(--color-green-light);--success-border:var(--color-green-border);--success-text:var(--color-green-dark);--warning:var(--color-yellow);--warning-light:var(--color-yellow-light);--warning-border:var(--color-yellow-border);--warning-text:var(--color-yellow-dark);--error:var(--color-red);--error-light:var(--color-red-light);--error-border:var(--color-red-border);--error-text:var(--color-red-dark);--danger:var(--error);--info:var(--color-blue);--info-light:var(--color-blue-light);--info-border:var(--color-blue-border);--info-text:var(--color-blue-dark);--rating:var(--color-yellow);--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:28px;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-normal:1.5;--tracking-caps:.06em;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--control-h-sm:32px;--control-h:40px;--control-h-lg:48px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--shadow-xs:0 1px 2px #32343a0d;--shadow-sm:0 1px 3px #32343a14, 0 1px 2px #32343a0a;--shadow-md:0 4px 12px #32343a14;--shadow-lg:0 12px 28px #32343a1f;--shadow-xl:0 24px 48px #32343a2e;--focus-ring:0 0 0 3px #278b7033;--focus-ring-error:0 0 0 3px #dc262626;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--sidebar-width:272px;--header-height:72px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--primary)}img{max-width:100%}svg{flex-shrink:0}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:var(--primary-soft);color:var(--text)}::placeholder{color:var(--text-placeholder);opacity:1}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-neutral-200);border-radius:var(--radius-full);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-300);background-clip:padding-box}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%{box-shadow:0 0 #05966980}70%{box-shadow:0 0 0 8px #05966900}to{box-shadow:0 0 #05966900}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin,.spin{animation:.8s linear infinite spin}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-layout{min-height:100vh;display:flex}.main-content{min-width:0;margin-left:var(--sidebar-width);padding-top:var(--header-height);flex:1}.page-content{padding:var(--space-8);max-width:1440px;margin:0 auto}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-title{font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text)}.page-subtitle{color:var(--text-secondary);margin-top:var(--space-1)}.page-header-info{font-size:var(--text-base);color:var(--text-secondary)}.page-header-info strong{color:var(--text);font-weight:var(--font-semibold)}.overline{font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-muted)}.overline--primary{color:var(--primary)}.dealer-sidebar{width:var(--sidebar-width);background:var(--bg-card);border-right:1px solid var(--border-light);z-index:100;-webkit-user-select:none;user-select:none;transition:transform var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.dealer-sidebar-logo{height:var(--header-height);min-height:var(--header-height);padding:0 var(--space-6);align-items:center;display:flex;position:relative}.sidebar-logo-img{object-fit:contain;width:auto;height:40px}.dealer-mobile-close-btn{right:var(--space-4);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:none;position:absolute;top:50%;transform:translateY(-50%)}.dealer-mobile-close-btn:hover{background:var(--bg-muted);color:var(--text)}.dealer-sidebar-search{margin:var(--space-1) var(--space-4) var(--space-3);align-items:center;display:flex;position:relative}.dealer-search-icon{color:var(--text-placeholder);pointer-events:none;position:absolute;left:12px}.dealer-search-input{background:var(--bg-subtle);border-radius:var(--radius-md);width:100%;height:38px;color:var(--text);font-size:var(--text-sm);transition:border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);border:1px solid #0000;padding:0 32px 0 36px}.dealer-search-input:hover{background:var(--bg-muted)}.dealer-search-input:focus{background:var(--bg-card);border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.dealer-search-clear{border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;right:8px}.dealer-search-clear:hover{color:var(--text);background:var(--bg-muted)}.dealer-sidebar-nav{padding:var(--space-2) var(--space-4) var(--space-4);flex:1;overflow-y:auto}.dealer-nav-list{gap:var(--space-5);flex-direction:column;display:flex}.dealer-nav-section{flex-direction:column;gap:2px;display:flex}.nav-section-title{padding:0 var(--space-3) var(--space-2);font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-placeholder);display:block}.dealer-nav-group{flex-direction:column;gap:2px;display:flex}.dealer-nav-item{align-items:center;gap:var(--space-3);width:100%;min-height:40px;padding:8px var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);text-align:left;cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;line-height:1.3;text-decoration:none;display:flex}.dealer-nav-item:hover{background:var(--bg-hover);color:var(--text)}.dealer-nav-icon{color:var(--text-placeholder);transition:color var(--transition-fast);flex-shrink:0}.dealer-nav-item:hover .dealer-nav-icon{color:var(--text-secondary)}.dealer-nav-label{flex:1;min-width:0}.dealer-nav-item--active,.dealer-nav-item--active:hover{background:var(--primary-light);color:var(--primary);font-weight:var(--font-semibold)}.dealer-nav-item--active .dealer-nav-icon,.dealer-nav-item--active:hover .dealer-nav-icon{color:var(--primary)}.dealer-nav-item--current{color:var(--text);font-weight:var(--font-semibold)}.dealer-nav-item--current .dealer-nav-icon{color:var(--primary)}.dealer-chevron{color:var(--text-placeholder);transition:transform var(--transition-base);flex-shrink:0}.dealer-chevron--open{transform:rotate(180deg)}.dealer-submenu{padding:2px 0 var(--space-1);flex-direction:column;gap:2px;animation:.15s fadeIn;display:flex}.dealer-submenu-item{align-items:center;gap:var(--space-3);min-height:36px;padding:6px var(--space-3) 6px 19px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);transition:background-color var(--transition-fast), color var(--transition-fast);text-decoration:none;display:flex}.dealer-submenu-item:hover{background:var(--bg-hover);color:var(--text)}.dealer-submenu-dot{border-radius:var(--radius-full);background:var(--color-neutral-300);width:5px;height:5px;transition:background-color var(--transition-fast);flex-shrink:0;margin-right:6px}.dealer-submenu-item--active,.dealer-submenu-item--active:hover{background:var(--primary-light);color:var(--primary);font-weight:var(--font-semibold)}.dealer-submenu-item--active .dealer-submenu-dot{background:var(--primary)}.dealer-sidebar-footer{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border-light)}.dealer-logout-btn{align-items:center;gap:var(--space-3);width:100%;min-height:40px;padding:8px var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;display:flex}.dealer-logout-btn:hover{background:var(--error-light);color:var(--error)}.dealer-logout-btn:hover .dealer-nav-icon{color:var(--error)}.dealer-sidebar-overlay{background:var(--overlay);z-index:99;animation:.2s fadeIn;display:none;position:fixed;inset:0}.dealer-mobile-hamburger-btn{width:40px;height:40px;margin-right:var(--space-3);border-radius:var(--radius-md);color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:none}.dealer-mobile-hamburger-btn:hover{background:var(--bg-muted)}.header{top:0;right:0;left:var(--sidebar-width);height:var(--header-height);justify-content:space-between;align-items:center;gap:var(--space-4);padding:0 var(--space-8);background:var(--bg-card);border-bottom:1px solid var(--border-light);z-index:90;display:flex;position:fixed}.header-left{align-items:center;min-width:0;display:flex}.header-title-section{min-width:0}.header-page-title{font-size:var(--text-xl);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.header-page-subtitle{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.header-right{align-items:center;gap:var(--space-4);display:flex}.header-search{position:relative}.header-search-icon{color:var(--text-placeholder);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.header-search-input{width:260px;height:var(--control-h);padding:0 var(--space-4) 0 40px;border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);font-size:var(--text-base);transition:border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);border:1px solid #0000}.header-search-input:hover{background:var(--bg-muted)}.header-search-input:focus{background:var(--bg-card);border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.header-actions{align-items:center;gap:var(--space-2);display:flex}.header-action-btn{width:var(--control-h);height:var(--control-h);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}.header-action-btn:hover{background:var(--bg-muted);color:var(--text)}.notification-badge{border-radius:var(--radius-full);background:var(--error);border:2px solid var(--bg-card);width:8px;height:8px;position:absolute;top:8px;right:9px}.header-user{border:1px solid var(--border-light);border-radius:var(--radius-full);cursor:pointer;transition:background var(--transition-fast);align-items:center;gap:10px;padding:4px 12px 4px 4px;display:flex}.header-user:hover{background:var(--bg-hover)}.header-avatar{border-radius:var(--radius-full);background:var(--primary);width:34px;height:34px;color:var(--text-on-primary);justify-content:center;align-items:center;display:flex}.header-user-info{flex-direction:column;line-height:1.25;display:flex}.header-user-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text)}.header-user-role{color:var(--text-muted);font-size:11px}.header-user-chevron{color:var(--text-placeholder)}.card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.card-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-light);display:flex}.card-title{font-size:var(--text-md);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text)}.card-subtitle{font-size:var(--text-sm);color:var(--text-muted);margin-top:2px}.card-body{padding:var(--space-6)}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:var(--control-h);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);border:1px solid #0000;line-height:1;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.btn--primary{background:var(--primary);color:var(--text-on-primary)}.btn--primary:hover:not(:disabled){background:var(--primary-hover)}.btn--primary:active:not(:disabled){background:var(--primary-active)}.btn--outline{background:var(--bg-card);border-color:var(--primary);color:var(--primary)}.btn--outline:hover:not(:disabled){border-color:var(--primary-hover);color:var(--primary-hover);background:var(--primary-light)}.btn--outline:active:not(:disabled){border-color:var(--primary-active);color:var(--primary-active)}.btn--accent{background:var(--secondary);color:var(--text-on-primary)}.btn--accent:hover:not(:disabled){background:var(--secondary-hover)}.btn--accent:active:not(:disabled){background:var(--secondary-active)}.btn--secondary{background:var(--bg-muted);color:var(--text-body)}.btn--secondary:hover:not(:disabled){background:var(--color-neutral-200);color:var(--text)}.btn--secondary:active:not(:disabled){background:var(--color-neutral-300)}.btn--ghost{color:var(--text-body);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--bg-muted);color:var(--text)}.btn--ghost:active:not(:disabled){background:var(--color-neutral-200)}.btn--danger{background:var(--error);color:var(--text-on-primary)}.btn--danger:hover:not(:disabled){background:var(--error-text)}.btn--danger-ghost{color:var(--text-body);background:0 0}.btn--danger-ghost:hover:not(:disabled){background:var(--error-light)!important;color:var(--error)!important}.btn--warning{background:var(--warning);color:var(--text-on-primary)}.btn--warning:hover:not(:disabled){background:var(--warning-text)}.btn--sm{height:var(--control-h-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);gap:6px}.btn--lg{height:var(--control-h-lg);padding:0 var(--space-6);font-size:var(--text-md);font-weight:var(--font-semibold);border-radius:14px}.btn--block{width:100%}.btn--link{height:auto;color:var(--primary);font-weight:var(--font-semibold);background:0 0;border:none;padding:0}.btn--link:hover:not(:disabled){color:var(--primary-hover);text-underline-offset:3px;text-decoration:underline}.btn--link.btn--danger-text{color:var(--error)}.btn--link.btn--danger-text:hover:not(:disabled){color:var(--error-text)}.btn--icon{width:var(--control-h);padding:0}.btn--icon.btn--sm{width:var(--control-h-sm)}.btn--icon.btn--lg{width:var(--control-h-lg)}.badge{border-radius:var(--radius-full);height:24px;font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:0 10px;line-height:1;display:inline-flex}.badge--primary{background:var(--primary-light);color:var(--primary-text)}.badge--accent{background:var(--secondary-light);color:var(--secondary-text)}.badge--secondary,.badge--neutral{background:var(--bg-muted);color:var(--text-secondary)}.badge--success{background:var(--success-light);color:var(--success-text)}.badge--warning{background:var(--warning-light);color:var(--warning-text)}.badge--error,.badge--danger{background:var(--error-light);color:var(--error-text)}.badge--info{background:var(--info-light);color:var(--info-text)}.badge--outline-primary{background:var(--bg-card);border-color:var(--primary);color:var(--primary)}.badge--outline-accent{background:var(--bg-card);border-color:var(--secondary);color:var(--secondary-text)}.badge--solid-primary{background:var(--primary);color:var(--text-on-primary)}.badge--solid-accent{background:var(--secondary);color:var(--text-on-primary)}.icon-tile{border-radius:var(--radius-full);background:var(--primary-light);width:44px;height:44px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-tile--sm{width:36px;height:36px}.icon-tile--lg{width:56px;height:56px}.icon-tile--square{border-radius:12px}.icon-tile--primary{background:var(--primary-light);color:var(--primary)}.icon-tile--accent{background:var(--secondary-light);color:var(--secondary-text)}.icon-tile--success{background:var(--success-light);color:var(--success)}.icon-tile--info{background:var(--info-light);color:var(--info)}.icon-tile--warning{background:var(--warning-light);color:var(--warning-text)}.icon-tile--error{background:var(--error-light);color:var(--error)}.icon-tile--neutral{background:var(--bg-muted);color:var(--text-secondary)}.icon-tile--solid{background:var(--primary);color:var(--text-on-primary)}.badge-dot{border-radius:var(--radius-full);background:currentColor;flex-shrink:0;width:6px;height:6px}.form-group{margin-bottom:var(--space-5)}.form-label{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-body);margin-bottom:6px;display:block}.form-required{color:var(--error)}.form-optional{color:var(--text-placeholder);font-size:var(--text-sm);font-weight:var(--font-regular)}.form-input,.form-select,.form-textarea,.login-input{width:100%;min-height:var(--control-h);padding:9px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text);font-size:var(--text-base);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);line-height:1.4}.form-input:hover:not(:disabled):not(:focus),.form-select:hover:not(:disabled):not(:focus),.form-textarea:hover:not(:disabled):not(:focus){border-color:var(--border-strong)}.form-input:focus,.form-select:focus,.form-textarea:focus,.login-input:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.form-input:disabled,.form-select:disabled,.form-textarea:disabled,.form-input[readonly]{background:var(--bg-subtle);border-color:var(--border-light);color:var(--text-disabled);cursor:not-allowed}.form-input[readonly]{color:var(--text-secondary);cursor:default}.form-input--error,.form-input[aria-invalid=true],.form-select[aria-invalid=true],.form-textarea[aria-invalid=true]{border-color:var(--error)!important}.form-input--error:focus,.form-input[aria-invalid=true]:focus{box-shadow:var(--focus-ring-error)}.form-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238A91A1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-select--sm,.form-input--sm{min-height:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--radius-sm);font-size:var(--text-sm);padding-top:0;padding-bottom:0}.form-select--sm{background-position:right 10px center;width:auto;padding-right:32px}.form-select--auto,.form-input--auto{width:auto}.code-chip{border-radius:var(--radius-xs);background:var(--bg-muted);color:var(--text-body);font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap;align-items:center;padding:2px 8px;line-height:1.5;display:inline-flex}.form-textarea{resize:vertical;min-height:100px}input[type=color].form-input{cursor:pointer;padding:4px}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.form-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.form-hint,.form-error{font-size:var(--text-xs);color:var(--text-placeholder);align-items:center;gap:6px;margin-top:6px;display:flex}.form-error{color:var(--error)}.input-with-icon{position:relative}.input-with-icon>svg{color:var(--text-placeholder);pointer-events:none;transition:color var(--transition-fast);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.input-with-icon>.form-input,.input-with-icon>.login-input{padding-left:40px}.input-with-icon:focus-within>svg{color:var(--primary)}.search-input-wrapper{position:relative}.search-input-icon,.search-input-wrapper .search-icon{color:var(--text-placeholder);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input{width:100%;height:var(--control-h);padding:0 var(--space-3) 0 40px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text);font-size:var(--text-base);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.search-input:hover:not(:focus){border-color:var(--border-strong)}.search-input:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.category-filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.filter-chip{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);height:36px;color:var(--text-body);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);align-items:center;gap:6px;padding:0 14px;display:inline-flex}.filter-chip svg{color:var(--primary)}.filter-chip:hover{border-color:var(--primary-border);background:var(--primary-light)}.filter-chip--active,.filter-chip--active:hover{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary)}.filter-chip--active svg{color:var(--text-on-primary)}.users-filter-tabs,.chart-toggle,.segmented{background:var(--bg-muted);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.filter-tab,.chart-toggle-btn,.segmented-btn{justify-content:center;align-items:center;gap:var(--space-2);height:34px;padding:0 var(--space-4);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);background:0 0;border:none;display:inline-flex}.filter-tab:hover,.chart-toggle-btn:hover,.segmented-btn:hover{color:var(--text)}.filter-tab--active,.chart-toggle-btn--active,.segmented-btn--active{background:var(--bg-card);color:var(--primary);font-weight:var(--font-semibold);box-shadow:var(--shadow-xs)}.filter-tab--active:hover,.chart-toggle-btn--active:hover,.segmented-btn--active:hover{color:var(--primary)}.filter-tab-count{border-radius:var(--radius-full);background:var(--color-neutral-200);min-width:22px;color:var(--text-secondary);font-size:11px;font-weight:var(--font-semibold);text-align:center;padding:2px 7px;line-height:1.4}.filter-tab--active .filter-tab-count{background:var(--primary-light);color:var(--primary)}.data-table-wrapper{width:100%}.data-table-toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-light);flex-wrap:wrap;display:flex}.data-table-toolbar .search-input-wrapper{flex:1;min-width:240px;max-width:360px}.data-table-info{align-items:center;gap:var(--space-3);display:flex}.data-table-count{font-size:var(--text-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.data-table-container{overflow-x:auto}.data-table{border-collapse:separate;border-spacing:0;width:100%}.data-table th{padding:12px var(--space-4);border-bottom:1px solid var(--border-light);background:var(--bg-subtle);color:var(--text-muted);font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);text-align:left;white-space:nowrap}.data-table td{padding:14px var(--space-4);border-bottom:1px solid var(--border-light);color:var(--text-body);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background-color var(--transition-fast)}.data-table tbody tr:hover td{background:var(--bg-hover)}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable:hover{color:var(--primary)}.sort-indicator{color:var(--primary);font-weight:var(--font-bold)}.data-table-pagination{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-light);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:flex}.pagination-pages{gap:4px;display:flex}.pagination-pages .btn{min-width:var(--control-h-sm);font-variant-numeric:tabular-nums}.data-table-page-size{margin-left:var(--space-3)}.table-cell-main{flex-direction:column;gap:2px;min-width:0;display:flex}.table-cell-title{font-weight:var(--font-semibold);color:var(--text)}.table-cell-subtitle{font-size:var(--text-sm);color:var(--text-muted)}.table-stat{color:var(--text-secondary);font-size:var(--text-base);align-items:center;gap:6px;display:inline-flex}.table-rating{font-weight:var(--font-semibold);color:var(--text);align-items:center;gap:4px;display:inline-flex}.rating-star{color:var(--rating);flex-shrink:0}.table-image-wrapper{border-radius:var(--radius-md);background:var(--bg-muted);flex-shrink:0;width:48px;height:48px;overflow:hidden}.table-image-wrapper--route{width:64px}.table-image{object-fit:cover;width:100%;height:100%}.table-image--route{border-radius:var(--radius-md)}.table-actions{gap:4px;display:flex}.table-date{white-space:nowrap;color:var(--text-secondary);font-variant-numeric:tabular-nums}.table-user{align-items:center;gap:var(--space-3);display:flex}.table-user-avatar{border-radius:var(--radius-full);background:var(--primary-light);width:40px;height:40px;color:var(--primary);font-weight:var(--font-semibold);font-size:var(--text-base);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.table-user-avatar--admin{background:var(--secondary-light);color:var(--secondary-text)}.table-auth-provider{font-size:var(--text-base);color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.modal-overlay{padding:var(--space-4);background:var(--overlay);z-index:1000;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:calc(100vh - 32px);box-shadow:var(--shadow-xl);animation:scaleIn var(--transition-base);flex-direction:column;display:flex}.modal--sm{max-width:440px}.modal--md{max-width:600px}.modal--lg{max-width:820px}.modal--xl{max-width:1040px}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-light);display:flex}.modal-title,.modal-header h2{font-size:var(--text-lg);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text)}.modal-body{padding:var(--space-6);overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-light);flex-wrap:wrap;display:flex}.alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text-body);font-size:var(--text-base);line-height:1.45;display:flex}.alert svg{margin-top:1px}.alert>span,.alert-content{flex:1;min-width:0}.alert-close{border-radius:var(--radius-sm);color:currentColor;opacity:.7;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin:-4px -6px -4px auto;display:inline-flex}.alert-close:hover{opacity:1;background:#32343a0f}.alert-close svg{margin-top:0}.alert--success{background:var(--success-light);border-color:var(--success-border);color:var(--success-text)}.alert--info{background:var(--info-light);border-color:var(--info-border);color:var(--info-text)}.alert--warning{background:var(--warning-light);border-color:var(--warning-border);color:var(--warning-text)}.alert--error,.alert--danger{background:var(--error-light);border-color:var(--error-border);color:var(--error-text)}.empty-state{justify-content:center;align-items:center;gap:var(--space-3);padding:56px var(--space-6);text-align:center;flex-direction:column;display:flex}.empty-state-icon{color:var(--color-neutral-300)}.empty-state-text{color:var(--text-muted);font-size:var(--text-base)}.status-dot{border-radius:var(--radius-full);background:var(--success);width:8px;height:8px;animation:2s infinite pulse;display:inline-block}.stats-grid{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stats-card{padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);position:relative}.stats-card--primary{background:var(--primary-light);border-color:var(--primary-border)}.stats-card--accent{background:var(--secondary-light);border-color:var(--secondary-border)}.stats-card--info{background:var(--info-light);border-color:var(--info-border)}.stats-card--warning{background:var(--warning-light);border-color:var(--warning-border)}.stats-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.stats-icon{background:var(--bg-card);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stats-icon--primary{color:var(--primary)}.stats-icon--accent{color:var(--secondary-text)}.stats-icon--info{color:var(--info)}.stats-icon--warning{color:var(--warning-text)}.stats-card--primary .stats-value{color:var(--primary)}.stats-card--accent .stats-value{color:var(--secondary-text)}.stats-card--info .stats-value{color:var(--info-text)}.stats-card--warning .stats-value{color:var(--warning-text)}.stats-change{border-radius:var(--radius-full);background:var(--bg-card);height:24px;font-size:var(--text-xs);font-weight:var(--font-semibold);align-items:center;gap:4px;padding:0 8px;display:inline-flex}.stats-change--positive,.stats-change.positive{color:var(--success-text)}.stats-change--negative,.stats-change.negative{color:var(--error-text)}.stats-card-body{flex-direction:column;gap:4px;display:flex}.stats-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}.stats-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-body)}.stat-tiles{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat-tile{align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);display:flex}.stat-tile-body{flex-direction:column;gap:2px;min-width:0;display:flex}.stat-tile-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-muted)}.stat-tile-value{font-size:22px;font-weight:var(--font-bold);color:var(--text);font-variant-numeric:tabular-nums;line-height:1.2}.stat-tile-value--error{color:var(--error)}.stat-tile-value--sm{font-size:var(--text-lg)}.stat-tile-tags{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.dashboard-grid{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}.dashboard-chart,.dashboard-activity{animation:.4s fadeIn}.chart-container{padding:var(--space-6)}.chart-tooltip{border-radius:var(--radius-md);background:var(--color-neutral-900);box-shadow:var(--shadow-lg);padding:10px 14px}.chart-tooltip-label{font-size:var(--text-xs);color:var(--color-neutral-300);margin-bottom:4px}.chart-tooltip-value{font-size:var(--text-sm);font-weight:var(--font-semibold)}.activity-list{padding:var(--space-2) var(--space-6) var(--space-4)}.activity-item{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-light);display:flex}.activity-item:last-child{border-bottom:none}.activity-icon{border-radius:var(--radius-full);background:var(--bg-muted);width:36px;height:36px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-icon--place{background:var(--primary-light);color:var(--primary)}.activity-icon--route{background:var(--secondary-light);color:var(--secondary-text)}.activity-icon--user{background:var(--info-light);color:var(--info)}.activity-icon--audio{background:var(--warning-light);color:var(--warning-text)}.activity-content{flex:1;min-width:0}.activity-action{font-size:var(--text-sm);color:var(--text-secondary)}.activity-target{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.activity-meta{font-size:var(--text-xs);color:var(--text-muted);align-items:center;gap:4px;margin-top:2px;display:flex}.recent-places-grid{gap:var(--space-5);padding:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.place-card{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-card);transition:box-shadow var(--transition-base), transform var(--transition-base);overflow:hidden}.place-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.place-card-image{background:var(--bg-muted);height:140px;position:relative;overflow:hidden}.place-card-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.place-card:hover .place-card-image img{transform:scale(1.04)}.place-card-rating{border-radius:var(--radius-full);background:var(--bg-card);color:var(--text);font-size:var(--text-xs);font-weight:var(--font-semibold);box-shadow:var(--shadow-sm);align-items:center;gap:4px;padding:4px 8px;display:flex;position:absolute;bottom:8px;left:8px}.place-card-rating span{color:var(--rating)}.place-card-body{padding:var(--space-3) 14px 14px}.place-card-title{font-size:15px;font-weight:var(--font-semibold);color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:6px 0;overflow:hidden}.place-card-meta{font-size:var(--text-xs);color:var(--text-muted);gap:14px;display:flex}.place-card-meta span{align-items:center;gap:4px;display:inline-flex}.place-detail-image{max-height:250px;margin-bottom:var(--space-5);border-radius:var(--radius-lg);position:relative;overflow:hidden}.place-detail-image img{object-fit:cover;width:100%;height:250px}.place-detail-rating{border-radius:var(--radius-full);background:var(--bg-card);font-weight:var(--font-semibold);box-shadow:var(--shadow-sm);align-items:center;gap:6px;padding:6px 12px;display:flex;position:absolute;bottom:12px;left:12px}.place-detail-reviews{font-weight:var(--font-regular);color:var(--text-muted)}.place-detail-row{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.place-detail-description{margin-bottom:var(--space-5);color:var(--text-secondary);line-height:1.7}.place-detail-meta-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.place-detail-meta-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--bg-subtle);font-size:var(--text-base);color:var(--text-secondary);padding:10px 14px;display:flex}.place-detail-meta-item svg{color:var(--primary)}.form-image-preview{border-radius:var(--radius-md);max-height:160px;margin-top:10px;overflow:hidden}.form-image-preview img{object-fit:cover;width:100%;height:160px}.image-upload{justify-content:center;align-items:center;gap:var(--space-2);border:1.5px dashed var(--border);border-radius:var(--radius-lg);background:var(--bg-subtle);color:var(--text-muted);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;padding:40px;display:flex}.image-upload:hover{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.location-map-wrapper{border-radius:var(--radius-lg)}.route-detail-image{height:200px;margin-bottom:var(--space-5);border-radius:var(--radius-lg);position:relative;overflow:hidden}.route-detail-image img{object-fit:cover;width:100%;height:100%}.route-detail-overlay{padding:var(--space-5);color:var(--color-white);background:linear-gradient(#32343a00,#32343ad9);position:absolute;inset:auto 0 0}.route-detail-overlay h3{font-size:var(--text-xl);font-weight:var(--font-bold)}.route-detail-overlay p{font-size:var(--text-base);opacity:.85}.route-detail-description{margin-bottom:var(--space-6);color:var(--text-secondary);line-height:1.7}.route-detail-stats{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.route-detail-stat{padding:var(--space-4);border-radius:var(--radius-md);background:var(--bg-subtle);text-align:center}.route-detail-stat-label{font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-muted)}.route-detail-stat-value{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--primary);margin-top:4px;display:block}.route-detail-places h4{margin-bottom:var(--space-4);font-weight:var(--font-semibold)}.route-detail-place{padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:border-color var(--transition-fast), background var(--transition-fast);align-items:center;gap:14px;margin-bottom:10px;display:flex}.route-detail-place:hover{border-color:var(--primary-border);background:var(--primary-light)}.route-detail-place-num,.route-place-number{border-radius:var(--radius-full);background:var(--primary);width:28px;height:28px;color:var(--text-on-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.route-place-number{width:24px;height:24px;font-size:var(--text-xs)}.route-detail-place-img{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:56px;height:42px}.route-detail-place-info,.route-place-info{flex:1;min-width:0}.route-detail-place-name,.route-place-name{font-weight:var(--font-semibold);color:var(--text);margin-top:4px;display:block}.route-place-name{margin-top:0}.route-detail-place-meta,.route-place-meta{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);margin-top:4px;display:flex}.route-places-editor{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.route-places-list{border-bottom:1px solid var(--border-light)}.route-place-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);background:var(--bg-card);transition:background var(--transition-fast);display:flex}.route-place-item:hover{background:var(--bg-hover)}.route-place-item:last-child{border-bottom:none}.route-place-order{align-items:center;gap:6px;display:flex}.route-place-grip{color:var(--text-placeholder);cursor:grab}.route-place-actions{gap:2px;display:flex}.route-available-places{padding:var(--space-3) var(--space-4) var(--space-4);background:var(--bg-subtle)}.route-available-list{margin-top:var(--space-2);flex-direction:column;gap:6px;display:flex}.route-available-item{align-items:center;gap:var(--space-2);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text);font-size:var(--text-base);text-align:left;cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);padding:10px 14px;display:flex}.route-available-item:hover{border-color:var(--primary-border);background:var(--primary-light)}.route-available-item svg{color:var(--primary)}.categories-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.category-card{padding:var(--space-6);transition:box-shadow var(--transition-base), border-color var(--transition-base)}.category-card:hover{border-color:var(--primary-border);box-shadow:var(--shadow-md)}.category-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.category-card-icon{border-radius:var(--radius-full);background:var(--primary-light);justify-content:center;align-items:center;width:56px;height:56px;display:flex}.category-card-actions{opacity:0;transition:opacity var(--transition-fast);gap:4px;display:flex}.category-card:hover .category-card-actions,.category-card:focus-within .category-card-actions{opacity:1}.category-card-body{min-width:0}.category-card-name{font-size:var(--text-md);font-weight:var(--font-semibold);color:var(--text);margin-bottom:2px}.category-card-name-en{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:14px}.category-card-footer{justify-content:space-between;align-items:center;display:flex}.category-card-color{border-radius:var(--radius-full);border:2px solid var(--bg-card);width:16px;height:16px;box-shadow:0 0 0 1px var(--border)}.category-card--add{border:1.5px dashed var(--border);min-height:180px;box-shadow:none;cursor:pointer;background:0 0;justify-content:center;align-items:center;display:flex}.category-card--add:hover{border-color:var(--primary);background:var(--primary-light)}.category-card-add-content{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-base);font-weight:var(--font-medium);flex-direction:column;display:flex}.category-card--add:hover .category-card-add-content{color:var(--primary)}.icon-selector{gap:var(--space-2);flex-wrap:wrap;display:flex}.icon-selector-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);width:48px;height:48px;color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);justify-content:center;align-items:center;display:flex}.icon-selector-item:hover{border-color:var(--primary);color:var(--primary)}.icon-selector-item--active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);box-shadow:var(--focus-ring)}.svg-selector-grid{padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-subtle);grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;display:grid}.svg-selector-item{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;padding:10px 6px;display:flex}.svg-selector-item:hover{border-color:var(--primary-border);background:var(--primary-light)}.svg-selector-item--active{border-color:var(--primary);background:var(--primary-light);box-shadow:var(--focus-ring)}.svg-selector-item img{object-fit:contain;width:24px;height:24px;margin-bottom:6px}.svg-selector-label{max-width:100%;font-size:11px;font-weight:var(--font-medium);color:var(--text-secondary);text-align:center;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;line-height:1.2}.svg-selector-item--active .svg-selector-label{color:var(--primary-text)}.color-selector{flex-wrap:wrap;gap:10px;display:flex}.color-selector-item{border:2px solid var(--bg-card);border-radius:var(--radius-full);width:32px;height:32px;box-shadow:0 0 0 1px var(--border-light);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast)}.color-selector-item:hover{transform:scale(1.1)}.color-selector-item--active{box-shadow:0 0 0 2px var(--text);transform:scale(1.1)}.flag-img{object-fit:cover;background:var(--bg-muted);width:24px;height:18px;box-shadow:0 0 0 1px var(--border-light);border-radius:3px;flex-shrink:0;display:inline-block}.flag-img--xs{border-radius:2px;width:16px;height:12px}.flag-img--md{border-radius:4px;width:32px;height:24px}.flag-img--lg{border-radius:var(--radius-xs);width:40px;height:30px}.flag-img--empty{color:var(--text-placeholder);justify-content:center;align-items:center;display:inline-flex}.country-cell{align-items:center;gap:var(--space-3);display:flex}.country-cell--sm{gap:var(--space-2)}.flag-field{min-width:0;position:relative}.flag-field>.flag-img{pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.flag-field>.form-select,.flag-field>.form-input{padding-left:46px}.flag-field>.form-select--sm{padding-left:42px}.flag-field:has(>:disabled)>.flag-img{opacity:.5}.flag-picker{gap:var(--space-3);flex-direction:column;display:flex}.flag-picker-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.flag-picker-search{flex:240px}.flag-picker-selected{align-items:center;gap:var(--space-2);max-width:100%;height:var(--control-h);border:1px solid var(--primary-border);border-radius:var(--radius-md);background:var(--primary-light);color:var(--primary-text);font-size:var(--text-sm);font-weight:var(--font-medium);padding:0 4px 0 12px;display:inline-flex}.flag-picker-selected-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.flag-picker-placeholder{font-size:var(--text-sm);color:var(--text-placeholder)}.flag-picker-grid{align-content:start;gap:var(--space-2);max-height:288px;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-subtle);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid;position:relative;overflow-y:auto}.flag-picker-item{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-card);min-width:0;color:var(--text-body);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);align-items:center;gap:10px;padding:8px 10px;display:flex}.flag-picker-item:hover{border-color:var(--primary-border);background:var(--primary-light)}.flag-picker-item--active{border-color:var(--primary);background:var(--primary-light);color:var(--primary-text);box-shadow:var(--focus-ring)}.flag-picker-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.flag-picker-code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.flag-picker-item--active .flag-picker-code{color:var(--primary-text)}.flag-picker-empty{padding:var(--space-6) 0;font-size:var(--text-sm);color:var(--text-muted);text-align:center;grid-column:1/-1}.directory-grid{gap:var(--space-5);margin-top:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.directory-card{padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-base), border-color var(--transition-base);flex-direction:column;justify-content:space-between;display:flex}.directory-card:hover{border-color:var(--primary-border);box-shadow:var(--shadow-md)}.directory-card-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:flex-start;display:flex}.country-flag-box{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-subtle);justify-content:center;align-items:center;width:48px;height:48px;font-size:26px;display:flex}.achievement-icon-box{border-radius:var(--radius-full);background:var(--primary-light);width:48px;height:48px;color:var(--primary);justify-content:center;align-items:center;display:flex}.condition-builder-card{margin-bottom:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-subtle);padding:14px}.condition-builder-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.condition-badge{font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--primary)}.condition-preview-text{margin-top:var(--space-2);border:1px solid var(--primary-border);border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary-text);font-family:var(--font-mono);font-size:var(--text-xs);padding:6px 10px}.simulator-box{padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-subtle)}.simulator-result-pass,.simulator-result-fail{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);border:1px solid;padding:14px;display:flex}.simulator-result-pass{background:var(--success-light);border-color:var(--success-border);color:var(--success-text)}.simulator-result-fail{background:var(--error-light);border-color:var(--error-border);color:var(--error-text)}.audio-guide-detail-header{gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--primary-light);display:flex}.audio-guide-detail-icon{border-radius:var(--radius-full);background:var(--primary);width:64px;height:64px;color:var(--text-on-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.audio-guide-detail-place{font-size:var(--text-base);color:var(--text-secondary);margin-top:4px}.audio-guide-detail-meta{gap:var(--space-4);margin-top:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.audio-guide-detail-meta span{align-items:center;gap:4px;display:inline-flex}.audio-guide-tracks h4{margin-bottom:var(--space-3);font-weight:var(--font-semibold)}.audio-track{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);display:flex}.audio-track:hover,.audio-track--expanded{border-color:var(--primary-border);background:var(--primary-light)}.audio-track-play{border-radius:var(--radius-full);background:var(--primary);width:36px;height:36px;color:var(--text-on-primary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:flex}.audio-track-info{flex:1;min-width:0}.audio-track-title{font-weight:var(--font-semibold);color:var(--text);display:block}.audio-track-duration,.audio-track-number{font-size:var(--text-xs);color:var(--text-muted)}.audio-track-number{font-weight:var(--font-semibold)}.audio-track-edit-number{border-radius:var(--radius-full);background:var(--primary-light);width:24px;height:24px;color:var(--primary);font-size:var(--text-xs);font-weight:var(--font-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.login-page{min-height:100vh;padding:var(--space-6) var(--space-4);background:var(--bg-card);flex-direction:column;justify-content:center;align-items:center;display:flex}.login-card{width:100%;max-width:400px;animation:.3s slideInUp}.login-logo{margin-bottom:var(--space-8);justify-content:center;display:flex}.login-logo-img{object-fit:contain;width:auto;height:96px}.login-heading{font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--text);text-align:center}.login-subheading{margin-top:var(--space-2);margin-bottom:var(--space-8);font-size:var(--text-md);color:var(--text-secondary);text-align:center}.login-heading-accent{color:var(--primary)}.login-form{gap:var(--space-4);flex-direction:column;display:flex}.login-field{flex-direction:column;gap:6px;display:flex}.login-label{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-body)}.login-input{min-height:var(--control-h-lg);background:var(--bg-subtle);border-color:#0000;border-radius:12px}.login-input:focus{background:var(--bg-card)}.login-error{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);border:1px solid var(--error-border);border-radius:var(--radius-md);background:var(--error-light);color:var(--error-text);font-size:var(--text-sm);font-weight:var(--font-medium);padding:10px 14px;display:flex}.login-submit{width:100%;height:var(--control-h-lg);margin-top:var(--space-2);background:var(--primary);color:var(--text-on-primary);font-size:var(--text-md);font-weight:var(--font-semibold);cursor:pointer;transition:background var(--transition-fast), box-shadow var(--transition-fast);border:none;border-radius:14px;justify-content:center;align-items:center;display:flex}.login-submit:hover:not(:disabled){background:var(--primary-hover)}.login-submit:active:not(:disabled){background:var(--primary-active)}.login-submit:focus-visible{box-shadow:var(--focus-ring);outline:none}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-footnote{margin-top:var(--space-6);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-placeholder);text-align:center}.login-spinner{border:2px solid #ffffff59;border-top-color:var(--color-white);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}.app-loader{justify-content:center;align-items:center;gap:var(--space-4);background:var(--bg);flex-direction:column;height:100vh;display:flex}.app-loader .login-spinner{border-width:3px;border-color:var(--primary-soft);border-top-color:var(--primary);width:36px;height:36px}.app-loader-text{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-secondary)}.ds-page{gap:var(--space-5);flex-direction:column;display:flex}.ds-section{min-width:0}.ds-two-col{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ds-stack{gap:var(--space-4);flex-direction:column;display:flex}.ds-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ds-code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-body)}.ds-code--muted{color:var(--text-muted)}.ds-swatch{column-gap:var(--space-3);grid-template-rows:auto auto;grid-template-columns:40px minmax(0,1fr);align-items:center;display:grid}.ds-swatch-chip{border-radius:var(--radius-md);grid-row:span 3;width:40px;height:40px;box-shadow:inset 0 0 0 1px #32343a14}.ds-swatch-label{font-weight:var(--font-semibold);color:var(--text)}.ds-swatch--large{grid-template-columns:56px minmax(0,1fr)}.ds-swatch--large .ds-swatch-chip{border-radius:12px;width:56px;height:56px}.ds-brand-grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ds-brand{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.ds-scale{grid-template-columns:repeat(auto-fit,minmax(36px,1fr));gap:6px;display:grid}.ds-scale-step{flex-direction:column;align-items:center;gap:4px;display:flex}.ds-scale-chip{border-radius:var(--radius-sm);width:100%;height:36px;box-shadow:inset 0 0 0 1px #32343a0f}.ds-scale-label{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:11px}.ds-status-grid{gap:var(--space-4);flex-direction:column;display:flex}.ds-status-row{align-items:center;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,.8fr);display:grid}.ds-status-role{font-size:var(--text-sm);color:var(--text-secondary)}.ds-neutral-grid{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ds-token-grid{gap:var(--space-3) var(--space-5);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.ds-token{align-items:center;gap:var(--space-3);min-width:0;display:flex}.ds-token-chip{border-radius:var(--radius-sm);flex-shrink:0;width:32px;height:32px;box-shadow:inset 0 0 0 1px #32343a1a}.ds-type-list,.ds-button-table{flex-direction:column;display:flex}.ds-type-row,.ds-button-row{align-items:center;gap:var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--border-light);grid-template-columns:200px minmax(0,1fr);display:grid}.ds-type-row:last-child,.ds-button-row:last-child{border-bottom:none}.ds-type-meta{flex-direction:column;gap:2px;display:flex}.ds-button-cells{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ds-form-grid{column-gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.ds-stats{margin-bottom:0}.ds-icon-row{gap:var(--space-3)}.ds-subhead{margin:var(--space-6) 0 var(--space-3)}.ds-radius-grid{gap:var(--space-5) var(--space-4);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.ds-radius{flex-direction:column;gap:4px;display:flex}.ds-radius-box,.ds-shadow-box{background:var(--primary-light);border:1px solid var(--primary-border);width:64px;height:64px;margin-bottom:6px}.ds-shadow-box{background:var(--bg-card);border-radius:var(--radius-md);border:none}.ds-table{margin:calc(var(--space-6) * -1)}@media (width<=1100px){.ds-two-col,.ds-brand-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.ds-type-row,.ds-button-row,.ds-status-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.ds-neutral-grid{grid-template-columns:minmax(0,1fr)}}.lang-tabs{max-width:100%;margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.lang-tab{padding:0 var(--space-3);gap:6px}.lang-tab-dot{border-radius:var(--radius-full);background:var(--color-neutral-300);flex-shrink:0;width:8px;height:8px}.lang-tab-dot--complete{background:var(--success)}.lang-tab-dot--partial{background:var(--warning)}.lang-tab .flag-img{width:18px;height:13px}.lang-tab-code{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase}.lang-tab-name{font-weight:var(--font-regular)}.lang-tab-default{border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary-text);font-size:11px;font-weight:var(--font-medium);padding:1px 6px}.translatable-label{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.th-lang{align-items:center;gap:6px;display:inline-flex}.lang-chip{border-radius:var(--radius-xs);background:var(--bg-muted);color:var(--text-secondary);font-family:var(--font-mono);font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;align-items:center;gap:4px;padding:1px 6px;line-height:1.5;display:inline-flex}.lang-badges{flex-wrap:wrap;gap:4px;display:inline-flex}.lang-badge{border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:11px;font-weight:var(--font-semibold);text-transform:uppercase;border:1px solid #0000;align-items:center;gap:4px;padding:1px 6px;line-height:1.4;display:inline-flex}.lang-badge--filled{background:var(--primary-light);color:var(--primary-text)}.lang-badge--missing{border-color:var(--border);color:var(--text-placeholder);border-style:dashed}.lang-badge--missing .flag-img{filter:grayscale();opacity:.45}.header-lang{align-items:center;gap:var(--space-2);color:var(--text-muted);display:flex}.header-lang .form-select{min-width:160px}.page-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-toolbar-group{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-toolbar-search{width:280px;max-width:100%}.page-content>.alert,.modal-body>.alert,.modal-body form>.alert{margin-bottom:var(--space-4)}.alert-content p,.alert-content .btn--link{margin-top:var(--space-1)}.table-actions--end{justify-content:flex-end}.table-link{color:var(--primary-text);font-size:var(--text-xs);font-weight:var(--font-medium);align-items:center;gap:4px;display:inline-flex}.table-link:hover{text-decoration:underline}.table-number{font-variant-numeric:tabular-nums;font-weight:var(--font-semibold);color:var(--text-body)}.text-muted{color:var(--text-muted)}.text-success{color:var(--success-text)}.form-input--mono{font-family:var(--font-mono)}.checkbox-label{align-items:flex-start;gap:var(--space-2);color:var(--text-body);font-size:var(--text-base);cursor:pointer;display:flex}.checkbox-label input{flex-shrink:0;width:16px;height:16px;margin-top:2px}.checkbox-label .form-hint{margin-top:2px;display:block}.checkbox-label--inline{font-size:var(--text-sm);white-space:nowrap;align-items:center}.checkbox-label--inline input{margin-top:0}.switch{border-radius:var(--radius-full);background:var(--color-neutral-300);vertical-align:middle;cursor:pointer;width:36px;height:20px;transition:background var(--transition-fast);border:none;flex-shrink:0;padding:0;position:relative}.switch-thumb{border-radius:var(--radius-full);background:var(--bg-card);width:16px;height:16px;box-shadow:var(--shadow-xs);transition:transform var(--transition-fast);position:absolute;top:2px;left:2px}.switch--on{background:var(--primary)}.switch--on .switch-thumb{transform:translate(16px)}.switch:disabled{opacity:.5;cursor:not-allowed}.switch:focus-visible{box-shadow:var(--focus-ring);outline:none}.switch-cell{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.switch-label{color:var(--text-secondary);font-size:var(--text-sm)}.radio-cell{align-items:center;gap:var(--space-2);white-space:nowrap;color:var(--primary-text);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;display:inline-flex}.radio-cell input{cursor:pointer;width:16px;height:16px}.radio-cell input:disabled{cursor:wait}.language-usage{margin:var(--space-1) 0 0;padding-left:var(--space-5);font-size:var(--text-sm)}.i18n-key{align-items:center;gap:var(--space-2);color:var(--text);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold);word-break:break-all;display:inline-flex}.key-values{border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;display:flex}.key-values-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);display:flex}.key-values-row+.key-values-row{border-top:1px solid var(--border-light)}.key-values-list{gap:var(--space-1);min-width:0;font-size:var(--text-sm);flex-direction:column;flex:1;display:flex}.key-values-item{gap:var(--space-2);display:flex}.key-values-form{min-width:44px;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);flex-shrink:0;line-height:1.7}.import-intro{margin:0 0 var(--space-4);font-size:var(--text-sm)}.import-intro code{border-radius:var(--radius-xs);background:var(--bg-muted);font-family:var(--font-mono);font-size:var(--text-xs);padding:1px 4px}.dropzone{justify-content:center;align-items:center;gap:var(--space-1);min-height:150px;padding:var(--space-6);border:2px dashed var(--border);border-radius:var(--radius-lg);background:var(--bg-subtle);color:var(--text-body);text-align:center;cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;display:flex}.dropzone:hover,.dropzone:focus-visible,.dropzone--active{border-color:var(--primary);background:var(--primary-light);outline:none}.dropzone--filled{border-style:solid;border-color:var(--primary-border)}.dropzone-icon{margin-bottom:var(--space-2);color:var(--primary)}.dropzone-hint{color:var(--text-muted);font-size:var(--text-sm)}.import-options{margin-top:var(--space-5)}.import-report{gap:var(--space-3);flex-direction:column;display:flex}.import-report>.alert{margin-bottom:0}.import-report-stats{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.import-report-stat{padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-subtle);flex-direction:column;gap:2px;display:flex}.import-report-value{color:var(--text);font-size:var(--text-xl);font-weight:var(--font-bold);font-variant-numeric:tabular-nums}.import-report-label{color:var(--text-muted);font-size:var(--text-xs)}.import-report-errors{padding:var(--space-3) var(--space-4);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-light);color:var(--warning-text);font-size:var(--text-sm)}.import-report-errors ul{max-height:180px;margin:var(--space-2) 0 0;padding-left:var(--space-5);font-family:var(--font-mono);font-size:var(--text-xs);overflow-y:auto}.ph-text{white-space:pre-wrap;overflow-wrap:anywhere}.ph-token{border-radius:var(--radius-xs);background:var(--info-light);color:var(--info-text);font-family:var(--font-mono);white-space:nowrap;margin:0 1px;padding:0 4px;font-size:.9em;display:inline-block}.ph-token--missing{background:var(--error-light);color:var(--error-text)}.ph-token--extra{background:var(--warning-light);color:var(--warning-text)}.ph-check{gap:var(--space-1) var(--space-3);color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;margin-top:4px;display:flex}.i18n-summary{align-items:center;gap:var(--space-6);margin-bottom:var(--space-5);padding:var(--space-5);grid-template-columns:minmax(220px,auto) 1fr auto;display:grid}.i18n-summary-language{align-items:center;gap:var(--space-3);display:flex}.i18n-summary-select{flex-direction:column;flex:1;gap:4px;display:flex}.i18n-summary-progress{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.i18n-progress-head{color:var(--text-secondary);font-size:var(--text-sm);justify-content:space-between;display:flex}.i18n-progress-head strong{color:var(--text)}.i18n-summary-badges,.i18n-summary-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.progress{border-radius:var(--radius-full);background:var(--bg-muted);height:8px;overflow:hidden}.progress-bar{border-radius:inherit;background:var(--secondary);height:100%;transition:width var(--transition-base,.25s ease)}.progress-bar--complete{background:var(--primary)}.i18n-table td{vertical-align:top}.i18n-key-cell{width:28%;min-width:220px}.i18n-reference-cell{width:30%;min-width:200px;color:var(--text-body);font-size:var(--text-sm)}.i18n-value-cell{min-width:280px}.i18n-table--reference .i18n-key-cell{width:36%}.i18n-key-meta{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.i18n-row--dirty>td{background:var(--warning-light)}.i18n-row--dirty>td:first-child{box-shadow:inset 3px 0 0 var(--warning)}.i18n-row--error>td{background:var(--error-light)}.i18n-row--error>td:first-child{box-shadow:inset 3px 0 0 var(--error)}.i18n-editor{gap:var(--space-2);flex-direction:column;display:flex}.i18n-input{min-height:var(--control-h);resize:vertical;field-sizing:content;max-height:240px}.i18n-plural-row{align-items:flex-start;gap:var(--space-2);display:flex}.i18n-plural-form{min-width:56px;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-semibold);flex-direction:column;flex-shrink:0;padding-top:10px;display:inline-flex}.i18n-plural-example{color:var(--text-placeholder);font-weight:var(--font-regular)}.i18n-plural-field{flex:1;min-width:0}.i18n-reference-forms{gap:var(--space-2);flex-direction:column;display:flex}.i18n-reference-form{gap:var(--space-2);display:flex}.i18n-reference-form .i18n-plural-form{padding-top:0}.save-bar{bottom:var(--space-4);z-index:20;justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-lg);flex-wrap:wrap;display:flex;position:sticky}.save-bar-text{color:var(--text-body);font-size:var(--text-sm)}.save-bar-error{color:var(--error-text)}.save-bar-actions{gap:var(--space-2);display:flex}.json-preview{max-height:60vh;margin:var(--space-3) 0 0;padding:var(--space-4);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text-body);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre;line-height:1.6;overflow:auto}@media (width<=1200px){.i18n-summary{gap:var(--space-4);grid-template-columns:1fr}}@media (width<=768px){.page-toolbar-search{width:100%}.header-lang svg{display:none}.header-lang .form-select{min-width:0;max-width:150px}.lang-tab-name,.i18n-table thead{display:none}.i18n-table tr{border-bottom:1px solid var(--border-light);display:block}.i18n-table td{border:none;width:auto;min-width:0;display:block}}@media (width<=1400px){.stats-grid,.recent-places-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1200px){.page-content{padding:var(--space-6)}.dashboard-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=1024px){.header-search{display:none}}@media (width<=768px){.dealer-sidebar{box-shadow:none;z-index:1001;transform:translate(-100%)}.dealer-sidebar--mobile-open{box-shadow:var(--shadow-xl);transform:translate(0)}.dealer-sidebar-overlay{z-index:1000;display:block}.dealer-mobile-close-btn,.dealer-mobile-hamburger-btn{display:flex}.main-content{margin-left:0}.header{padding:0 var(--space-4);left:0}.header-user-info,.header-user-chevron{display:none}.header-user{padding:4px}.page-content{padding:var(--space-4)}.form-row,.stats-grid,.recent-places-grid,.place-detail-meta-grid,.route-detail-stats,.categories-grid,.directory-grid{grid-template-columns:minmax(0,1fr)}.data-table-toolbar{padding:var(--space-3) var(--space-4)}.data-table-toolbar .search-input-wrapper{min-width:0;max-width:none}}
