:root{--color-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f5f5f5;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-500:#6b7280;--color-gray-600:#555;--color-gray-700:#374151;--color-gray-900:#1a1a1a;--color-green-50:#e8f5e9;--color-green-100:#c8e6c9;--color-green-500:#40916c;--color-green-600:#2e7d32;--color-green-700:#25603f;--color-green-800:#2d6a4f;--color-green-900:#1b4332;--color-red-500:#e74c3c;--color-red-600:#c62828;--color-red-700:#b71c1c;--color-orange-500:#ff9800;--color-orange-600:#e65100;--color-blue-500:#2196f3;--color-blue-600:#1976d2;--color-blue-700:#1565c0;--color-green-50-bg:#e8f5e9;--color-orange-50-bg:#fff3e0;--color-red-50-bg:#ffebee;--color-blue-50-bg:#e3f2fd;--color-gray-50-bg:#f5f5f5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:9999px;--radius-full:50%;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--shadow-1:0 1px 3px #0000001a;--shadow-2:0 4px 12px #00000026;--shadow-3:0 8px 32px #0003;--shadow-focus:0 0 0 3px #40916c4d;--color-bg-page:var(--color-white);--color-bg-surface:var(--color-white);--color-bg-elevated:var(--color-white);--color-bg-muted:var(--color-gray-50);--color-bg-input:var(--color-white);--color-text-primary:var(--color-green-900);--color-text-secondary:var(--color-gray-600);--color-text-muted:var(--color-gray-500);--color-text-disabled:var(--color-gray-300);--color-text-inverse:var(--color-white);--color-border:var(--color-gray-200);--color-border-strong:var(--color-gray-300);--color-border-focus:var(--color-green-500);--color-action-primary:var(--color-green-800);--color-action-primary-hover:var(--color-green-700);--color-action-primary-text:var(--color-white);--color-action-secondary:var(--color-gray-100);--color-action-danger:var(--color-red-600);--color-feedback-success:var(--color-green-600);--color-feedback-error:var(--color-red-600);--color-feedback-warning:var(--color-orange-600);--color-feedback-info:var(--color-blue-700);--color-feedback-success-bg:var(--color-green-50-bg);--color-feedback-error-bg:var(--color-red-50-bg);--color-feedback-warning-bg:var(--color-orange-50-bg);--color-feedback-info-bg:var(--color-blue-50-bg);--color-polygon-stroke:var(--color-green-800);--color-polygon-fill:#2d6a4f33;--color-polygon-hover:#2d6a4f66;--space-page-x:var(--space-4);--space-page-y:var(--space-4);--space-section:var(--space-6);--space-row:var(--space-2);--space-stack:var(--space-4);--radius-button:var(--radius-sm);--radius-input:var(--radius-sm);--radius-card:var(--radius-md);--radius-modal:var(--radius-lg);--radius-badge:var(--radius-pill)}[data-theme=dark]{--color-white:#1a1a2e;--color-gray-50:#16213e;--color-gray-100:#0f3460;--color-gray-200:#2a2a4a;--color-gray-300:#3a3a5a;--color-gray-500:#a0a0a0;--color-gray-600:silver;--color-gray-700:#e0e0e0;--color-gray-900:#f5f5f5;--color-green-50:#1b3a2a;--color-green-100:#2d5a3a;--color-green-500:#52b788;--color-green-600:#66d9a8;--color-green-700:#4ca47a;--color-green-800:#40916c;--color-green-900:#c8e6c9;--color-red-500:#ff6b6b;--color-red-600:#ef5350;--color-red-700:#e57373;--color-orange-500:#ffb74d;--color-orange-600:#ffcc80;--color-blue-500:#64b5f6;--color-blue-600:#90caf9;--color-blue-700:#bbdefb;--color-green-50-bg:#66d9a826;--color-orange-50-bg:#ffcc8026;--color-red-50-bg:#ef535026;--color-blue-50-bg:#90caf926;--color-gray-50-bg:#2a2a4a}body{background-color:var(--color-bg-page);color:var(--color-text-primary);min-height:100vh;margin:0;padding:0;font-family:Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}#root{height:100vh}.skip-link{top:-100%;left:var(--space-4);z-index:10000;padding:var(--space-2) var(--space-4);background:var(--color-action-primary);color:#fff;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;text-decoration:none;transition:top .2s;position:absolute}.skip-link:focus{top:var(--space-2)}.navbar{background:var(--color-bg-surface);padding:var(--space-2) var(--space-6);z-index:9000;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}.navbar-brand a{color:var(--color-action-primary);align-items:center;gap:6px;font-size:1.2rem;font-weight:700;text-decoration:none;transition:color .2s;display:flex}.navbar-brand a:hover{color:var(--color-green-500)}.brand-icon{color:var(--color-green-500);flex-shrink:0}.navbar-brand{align-items:center;gap:var(--space-2);display:flex}.btn-clear-storage{border:1px solid var(--color-feedback-error);color:var(--color-feedback-error);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;transition:all .2s;display:flex}.btn-clear-storage:hover{background:var(--color-feedback-error);color:#fff}.clear-status{color:var(--color-feedback-success);margin-left:4px;font-weight:700}.navbar-menu{gap:var(--space-1);align-items:center;margin-left:32px;display:flex}.navbar-menu a,.nav-item-link{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);white-space:nowrap;align-items:center;gap:5px;font-size:.9rem;text-decoration:none;transition:all .2s;display:flex}.navbar-menu a:hover,.nav-item-link:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.navbar-menu a.active,.nav-item-link.active{background:var(--color-action-primary);color:#fff}.nav-item-icon{opacity:.7;flex-shrink:0;align-items:center;display:inline-flex}.navbar-menu a.active .nav-item-icon,.nav-item-link.active .nav-item-icon,.nav-dropdown.active .nav-item-icon{opacity:1}.nav-dropdown{position:relative}.nav-dropdown-trigger{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:5px;font-size:.9rem;transition:all .2s;display:flex}.nav-dropdown-trigger:hover,.nav-dropdown.active .nav-dropdown-trigger{background:var(--color-bg-muted);color:var(--color-action-primary)}.nav-dropdown.active .nav-dropdown-trigger{background:var(--color-action-primary);color:#fff}.nav-chevron{opacity:.5;flex-shrink:0;transition:transform .2s}.nav-chevron.open{transform:rotate(180deg)}.nav-dropdown.active .nav-chevron{opacity:1}.nav-dropdown-menu{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);z-index:9001;min-width:180px;padding:0 0 .25rem;position:absolute;top:100%;left:0;box-shadow:0 4px 12px #00000026}.nav-dropdown-menu a{padding:var(--space-2) var(--space-4);color:var(--color-text-secondary);font-size:.9rem;text-decoration:none;transition:all .2s;display:block}.nav-dropdown-menu a:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.nav-dropdown-menu a.active{background:var(--color-action-primary);color:#fff}.nav-dropdown-section{padding:var(--space-2) var(--space-4);text-transform:uppercase;letter-spacing:.08em;color:var(--color-action-primary);background:var(--color-green-50-bg);border-bottom:1px solid var(--color-border);cursor:default;pointer-events:none;font-size:.65rem;font-weight:700}.nav-dropdown-menu .nav-dropdown-item-disabled,.mobile-dropdown-item-disabled{padding:var(--space-2) var(--space-4);color:var(--color-text-disabled);cursor:not-allowed;-webkit-user-select:none;user-select:none;font-size:.9rem;font-style:italic;display:block}.nav-item-soon-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);background:var(--color-bg-muted);color:var(--color-text-secondary);vertical-align:middle;margin-left:.4rem;padding:.1rem .35rem;font-size:.65rem;font-style:normal;font-weight:600;display:inline-block}.nav-dropdown-subgroup{border-top:1px solid var(--color-border);position:relative}.nav-dropdown-subgroup:first-child{border-top:none}.nav-dropdown-subgroup-trigger{width:100%;padding:var(--space-2) var(--space-4);color:var(--color-text-primary);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:500;display:flex}.nav-dropdown-subgroup-trigger:hover{background:var(--color-bg-muted)}.nav-dropdown-subgroup.expanded .nav-dropdown-subgroup-trigger{color:var(--color-action-primary)}.nav-dropdown-submenu{padding-left:var(--space-3);animation:.15s ease-out accordion-open}@keyframes accordion-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mobile-dropdown-subgroup{padding-left:var(--space-3)}.mobile-dropdown-subgroup-label{padding:var(--space-2) var(--space-4) var(--space-1);color:var(--color-text-muted);font-size:.75rem;font-weight:600;display:block}.mobile-dropdown-section-label{padding:6px var(--space-4);text-transform:uppercase;letter-spacing:.04em;color:var(--color-action-primary);background:var(--color-green-50-bg);border-bottom:1px solid var(--color-border);font-size:.7rem;font-weight:700;display:block}.navbar-left{align-items:center;gap:var(--space-2);display:flex}.hamburger{cursor:pointer;color:var(--color-text-primary);border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:1.4rem;display:none}.hamburger:hover{background:var(--color-bg-muted)}.nav-grid-wrapper{align-items:center;display:flex;position:relative}.nav-grid-btn{padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex}.nav-grid-btn:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.nav-search-inline{margin:0 var(--space-2)}.navbar-actions{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}.nav-action-btn{padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:4px;font-size:.95rem;transition:all .2s;display:flex}.nav-action-btn:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.kbd-hint{background:var(--color-bg-muted);color:var(--color-text-secondary);border:1px solid var(--color-gray-100);border-radius:3px;padding:1px 5px;font-family:monospace;font-size:.7rem}.nav-search-btn{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-bg-muted);color:var(--color-text-muted);cursor:pointer;align-items:center;gap:6px;padding:5px 10px;font-size:.85rem;transition:all .2s;display:flex}.nav-search-btn:hover{border-color:var(--color-border-strong);background:var(--color-bg-surface);color:var(--color-text-secondary)}.nav-search-placeholder{display:inline}.nav-search-kbd{background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:3px;margin-left:2px;padding:1px 5px;font-family:monospace;font-size:.65rem}@media (width<=900px){.nav-search-placeholder{display:none}}.settings-dropdown .nav-dropdown-menu{min-width:160px;left:auto;right:0}.user-menu{position:relative}.user-menu-trigger{gap:var(--space-1)}.user-menu-avatar{background:var(--color-action-primary);color:#fff;letter-spacing:.5px;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:600;display:inline-flex}.user-menu-name{font-size:.9rem;font-weight:500}.user-menu-caret{opacity:.7;font-size:.7rem}.user-menu-dropdown{background:var(--color-bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);z-index:1000;min-width:160px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.user-menu-item{width:100%;padding:var(--space-2) var(--space-4);text-align:left;cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:8px;font-size:.9rem;text-decoration:none;transition:all .2s;display:flex}.user-menu-item:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.user-menu-item.danger-item:hover{background:var(--color-feedback-error-bg);color:var(--color-feedback-error)}.user-menu-separator{background:var(--color-border);height:1px;margin:var(--space-1) 0}@media (width<=767px){.user-menu-name,.user-menu-caret{display:none}}.mobile-menu{background:var(--color-bg-surface);padding:var(--space-4);z-index:9001;border-top:1px solid var(--color-gray-100);flex-direction:column;gap:0;max-height:calc(100vh - 48px);display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.mobile-menu a,.mobile-dropdown-label,.mobile-nav-item{padding:var(--space-2) var(--space-4);color:var(--color-text-secondary);border-radius:var(--radius-sm);align-items:center;gap:8px;font-size:.95rem;text-decoration:none;transition:all .2s;display:flex}.mobile-menu a:hover,.mobile-menu a.active,.mobile-nav-item:hover,.mobile-nav-item.active{background:var(--color-action-primary);color:#fff}.mobile-dropdown{padding-left:var(--space-4)}.mobile-dropdown-label{color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-gray-100);margin-bottom:2px;padding-bottom:2px;font-size:.85rem;font-weight:600}.mobile-nav-item-icon{opacity:.7;align-items:center;display:inline-flex}.mobile-nav-item.active .mobile-nav-item-icon,.mobile-menu a.active .mobile-nav-item-icon{opacity:1}.mobile-action-btn{padding:var(--space-2) var(--space-4);border:1px solid var(--color-gray-100);background:var(--color-bg-muted);color:var(--color-text-primary);border-radius:var(--radius-sm);cursor:pointer;text-align:left;align-items:center;gap:8px;font-size:.9rem;transition:all .2s;display:flex}.mobile-action-btn:hover{border-color:var(--color-action-primary);color:var(--color-action-primary)}.mobile-action-btn.danger{border-color:var(--color-feedback-error);color:var(--color-feedback-error)}.mobile-action-btn.danger:hover{background:var(--color-feedback-error);color:#fff}.mobile-actions{gap:var(--space-1);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-gray-100);flex-direction:column;display:flex}.mobile-search-row{padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);background:var(--color-bg-muted);color:var(--color-text-secondary);border-radius:var(--radius-pill);cursor:pointer;margin-bottom:var(--space-2);align-items:center;gap:8px;font-size:.9rem;display:flex}.mobile-search-row:hover{border-color:var(--color-action-primary);color:var(--color-action-primary)}.landing-page{min-height:calc(100vh - 60px)}.hero{background:linear-gradient(135deg, var(--color-action-primary), var(--color-green-700));color:#fff;padding:120px var(--space-6);text-align:center}.hero-content{max-width:800px;margin:0 auto}.hero h1{margin:0 0 var(--space-2);color:#fff;font-size:3rem}.hero-subtitle{margin:var(--space-6) 0 var(--space-8);opacity:.9;font-size:1.2rem}.hero-buttons{gap:var(--space-4);justify-content:center;display:flex}.cta-button{padding:var(--space-2) var(--space-6);border-radius:var(--radius-md);cursor:pointer;border:none;font-size:1rem;text-decoration:none;transition:transform .2s,box-shadow .2s}.cta-button.primary{background:var(--color-orange-600);color:#fff;box-shadow:0 4px 12px #d4a3734d}.cta-button.primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #d4a37366}.cta-button.secondary{color:#fff;background:0 0;border:2px solid #fff}.cta-button.secondary:hover{background:#ffffff1a}.features{padding:80px var(--space-6);background:var(--color-bg-muted)}.features h2{text-align:center;margin-bottom:var(--space-8);color:var(--color-action-primary)}.features-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-width:1200px;margin:0 auto;display:grid}.feature-card{background:var(--color-bg-surface);padding:var(--space-6);border-radius:var(--radius-md);text-align:center;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #0000001a}.feature-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.feature-icon{margin-bottom:var(--space-4);font-size:2.5rem}.feature-card h3{margin:var(--space-2) 0;color:var(--color-action-primary)}.feature-card p{color:var(--color-text-secondary);line-height:1.6}.stats-section{padding:80px var(--space-6);background:var(--color-action-primary);color:#fff}.stats-grid{gap:var(--space-8);text-align:center;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:800px;margin:0 auto;display:grid}.stat-number{margin-bottom:var(--space-1);font-size:3rem;font-weight:700}.stat-label{opacity:.9;font-size:1.1rem}@media (width<=768px){.hamburger{display:flex}.nav-grid-wrapper,.nav-search-inline,.navbar-menu,.navbar-actions{display:none}.navbar{padding:var(--space-2) var(--space-4);flex-wrap:nowrap;justify-content:space-between}.hero h1{font-size:2rem}.features-grid,.stats-grid{grid-template-columns:1fr}}.login-page{background:var(--color-bg-muted);grid-template-columns:1fr;min-height:100vh;display:grid}@media (width>=900px){.login-page{grid-template-columns:1fr 1fr}}.login-brand{background:linear-gradient(135deg, var(--color-action-primary) 0%, var(--color-green-700) 100%);flex-direction:column;justify-content:center;padding:80px 64px;display:flex;position:relative;overflow:hidden}.login-brand:before{content:"";pointer-events:none;background:radial-gradient(circle at 20% 80%,#ffffff14,#0000 50%);position:absolute;inset:0}.login-panel{justify-content:center;align-items:center;padding:32px 24px;display:flex}.login-card{background:var(--color-bg-surface);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-2);padding:40px 32px}@media (width>=600px){.login-panel,.login-card{padding:48px 40px}}.menu-panel{z-index:9002;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:560px;height:480px;display:flex;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 8px 32px #0003}.menu-panel__groups{border-right:1px solid var(--color-border);background:var(--color-bg-muted);flex-shrink:0;width:200px;overflow-y:auto}.menu-panel__group-item{cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-size:.9rem;transition:all .15s;display:flex}.menu-panel__group-item:hover{background:var(--color-bg-surface);color:var(--color-action-primary)}.menu-panel__group-item--active{background:var(--color-bg-surface);color:var(--color-action-primary);font-weight:500}.menu-panel__group-icon{opacity:.7;flex-shrink:0;align-items:center;display:inline-flex}.menu-panel__group-item--active .menu-panel__group-icon{opacity:1}.menu-panel__items{flex:1;padding:0 0 8px;overflow-y:auto}.menu-panel__section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-action-primary);background:var(--color-green-50-bg);border-bottom:1px solid var(--color-border);cursor:default;pointer-events:none;padding:8px 16px;font-size:.7rem;font-weight:700}.menu-panel__item{width:100%;color:var(--color-text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 16px;font-size:.88rem;text-decoration:none;transition:all .15s;display:flex}.menu-panel__item:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.menu-panel__item--active{background:var(--color-action-primary);color:#fff}.menu-panel__item--disabled{color:var(--color-text-disabled);cursor:not-allowed;-webkit-user-select:none;user-select:none;font-style:italic}.menu-panel__item--disabled:hover{color:var(--color-text-disabled);background:0 0}.menu-panel__item-icon{flex-shrink:0;align-items:center;font-size:1rem;display:inline-flex}.menu-panel__soon-badge{text-transform:uppercase;border-radius:var(--radius-sm);background:var(--color-bg-muted);color:var(--color-text-secondary);vertical-align:middle;margin-left:.4rem;padding:.1rem .3rem;font-size:.6rem;font-weight:600}.menu-panel__group-divider{background:var(--color-border);height:1px;margin:0}.menu-panel__recent-header{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);padding:10px 16px 4px;font-size:.7rem;font-weight:600}.menu-panel__recent-item{width:100%;color:var(--color-text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:8px 16px;font-size:.88rem;text-decoration:none;transition:all .15s;display:flex}.menu-panel__recent-item:hover{background:var(--color-bg-muted);color:var(--color-action-primary)}.menu-panel__recent-item-content{flex-direction:column;min-width:0;display:flex}.menu-panel__recent-item-label{color:inherit;white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.menu-panel__recent-item-breadcrumb{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.menu-panel__recent-item-icon{flex-shrink:0;align-items:center;font-size:1rem;display:inline-flex}.menu-panel__recent-separator{background:var(--color-border);height:1px;margin:4px 12px}.command-palette{z-index:9002;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:560px;box-shadow:var(--shadow-3);font-family:inherit;animation:.2s cubic-bezier(.16,1,.3,1) cmd-box-in;position:fixed;overflow:hidden}.command-palette.closing{animation:.1s ease-in forwards cmd-box-out}@keyframes cmd-box-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes cmd-box-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.command-palette-input-wrapper{border-bottom:1px solid var(--color-bg-muted);align-items:center;gap:10px;padding:14px 18px;display:flex}.command-palette-icon{color:var(--color-text-secondary);flex-shrink:0;font-size:16px}.command-palette-input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:15px}.command-palette-input::placeholder{color:var(--color-text-disabled)}.command-palette-kbd{color:var(--color-text-disabled);border:1px solid var(--color-bg-muted);border-radius:var(--radius-sm);flex-shrink:0;padding:2px 6px;font-family:monospace;font-size:11px}.command-palette-results{max-height:320px;padding:6px;overflow-y:auto}.command-palette-results:empty{display:none}.command-palette-empty{padding:var(--space-6) 18px;text-align:center;color:var(--color-text-disabled);font-size:14px}.command-palette-item{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-primary);padding:10px 14px;text-decoration:none;transition:background .1s;display:flex}.command-palette-item:hover,.command-palette-item.selected{background:var(--color-bg-muted)}.command-palette-item.selected{background:#2d6a4f1a}.command-palette-item-icon{text-align:center;flex-shrink:0;width:24px;font-size:16px}.command-palette-item-label{font-size:14px}.command-palette-item-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.command-palette-item-breadcrumb{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.command-palette-item-shortcut{color:var(--color-text-disabled);font-size:11px}.command-palette-footer{padding:var(--space-2) 14px;border-top:1px solid var(--color-bg-muted);color:var(--color-text-disabled);justify-content:space-between;font-size:11px;display:flex}.command-palette-footer span{align-items:center;gap:var(--space-1);display:flex}.command-palette-footer kbd{border:1px solid var(--color-bg-muted);border-radius:var(--radius-sm);padding:1px 5px;font-family:monospace;font-size:10px}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-button);font-family:inherit;font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;font-weight:500;line-height:1;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn--md{padding:var(--space-2) var(--space-4);min-height:36px}.btn--sm{padding:var(--space-1) var(--space-3);min-height:28px;font-size:var(--font-size-xs)}.btn--full-width{width:100%}.btn--primary{background:var(--color-action-primary);color:var(--color-action-primary-text)}.btn--primary:hover:not(:disabled){background:var(--color-action-primary-hover)}.btn--secondary{background:var(--color-action-secondary);color:var(--color-text-primary);border-color:var(--color-border)}.btn--secondary:hover:not(:disabled){background:var(--color-bg-muted);border-color:var(--color-border-strong)}.btn--danger{background:var(--color-action-danger);color:var(--color-action-primary-text)}.btn--danger:hover:not(:disabled){background:var(--color-feedback-error)}.btn--ghost{color:var(--color-text-primary);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-bg-muted)}.btn--icon{padding:var(--space-2);min-width:36px;min-height:36px;color:var(--color-text-secondary);background:0 0}.btn--icon.btn--sm{padding:var(--space-1);min-width:28px;min-height:28px}.btn--icon:hover:not(:disabled){background:var(--color-bg-muted);color:var(--color-text-primary)}.btn--disabled,.btn:disabled{opacity:.5;cursor:not-allowed}.btn--loading{cursor:wait}.btn__spinner{border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:14px;height:14px;animation:.6s linear infinite btn-spin;display:inline-block}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn__icon,.btn__label{align-items:center;display:inline-flex}.accordion{flex-direction:column;gap:0;display:flex}.accordion-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-page);overflow:hidden}.accordion-item+.accordion-item{margin-top:var(--space-2)}.accordion-item__header{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s;display:flex}.accordion-item__header:hover{background:var(--color-bg-muted)}.accordion-item--expanded .accordion-item__header{border-bottom:1px solid var(--color-border)}.accordion-item__header svg{color:var(--color-text-secondary);flex-shrink:0}.accordion-item__title{font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:600}.accordion-item__summary{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-left:var(--space-2)}.accordion-item__action{margin-left:auto}.accordion-item__body{padding:var(--space-4)}.data-table{border-collapse:collapse;background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);font-size:var(--font-size-sm);border-radius:var(--radius-md);overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px}.data-table th{background:var(--color-bg-muted);color:var(--color-text-secondary);font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--color-border);z-index:1;position:sticky;top:0}.data-table tbody tr{transition:background-color .15s}.data-table tbody tr:hover{background:var(--color-bg-muted)}.data-table tbody tr:last-child td{border-bottom:none}.data-table--compact th,.data-table--compact td{padding:8px 12px}.data-table--bordered{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.data-table--bordered th,.data-table--bordered td{border-right:1px solid var(--color-border)}.data-table--bordered th:last-child,.data-table--bordered td:last-child{border-right:none}.data-table__row--clickable{cursor:pointer}.data-table__message{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm);padding:40px 16px}.data-table__message--error{color:var(--color-feedback-error);background:var(--color-feedback-error-bg);border-radius:var(--radius-sm)}.data-table__skeleton{background:var(--color-bg-muted);border-radius:var(--radius-sm);height:14px;animation:1.4s ease-in-out infinite data-table-shimmer;display:block}.data-table__th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table__th--sortable:hover{color:var(--color-text-primary)}.data-table__sort-indicator{margin-left:4px;font-size:10px}.data-table-wrapper{border-radius:var(--radius-md);overflow-x:auto}.data-table__th--sticky-left,.data-table__td--sticky-left{z-index:2;position:sticky;left:0}.data-table__th--sticky-left{z-index:3}.data-table__td--sticky-left{background:var(--color-bg-surface)}.data-table tbody tr:hover .data-table__td--sticky-left{background:var(--color-bg-muted)}@keyframes data-table-shimmer{0%,to{opacity:.5}50%{opacity:1}}.form-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.form-actions--end{justify-content:flex-end}.form-actions--space-between{justify-content:space-between}.form-actions--sticky{background:var(--color-bg-surface);border-top:1px solid var(--color-bg-muted);padding:var(--space-2) var(--space-4);z-index:10;flex-shrink:0;margin-top:0;position:sticky;bottom:0}.stack{display:flex}.stack--row{flex-direction:row}.stack--column{flex-direction:column}.stack--gap-1{gap:var(--space-1)}.stack--gap-2{gap:var(--space-2)}.stack--gap-3{gap:var(--space-3)}.stack--gap-4{gap:var(--space-4)}.stack--gap-5{gap:var(--space-5)}.stack--gap-6{gap:var(--space-6)}.stack--align-start{align-items:flex-start}.stack--align-center{align-items:center}.stack--align-end{align-items:flex-end}.stack--align-stretch{align-items:stretch}.stack--justify-start{justify-content:flex-start}.stack--justify-center{justify-content:center}.stack--justify-end{justify-content:flex-end}.stack--justify-space-between{justify-content:space-between}.card{background:var(--color-bg-surface);border-radius:var(--radius-card);color:var(--color-text-primary)}.card--default{border:1px solid var(--color-border)}.card--elevated{box-shadow:var(--shadow-2)}.card--outlined{border:1px solid var(--color-border-strong)}.card--padding-none .card__body{padding:0}.card--padding-sm .card__body{padding:var(--space-3)}.card--padding-md .card__body{padding:var(--space-4)}.card--padding-lg .card__body{padding:var(--space-6)}.card__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.card__title{font-size:var(--font-size-md);color:var(--color-text-primary);font-weight:600}.card__actions{align-items:center;gap:var(--space-2);display:flex}.badge{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);border-radius:var(--radius-badge);align-items:center;font-weight:500;line-height:1.2;display:inline-flex}.badge--success{background:var(--color-feedback-success-bg);color:var(--color-feedback-success)}.badge--error{background:var(--color-feedback-error-bg);color:var(--color-feedback-error)}.badge--warning{background:var(--color-feedback-warning-bg);color:var(--color-feedback-warning)}.badge--info{background:var(--color-feedback-info-bg);color:var(--color-feedback-info)}.badge--neutral{background:var(--color-bg-muted);color:var(--color-text-secondary)}.alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-card);font-size:var(--font-size-sm);border:1px solid #0000;display:flex}.alert__title{margin-bottom:var(--space-1);font-weight:600}.alert__content{flex:1}.alert__close{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;padding:0;font-size:1.25rem;line-height:1}.alert__close:hover{opacity:1}.alert--success{background:var(--color-feedback-success-bg);color:var(--color-feedback-success);border-color:var(--color-feedback-success)}.alert--error{background:var(--color-feedback-error-bg);color:var(--color-feedback-error);border-color:var(--color-feedback-error)}.alert--warning{background:var(--color-feedback-warning-bg);color:var(--color-feedback-warning);border-color:var(--color-feedback-warning)}.alert--info{background:var(--color-feedback-info-bg);color:var(--color-feedback-info);border-color:var(--color-feedback-info)}.slide-panel-backdrop{z-index:1000;opacity:0;background:#0006;transition:opacity .2s;position:fixed;inset:0}.slide-panel-backdrop--open{opacity:1}.slide-panel{background:var(--color-bg-surface);width:480px;max-width:90vw;height:100vh;box-shadow:var(--shadow-3);z-index:1001;flex-direction:column;transition:transform .25s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.slide-panel--open{transform:translate(0)}.slide-panel__header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.slide-panel__header h2{font-size:var(--font-size-lg);margin:0}.slide-panel__close{cursor:pointer;font-size:var(--font-size-xl);color:var(--color-text-secondary);padding:var(--space-1);background:0 0;border:none;line-height:1}.slide-panel__body{padding:var(--space-6);flex:1;overflow-y:auto}.slide-panel__footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:flex}.slide-panel--inline{border-left:1px solid var(--color-bg-muted);background:var(--color-bg-surface);height:100%;max-height:none;box-shadow:none;flex-shrink:0;transition:none;position:relative;overflow-y:auto;transform:none}.slide-panel--modal{border-radius:8px;width:1400px;max-width:92vw;height:auto;max-height:85vh;position:fixed;top:50%;left:50%;right:auto;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0003}.slide-panel--modal .slide-panel__header{z-index:1;background:var(--color-bg-surface);position:sticky;top:0}.master-data-page{height:calc(100vh - var(--nav-height,60px));max-height:90vh;display:flex;overflow:hidden}.master-data-page__header{padding:12px 0 4px}.master-data-page h1{font-size:var(--font-size-lg);color:var(--color-text-primary);align-items:center;gap:6px;margin:0;font-weight:600;display:flex}.master-data-page .md-subtitle-tooltip{background:var(--color-bg-muted);width:16px;height:16px;color:var(--color-text-muted);cursor:help;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex;position:relative}.master-data-page .md-subtitle-tooltip:after{content:attr(title);background:var(--color-text-primary);color:var(--color-bg-surface);border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;opacity:0;pointer-events:none;z-index:10;padding:6px 10px;font-weight:400;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.master-data-page .md-subtitle-tooltip:hover:after{opacity:1}.md-filter-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;margin-left:8px;padding:2px 8px;transition:all .15s}.md-filter-toggle:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.master-data-page .md-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.master-data-page .md-search{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);max-width:320px;color:var(--color-text-primary);font-size:var(--font-size-sm);flex:1;padding:8px 12px;transition:border-color .2s}.master-data-page .md-search:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}.master-data-page table{border-collapse:collapse;background:var(--color-bg-surface);border-radius:var(--radius-md);width:100%;overflow:hidden}.master-data-page th,.master-data-page td{text-align:left;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);padding:12px 16px}.master-data-page th{background:var(--color-bg-muted);color:var(--color-text-secondary);font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--color-border)}.master-data-page tbody tr{transition:background-color .15s}.master-data-page tbody tr:hover{background:var(--color-bg-muted)}.master-data-page tr:last-child td{border-bottom:none}.master-data-page .md-empty{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm);padding:40px 16px}.master-data-page .md-loading{text-align:center;color:var(--color-text-secondary);padding:40px 16px}.master-data-page .md-error{background:var(--color-feedback-error-bg);color:var(--color-feedback-error);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-bottom:16px;padding:12px 16px}.master-data-page .md-row-actions{gap:8px;display:flex}.master-data-layout{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.master-data-layout__main{flex:1;min-width:0;padding:0 24px 24px;overflow-y:auto}.master-data-page:has(.slide-panel--inline){max-width:none}.slide-panel--inline{width:336px;min-width:336px}.master-data-layout--with-panel{flex-direction:row!important}.md-dialog-backdrop{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.md-dialog{background:var(--color-bg-surface);border-radius:var(--radius-md);width:90%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-3);padding:24px;overflow-y:auto}.md-dialog h2{font-size:var(--font-size-lg);margin:0 0 16px}.md-form-row{flex-direction:column;gap:4px;min-width:0;margin-bottom:12px;display:flex}.md-form-row label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500}.md-form-row input,.md-form-row select,.md-form-row textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;font-size:var(--font-size-sm);background:var(--color-bg-input);color:var(--color-text-primary);box-sizing:border-box;padding:8px 10px;transition:border-color .2s}.md-form-row input:focus,.md-form-row select:focus,.md-form-row textarea:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}.md-form-row input[type=checkbox]{width:auto}.md-form-grid{grid-template-columns:1fr;gap:8px 16px;display:grid}.md-checkbox-row{align-items:center;gap:8px;flex-direction:row!important}.norms-tabs{gap:var(--space-1);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4);display:flex}.norms-tab{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;font-weight:500}.norms-tab:hover{color:var(--color-text-primary)}.norms-tab--active{color:var(--color-text-primary);border-bottom-color:var(--color-action-primary)}.filter-bar{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:0 0;flex-wrap:nowrap;align-items:center;gap:12px;padding:8px 12px;display:flex}.filter-bar__field{flex-direction:column;gap:4px;display:flex}.filter-bar__field--date-range{min-width:280px}.filter-bar__field--checkbox{flex-direction:row;align-items:center;padding-bottom:2px}.filter-bar__label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:500}.filter-bar__field--float{position:relative}.filter-bar__float-label{font-size:var(--font-size-sm);color:var(--color-text-muted);pointer-events:none;background:0 0;padding:0 2px;transition:all .2s;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.filter-bar__input--float{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);color:var(--color-text-primary);font-size:var(--font-size-sm);min-width:120px;padding:18px 10px 6px}.filter-bar__select--float{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;appearance:auto;min-width:120px;padding:18px 28px 6px 10px}.filter-bar__input--float:focus,.filter-bar__select--float:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}.filter-bar__input--float:focus+.filter-bar__float-label,.filter-bar__input--float:not(:placeholder-shown)+.filter-bar__float-label,.filter-bar__select--float+.filter-bar__float-label{color:var(--color-text-secondary);background:0 0;font-size:.65rem;top:5px;transform:translateY(0)}.filter-bar__input--float::placeholder{color:#0000}.filter-bar__input--float:not(:placeholder-shown){padding-top:18px;padding-bottom:6px}.filter-bar__input--date{cursor:pointer;min-width:140px}.filter-bar__date-row{align-items:center;gap:6px;display:flex}.filter-bar__date-sep{color:var(--color-text-muted);font-size:var(--font-size-sm)}.filter-bar__checkbox-label{cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;display:flex}.filter-bar__checkbox{cursor:pointer;width:16px;height:16px;accent-color:var(--color-action-primary)}.master-data-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.master-data-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.master-data-search{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);color:var(--color-text-primary);min-width:200px;font-size:var(--font-size-sm);padding:8px 12px;transition:border-color .2s}.master-data-search:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus);outline:none}.master-data-filter-select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);color:var(--color-text-primary);font-size:var(--font-size-sm);padding:8px 12px;transition:border-color .2s}.master-data-filter-select:focus{border-color:var(--color-border-focus);outline:none}.master-data-pagination{font-size:var(--font-size-sm);color:var(--color-text-secondary);justify-content:space-between;align-items:center;margin-top:16px;padding:10px 0;display:flex}.master-data-pagination__info{flex:1}.master-data-pagination__controls{align-items:center;gap:8px;display:flex}.master-data-pagination__controls button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-surface);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:5px 12px;transition:all .15s}.master-data-pagination__controls button:hover:not(:disabled){background:var(--color-bg-muted);border-color:var(--color-border-strong);color:var(--color-text-primary)}.master-data-pagination__controls button:disabled{opacity:.4;cursor:not-allowed}.master-data-pagination__controls select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-input);font-size:var(--font-size-sm);color:var(--color-text-primary);padding:5px 8px}.aksi-btn-group{gap:4px;display:inline-flex}.tab-group{gap:var(--space-1);border-bottom:1px solid var(--color-border);padding:0 var(--space-4);display:flex}.tab-group__tab{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.tab-group__tab:hover{color:var(--color-text-primary)}.tab-group__tab--active{color:var(--color-action-primary);border-bottom-color:var(--color-action-primary)}.tab-group__tab:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--radius-sm) var(--radius-sm) 0 0;outline:none}.tab-group__icon{align-items:center;display:inline-flex}.confirm-dialog-overlay{z-index:2000;background:#00000080;justify-content:center;align-items:center;animation:.3s confirmFadeIn;display:flex;position:fixed;inset:0}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes confirmSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirm-dialog{background:var(--color-bg-surface);border-radius:var(--radius-md);width:95%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-3);flex-direction:column;animation:.3s confirmSlideUp;display:flex}.confirm-dialog--danger{max-width:450px}.confirm-dialog__header{padding:var(--space-6);border-bottom:1px solid var(--color-bg-muted);justify-content:space-between;align-items:center;display:flex}.confirm-dialog__header h2{color:var(--color-text-primary);margin:0;font-size:1.25rem}.confirm-dialog__header--danger{border-bottom-color:var(--color-feedback-error)}.confirm-dialog__header--danger h2{color:var(--color-feedback-error)}.confirm-dialog__close{width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:all .2s;display:flex}.confirm-dialog__close:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.confirm-dialog__body{padding:var(--space-6);flex:1;overflow-y:auto}.confirm-dialog__content{margin-bottom:var(--space-4)}.confirm-dialog__field{margin-top:var(--space-4);flex-direction:column;display:flex}.confirm-dialog__field label{margin-bottom:var(--space-2);color:var(--color-text-secondary);font-size:.9rem;font-weight:500}.confirm-dialog__field label code{background:var(--color-bg-muted);border-radius:var(--radius-sm);color:var(--color-feedback-error);padding:2px 6px;font-weight:600}.confirm-dialog__field input{padding:var(--space-2);border:1px solid var(--color-bg-muted);border-radius:var(--radius-sm);background:var(--color-bg-page);color:var(--color-text-primary);font-size:.95rem;transition:all .2s}.confirm-dialog__field input:focus{border-color:var(--color-action-primary);box-shadow:var(--shadow-focus);outline:none}.confirm-dialog__input--confirmed{border-color:var(--color-feedback-success);box-shadow:var(--shadow-focus)}.confirm-dialog__footer{padding:var(--space-6);border-top:1px solid var(--color-bg-muted);justify-content:flex-end;gap:var(--space-4);display:flex}.confirm-dialog__btn{padding:var(--space-2) var(--space-6);border-radius:var(--radius-sm);cursor:pointer;border:none;min-width:80px;font-size:.95rem;font-weight:600;transition:all .2s}.confirm-dialog__btn--cancel{background:var(--color-bg-muted);color:var(--color-text-primary)}.confirm-dialog__btn--cancel:hover{transform:translateY(-1px)}.confirm-dialog__btn--default{background:var(--color-action-primary);color:#fff}.confirm-dialog__btn--default:hover:not(:disabled){background:var(--color-green-700);box-shadow:var(--shadow-2);transform:translateY(-1px)}.confirm-dialog__btn--danger{background:var(--color-feedback-error);color:#fff}.confirm-dialog__btn--danger:hover:not(:disabled){background:var(--color-feedback-error);box-shadow:var(--shadow-2);transform:translateY(-1px)}.confirm-dialog__btn:disabled{opacity:.5;cursor:not-allowed}.form-field{gap:var(--space-1,4px);flex-direction:column;display:flex}.form-field-wide{grid-column:1/-1}.form-field label{font-size:var(--font-size-sm,13px);color:var(--color-text-primary,#1f2937);font-weight:500}.form-field select,.form-field input[type=date],.form-field input[type=datetime-local],.form-field input[type=number],.form-field input[type=text],.form-field input[type=email],.form-field input[type=password],.form-field input[type=search],.form-field textarea{padding:var(--space-2,8px) var(--space-3,12px);border:1px solid var(--color-border,#d1d5db);border-radius:var(--radius-sm,4px);font-size:var(--font-size-md,14px);background:var(--color-bg-page,#fff);color:var(--color-text-primary,#1f2937);box-sizing:border-box;width:100%;transition:border-color .15s,box-shadow .15s}.form-field textarea{resize:vertical;min-height:80px;font-family:inherit}.form-field select:focus,.form-field input:focus,.form-field textarea:focus{border-color:var(--color-action-primary,#2563eb);box-shadow:var(--shadow-focus,0 0 0 3px #2563eb26);outline:none}.form-field select:disabled,.form-field input:disabled,.form-field textarea:disabled{background:var(--color-bg-muted,#f3f4f6);cursor:not-allowed}.form-field.checkbox{flex-direction:row;align-items:center}.form-field.checkbox label{align-items:center;gap:var(--space-2,8px);cursor:pointer;font-weight:400;display:inline-flex}.form-field.checkbox input[type=checkbox]{width:auto;margin:0}.form-field .form-error{color:var(--color-danger,#dc2626);font-size:var(--font-size-xs,12px)}.form-row{gap:var(--space-2,8px);grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));align-items:start;display:grid}.form-section{gap:var(--space-3,12px);flex-direction:column;display:flex}.form-section-title{font-size:var(--font-size-md,14px);color:var(--color-text-primary,#1f2937);padding-bottom:var(--space-2,8px);border-bottom:1px solid var(--color-border,#d1d5db);margin:0;font-weight:600}.form-section-body{gap:var(--space-4,16px);grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));display:grid}.app{flex-direction:column;height:100vh;display:flex;position:relative;overflow:hidden}.main-content{flex:1;min-height:0;overflow:hidden auto}.area-statement-page{height:100%;position:relative}.area-statement-page.drawing-mode{cursor:crosshair}.area-statement-page.drawing-mode .leaflet-container{cursor:crosshair!important}.controls{z-index:500;background:var(--color-bg-surface);padding:var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-1);max-width:300px;position:absolute;top:10px;right:60px}.controls h1{margin:0 0 var(--space-4);color:var(--color-action-primary);font-size:1.2rem}.controls h1 .plant-year{color:var(--color-text-secondary);font-size:.85rem;font-weight:400}.button-group{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.button-group button{padding:var(--space-2) var(--space-4);border:1px solid var(--color-action-primary);background:var(--color-bg-page);color:var(--color-action-primary);border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;transition:all .2s}.button-group button:hover{background:var(--color-green-500);color:#fff}.button-group button.active{background:var(--color-action-primary);color:#fff}.button-group button.success{border-color:var(--color-feedback-success);color:var(--color-feedback-success)}.button-group button.success:hover{background:var(--color-feedback-success);color:#fff}.button-group button.danger{border-color:var(--color-feedback-error);color:var(--color-feedback-error)}.button-group button.danger:hover{background:var(--color-feedback-error);color:#fff}.button-group button.info{border-color:var(--color-feedback-info);color:var(--color-feedback-info)}.button-group button.info:hover{background:var(--color-feedback-info);color:#fff}.button-group button:disabled{opacity:.5;cursor:not-allowed}.stats{border-top:1px solid var(--color-gray-100);padding-top:var(--space-2)}.stats p{margin:var(--space-1) 0;color:var(--color-text-secondary);font-size:.85rem}.toggle-controls{z-index:500;border:1px solid var(--color-action-primary);background:var(--color-bg-surface);width:40px;height:40px;color:var(--color-action-primary);border-radius:var(--radius-full);cursor:pointer;justify-content:center;align-items:center;font-size:1.2rem;display:flex;position:absolute;top:10px;right:10px}.coordinate-display{z-index:500;background:var(--color-bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-1);padding:0;position:absolute;top:10px;left:50%;transform:translate(-50%)}.coordinate-content{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);display:flex}.coord-label{color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.coord-value{color:var(--color-action-primary);font-family:Courier New,monospace;font-size:.9rem;font-weight:600}.coord-input{width:100px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-orange-600);border-radius:var(--radius-sm);color:var(--color-action-primary);font-family:Courier New,monospace;font-size:.9rem}.coord-input:focus{border-color:var(--color-action-primary);box-shadow:var(--shadow-focus);outline:none}.coord-action{cursor:pointer;width:24px;height:24px;margin-left:var(--space-1);border-radius:var(--radius-sm);border:none;justify-content:center;align-items:center;font-size:1rem;line-height:1;transition:all .2s;display:flex}.coord-action.edit{background:var(--color-green-500);color:#fff}.coord-action.edit:hover{background:var(--color-action-primary)}.coord-action.reset{background:var(--color-orange-600);color:#fff}.coord-action.reset:hover{background:var(--color-orange-600)}.coord-action.save{background:var(--color-feedback-success);color:#fff}.coord-action.save:hover{background:var(--color-green-500)}.coord-action.cancel{background:var(--color-feedback-error);color:#fff}.coord-action.cancel:hover{background:var(--color-text-secondary)}.coord-toggle{background:var(--color-bg-muted);width:24px;height:24px;color:var(--color-text-secondary);border-radius:var(--radius-full);cursor:pointer;margin-left:var(--space-2);border:none;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:all .2s;display:flex}.coord-toggle:hover{background:var(--color-feedback-error);color:#fff}.coord-toggle.show{background:var(--color-action-primary);color:#fff;width:32px;height:32px;font-size:1.2rem}.coord-toggle.show:hover{background:var(--color-green-500);transform:scale(1.1)}.show-coords-button{z-index:500;position:absolute;top:10px;left:50%;transform:translate(-50%)}
