body{font-family:var(--font-family-sans);background-color:var(--color-canvas);color:var(--color-text)}.skip-link{position:fixed;z-index:1000;inset-block-start:max(var(--space-2),env(safe-area-inset-top));inset-inline-start:max(var(--space-2),env(safe-area-inset-left));padding:var(--space-2) var(--space-3);color:var(--color-on-primary);background:var(--color-primary);border:2px solid var(--color-focus);border-radius:var(--radius-control);font-weight:var(--font-weight-bold);transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--duration-fast) var(--ease-standard)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.control-inline-error{max-width:24rem;margin:var(--space-1) 0 0;color:#fca5a5;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);white-space:normal}[aria-invalid=true]{border-color:var(--color-danger)!important}@media(pointer:coarse){:where(button,summary,input:not([type=checkbox]):not([type=radio]),select,textarea,.icon-button,.btn-preview-action){min-height:var(--control-height-touch)}:where(.icon-button,.btn-preview-action,.btn-row-more,.btn-row-resize){min-width:var(--control-height-touch)}}@media(forced-colors:active){:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight}[aria-current=page],[aria-selected=true]{outline:2px solid Highlight}}html[data-i18n-ready=false] body{visibility:hidden}.language-switcher{display:inline-flex;align-items:center;gap:var(--space-1);width:fit-content;padding:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-control)}.language-switcher__label{margin-inline:var(--space-1);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.language-switcher__button{min-width:2.5rem;min-height:2rem;padding:var(--space-1) var(--space-2);color:var(--color-text-secondary);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);font:inherit;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);cursor:pointer;transition:var(--transition-colors)}.language-switcher__button:hover{color:var(--color-text);background:var(--color-surface-hover)}.language-switcher__button.is-active,.language-switcher__button[aria-pressed=true]{color:var(--color-text);background:var(--color-primary);border-color:var(--color-primary-hover)}.auth-language-switcher{justify-content:center;margin:0 auto var(--space-3)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}:where(button,input,select,textarea):disabled,[aria-disabled=true]{cursor:not-allowed;opacity:.52}.ui-panel{color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-raised)}.ui-toolbar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel)}.ui-button,.ui-field,.ui-select,.ui-textarea{min-height:var(--control-height);font:inherit;border-radius:var(--radius-control);transition:var(--transition-colors)}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);cursor:pointer}.ui-button:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-hover);border-color:var(--color-border-strong)}.ui-button:active:not(:disabled):not([aria-disabled=true]){filter:brightness(.92)}.ui-button--primary{color:var(--color-text);background:var(--color-primary);border-color:var(--color-primary)}.ui-button--primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui-button--danger{color:var(--color-danger);background:var(--color-danger-subtle);border-color:var(--color-danger)}.ui-field,.ui-select,.ui-textarea{width:100%;padding:var(--space-2) var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border)}.ui-field:hover:not(:disabled),.ui-select:hover:not(:disabled),.ui-textarea:hover:not(:disabled){border-color:var(--color-border-strong)}.ui-field[aria-invalid=true],.ui-select[aria-invalid=true],.ui-textarea[aria-invalid=true]{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-subtle)}.ui-badge{display:inline-flex;align-items:center;gap:var(--space-1);width:fit-content;padding:var(--space-1) var(--space-2);color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.ui-badge--success{color:var(--color-success);background:var(--color-success-subtle)}.ui-badge--warning{color:var(--color-warning);background:var(--color-warning-subtle)}.ui-badge--danger{color:var(--color-danger);background:var(--color-danger-subtle)}.ui-badge--info{color:var(--color-info);background:var(--color-info-subtle)}.ui-empty-state{display:grid;justify-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-6);color:var(--color-text-secondary);text-align:center;background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-panel)}.ui-status{min-height:1.25rem;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.ui-status--busy{color:var(--color-info)}.ui-status--success{color:var(--color-success)}.ui-status--warning{color:var(--color-warning)}.ui-status--error{color:var(--color-danger)}.ui-skeleton{overflow:hidden;min-height:1rem;background:var(--color-surface-hover);border-radius:var(--radius-sm);animation:ui-skeleton-pulse 1.4s ease-in-out infinite}@keyframes ui-skeleton-pulse{0%,to{opacity:.52}50%{opacity:.9}}.ui-toast-region{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:var(--z-toast);display:grid;gap:var(--space-2);width:min(24rem,calc(100vw - 2rem))}.ui-toast{padding:var(--space-3) var(--space-4);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);box-shadow:var(--shadow-raised)}.ui-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--space-4);background:var(--color-overlay)}.ui-modal{width:min(32rem,100%);max-height:calc(100dvh - 2rem);overflow:auto;color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-raised)}.btn,.btn-primary,.text-input,.field input,.password-toggle,.map-action-btn,.btn-preview-action,.btn-row-delete,.btn-row-preview,.btn-row-resize{transition:var(--transition-colors)}.text-input:focus,.text-input:focus-visible,.field input:focus,.field input:focus-visible,.auth-modal-field input:focus,.auth-modal-field input:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-color:var(--color-focus);box-shadow:var(--shadow-focus)}.text-input,.field input,.auth-modal-field input{border-color:var(--color-border-strong)}.btn-start,.btn-primary{background:var(--color-primary);border-color:var(--color-primary)}.btn-start:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.auth-card,.workspace-tabs-container,.top-header{border-color:var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-raised)}.error-summary,.auth-modal-status.error,.ai-status.is-error{color:var(--color-danger)}.auth-modal-status.success,.ai-status.is-success{color:var(--color-success)}.ai-status.is-busy{color:var(--color-info)}@media(max-width:600px){.ui-button,.ui-field,.ui-select,.field input,.btn-primary{min-height:var(--control-height-touch)}}
