.zwcsc-root{--zwcsc-navy: oklch(34% .072 264);--zwcsc-navy-deep: oklch(27% .078 264);--zwcsc-accent: oklch(70% .17 55);--zwcsc-accent-hover: oklch(64% .182 50);--zwcsc-surface: oklch(100% 0 0);--zwcsc-surface-muted: oklch(97.5% .006 264);--zwcsc-bot-bubble: oklch(96% .008 264);--zwcsc-text: oklch(29% .022 264);--zwcsc-text-muted: oklch(56% .022 264);--zwcsc-on-navy: oklch(98% 0 0);--zwcsc-border: oklch(91% .008 264);--zwcsc-danger: oklch(55% .16 25);--zwcsc-font: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;--zwcsc-radius: 8px;--zwcsc-radius-lg: 14px;--zwcsc-shadow-panel: 0 14px 40px oklch(20% .04 264 / .24);--zwcsc-shadow-launcher: 0 6px 18px oklch(20% .05 264 / .34);--zwcsc-duration: .2s;--zwcsc-ease: cubic-bezier(.16, 1, .3, 1);position:fixed;right:clamp(12px,3vw,24px);bottom:clamp(12px,3vw,24px);z-index:2147483000;display:flex;flex-direction:column;align-items:flex-end;font-family:var(--zwcsc-font);color:var(--zwcsc-text)}.zwcsc-root *,.zwcsc-root *:before,.zwcsc-root *:after{box-sizing:border-box}.zwcsc-launcher{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:none;border-radius:50%;background:var(--zwcsc-navy);color:var(--zwcsc-on-navy);cursor:pointer;box-shadow:var(--zwcsc-shadow-launcher);transition:transform var(--zwcsc-duration) var(--zwcsc-ease),background-color var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-launcher:hover{background:var(--zwcsc-navy-deep);transform:translateY(-2px)}.zwcsc-launcher:active{transform:translateY(0)}.zwcsc-launcher:focus-visible{outline:3px solid var(--zwcsc-accent);outline-offset:2px}.zwcsc-launcher__icon{width:26px;height:26px}.zwcsc-panel{display:flex;flex-direction:column;width:min(360px,calc(100vw - 24px));height:min(540px,calc(100vh - 96px));margin-bottom:12px;background:var(--zwcsc-surface);border-radius:var(--zwcsc-radius-lg);box-shadow:var(--zwcsc-shadow-panel);overflow:hidden;transform-origin:bottom right;animation:zwcsc-panel-in var(--zwcsc-duration) var(--zwcsc-ease)}@keyframes zwcsc-panel-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.zwcsc-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--zwcsc-navy);color:var(--zwcsc-on-navy)}.zwcsc-header__title{margin:0;font-size:1rem;font-weight:600}.zwcsc-header__subtitle{margin:2px 0 0;font-size:.75rem;opacity:.82}.zwcsc-header__close{display:flex;padding:4px;border:none;border-radius:6px;background:transparent;color:inherit;cursor:pointer;transition:background-color var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-header__close:hover{background:#ffffff29}.zwcsc-header__close:focus-visible{outline:2px solid var(--zwcsc-accent);outline-offset:1px}.zwcsc-conversation{flex:1;display:flex;flex-direction:column;gap:12px;padding:16px;overflow-y:auto;background:var(--zwcsc-surface-muted)}.zwcsc-message{display:flex;flex-direction:column;max-width:85%}.zwcsc-message--user{align-self:flex-end;align-items:flex-end}.zwcsc-message--bot{align-self:flex-start;align-items:flex-start}.zwcsc-bubble{padding:9px 13px;border-radius:var(--zwcsc-radius);font-size:.9375rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.zwcsc-bubble--user{background:var(--zwcsc-navy);color:var(--zwcsc-on-navy);border-bottom-right-radius:2px}.zwcsc-bubble--bot{background:var(--zwcsc-bot-bubble);color:var(--zwcsc-text);border-bottom-left-radius:2px}.zwcsc-bubble--bot a{color:var(--zwcsc-navy);text-decoration:underline;text-underline-offset:2px;word-break:break-all}.zwcsc-bubble--bot a:hover{text-decoration:none}.zwcsc-bubble--bot a:visited{color:var(--zwcsc-navy)}.zwcsc-bubble--bot a:focus-visible{outline:2px solid var(--zwcsc-accent);outline-offset:1px}.zwcsc-sources{margin-top:6px;display:flex;flex-direction:column;gap:4px}.zwcsc-sources__label{font-size:.6875rem;color:var(--zwcsc-text-muted)}.zwcsc-source{width:100%;padding:6px 9px;font:inherit;font-size:.8125rem;text-align:left;word-break:break-word;background:var(--zwcsc-surface);border:1px solid var(--zwcsc-border);border-radius:6px;color:var(--zwcsc-text-muted);cursor:pointer;transition:border-color var(--zwcsc-duration) var(--zwcsc-ease),background-color var(--zwcsc-duration) var(--zwcsc-ease),color var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-source:hover{border-color:var(--zwcsc-navy);background:var(--zwcsc-surface-muted);color:var(--zwcsc-text)}.zwcsc-source:focus-visible{outline:2px solid var(--zwcsc-accent);outline-offset:1px}.zwcsc-source[aria-expanded=true]{border-color:var(--zwcsc-navy);background:var(--zwcsc-bot-bubble);color:var(--zwcsc-text);font-weight:600}.zwcsc-source-answer{margin-top:6px}.zwcsc-resolution{margin-top:8px;display:flex;flex-direction:column;gap:6px}.zwcsc-resolution__label{font-size:.8125rem;color:var(--zwcsc-text-muted)}.zwcsc-resolution__buttons{display:flex;gap:8px}.zwcsc-resolution__btn{padding:5px 18px;font:inherit;font-size:.8125rem;color:var(--zwcsc-text);background:var(--zwcsc-surface);border:1px solid var(--zwcsc-border);border-radius:999px;cursor:pointer;transition:border-color var(--zwcsc-duration) var(--zwcsc-ease),background-color var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-resolution__btn:hover{border-color:var(--zwcsc-navy);background:var(--zwcsc-surface-muted)}.zwcsc-resolution__btn:focus-visible{outline:2px solid var(--zwcsc-accent);outline-offset:1px}.zwcsc-resolution--done{font-size:.8125rem;color:var(--zwcsc-text-muted)}.zwcsc-candidates{align-self:stretch;margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.zwcsc-candidate{width:100%;padding:9px 12px;font:inherit;font-size:.875rem;line-height:1.5;text-align:left;word-break:break-word;color:var(--zwcsc-text);background:var(--zwcsc-surface);border:1px solid var(--zwcsc-border);border-radius:var(--zwcsc-radius);cursor:pointer;transition:border-color var(--zwcsc-duration) var(--zwcsc-ease),background-color var(--zwcsc-duration) var(--zwcsc-ease),transform var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-candidate:hover{border-color:var(--zwcsc-navy);background:var(--zwcsc-surface-muted)}.zwcsc-candidate:active{transform:scale(.99)}.zwcsc-candidate:focus-visible{outline:2px solid var(--zwcsc-accent);outline-offset:1px}.zwcsc-candidate[aria-pressed=true]{border-color:var(--zwcsc-navy);background:var(--zwcsc-bot-bubble);font-weight:600}.zwcsc-candidate-answer{margin-top:6px}.zwcsc-status{display:flex;align-items:center;gap:8px;align-self:flex-start;font-size:.875rem;color:var(--zwcsc-text-muted)}.zwcsc-spinner{width:16px;height:16px;border:2px solid var(--zwcsc-border);border-top-color:var(--zwcsc-navy);border-radius:50%;animation:zwcsc-spin .7s linear infinite}@keyframes zwcsc-spin{to{transform:rotate(360deg)}}.zwcsc-error{align-self:flex-start;padding:9px 13px;font-size:.875rem;color:var(--zwcsc-danger);background:#ffecea;background:oklch(96% .03 25);border-radius:var(--zwcsc-radius)}.zwcsc-composer{display:flex;gap:8px;padding:12px;background:var(--zwcsc-surface);border-top:1px solid var(--zwcsc-border)}.zwcsc-composer__input{flex:1;min-width:0;padding:9px 12px;font:inherit;font-size:.9375rem;color:var(--zwcsc-text);background:var(--zwcsc-surface-muted);border:1px solid var(--zwcsc-border);border-radius:var(--zwcsc-radius);transition:border-color var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-composer__input:focus{outline:none;border-color:var(--zwcsc-navy)}.zwcsc-composer__input::placeholder{color:var(--zwcsc-text-muted)}.zwcsc-composer__send{display:flex;align-items:center;padding:0 16px;font:inherit;font-size:.9375rem;font-weight:600;color:var(--zwcsc-navy-deep);background:var(--zwcsc-accent);border:none;border-radius:var(--zwcsc-radius);cursor:pointer;transition:background-color var(--zwcsc-duration) var(--zwcsc-ease)}.zwcsc-composer__send:hover:not(:disabled){background:var(--zwcsc-accent-hover)}.zwcsc-composer__send:focus-visible{outline:3px solid var(--zwcsc-navy);outline-offset:1px}.zwcsc-composer__send:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion: reduce){.zwcsc-panel,.zwcsc-launcher,.zwcsc-candidate,.zwcsc-source,.zwcsc-resolution__btn{animation-duration:.01ms;transition-duration:.01ms}.zwcsc-spinner{animation:none}}.app-shell{display:flex;min-height:100vh}.app-shell__main{display:flex;flex:1;flex-direction:column;min-width:0}.app-shell__content{flex:1;padding:var(--space-6)}.sidebar{display:flex;width:var(--sidebar-width);flex-direction:column;flex-shrink:0;background:var(--color-nav-bg)}.sidebar__brand{display:flex;flex-direction:column;gap:2px;padding:var(--space-5) var(--space-5) var(--space-4)}.sidebar__brand-name{font-size:var(--text-md);font-weight:700;color:var(--color-nav-text-active)}.sidebar__brand-sub{font-size:var(--text-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-nav-text)}.sidebar__nav{display:flex;flex-direction:column;gap:2px;padding:var(--space-2)}.sidebar__link{padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--color-nav-text);transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sidebar__link:hover{background:#ffffff12;color:var(--color-nav-text-active)}.sidebar__link[data-status=active]{background:var(--color-nav-active-bg);color:var(--color-nav-text-active);font-weight:600}.sidebar__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.topbar{display:flex;height:var(--topbar-height);align-items:center;justify-content:space-between;padding:0 var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.topbar__actions,.user-menu{display:flex;align-items:center;gap:var(--space-3)}.user-menu__email{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);color:var(--color-text-muted)}.user-menu__signout{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:var(--text-sm);color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.user-menu__signout:hover:not(:disabled){color:var(--color-text);border-color:var(--color-text-subtle)}.user-menu__signout:active:not(:disabled){background:var(--color-surface-sunken)}.user-menu__signout:disabled{opacity:.5;cursor:not-allowed}.user-menu__signout:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.brand-switcher{display:inline-flex;align-items:center;gap:var(--space-2)}.brand-switcher__label{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;color:var(--color-text-subtle)}.brand-switcher__select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out)}.brand-switcher__select:hover{border-color:var(--color-primary)}.brand-switcher__select:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.auth-splash{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:var(--space-4);align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-text)}.auth-splash__brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.auth-splash__brand-mark{font-size:var(--text-xl);font-weight:600;letter-spacing:.02em;color:var(--color-text)}.auth-splash__brand-sub{font-size:var(--text-sm);color:var(--color-text-muted);letter-spacing:.18em;text-transform:uppercase}.auth-splash__hint{font-size:var(--text-xs);color:var(--color-text-subtle);animation:auth-splash-pulse 1.6s var(--ease-out) infinite}@keyframes auth-splash-pulse{0%,to{opacity:.4}50%{opacity:1}}.home-page{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5)}.home-page__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.home-page__title{margin:0;font-size:var(--text-xl);font-weight:700;color:var(--color-text)}.home-page__brand{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}.home-status{margin:0;padding:var(--space-5);text-align:center;color:var(--color-text-muted);font-size:var(--text-base)}.home-status--error{color:var(--color-danger)}.home-content{display:flex;flex-direction:column;gap:var(--space-6)}.home-section{display:flex;flex-direction:column;gap:var(--space-3)}.home-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.home-section__title{margin:0;font-size:var(--text-md);font-weight:600;color:var(--color-text)}.home-section__desc{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}.home-link-button{padding:0;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--color-primary);background:none;border:none;cursor:pointer}.home-link-button:hover{color:var(--color-primary-hover);text-decoration:underline}.home-link-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.home-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);margin:0}.home-kpi-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.home-kpi-card__label{font-size:var(--text-sm);color:var(--color-text-muted)}.home-kpi-card__value{margin:0;font-size:var(--text-xl);font-weight:700;line-height:1.1;color:var(--color-text);font-variant-numeric:tabular-nums}.home-empty{margin:0;padding:var(--space-4);font-size:var(--text-sm);color:var(--color-text-subtle);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.home-noresult-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.home-noresult-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.home-noresult-item__query{flex:1 1 auto;min-width:0;font-size:var(--text-base);color:var(--color-text);word-break:break-word}.home-noresult-item__count{flex:0 0 auto;font-size:var(--text-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.home-noresult-item__action{flex:0 0 auto;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);white-space:nowrap}.home-noresult-item__action:hover{background:var(--color-primary-hover)}.home-noresult-item__action:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.faq-page{display:flex;flex-direction:column;gap:var(--space-5)}.faq-page__header{display:flex;flex-direction:column;gap:var(--space-2)}.faq-page__title{font-size:var(--text-xl);font-weight:700;color:var(--color-text)}.faq-filter{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.faq-filter__label{font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;color:var(--color-text-subtle);text-transform:uppercase}.faq-filter__input,.faq-filter__select{height:36px;padding:0 var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out)}.faq-filter__input{width:380px;max-width:100%}.faq-filter__select{min-width:200px;max-width:280px}.faq-filter .faq-tree-picker{min-width:260px}.faq-filter__input:focus,.faq-filter__select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.faq-filter__radio-group{display:inline-flex;align-items:center;height:36px;gap:var(--space-3);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface)}.faq-filter__radio-option{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text);cursor:pointer}.faq-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.faq-list__table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.faq-list__th{padding:var(--space-3) var(--space-4);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;color:var(--color-text-subtle);text-align:left;text-transform:uppercase;background:var(--color-surface-sunken);border-bottom:1px solid var(--color-border)}.faq-list__th--published,.faq-list__td--published{width:88px}.faq-list__th--category,.faq-list__td--category{width:220px}.faq-list__th--updated,.faq-list__td--updated{width:160px;white-space:nowrap}.faq-list__row{border-bottom:1px solid var(--color-border)}.faq-list__row:last-child{border-bottom:none}.faq-list__td{padding:var(--space-3) var(--space-4);color:var(--color-text);vertical-align:top}.faq-list__td--question{line-height:var(--leading-normal)}.faq-list__td--updated{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.faq-list__pill{display:inline-block;padding:2px var(--space-2);font-size:var(--text-xs);font-weight:600;border-radius:999px}.faq-list__pill--published{color:var(--color-success);background:#dcf7e1}.faq-list__pill--unpublished{color:var(--color-text-subtle);background:var(--color-surface-sunken);border:1px solid var(--color-border)}.faq-list__switch{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted)}.faq-list__switch-input{accent-color:var(--color-success);cursor:pointer;width:16px;height:16px}.faq-list__switch-input:disabled{cursor:progress;opacity:.5}.faq-list__switch-input:disabled~.faq-list__switch-label{opacity:.5}.faq-list__switch-input:checked~.faq-list__switch-label{color:var(--color-success)}.faq-status{padding:var(--space-6);text-align:center;font-size:var(--text-md);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.faq-status--error{color:var(--color-danger);background:#fff6f5;background:oklch(98% .02 25);border-color:#febab4}.faq-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-2) 0}.faq-pagination__status{font-size:var(--text-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.faq-pagination__button{padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.faq-pagination__button:hover:not(:disabled){background:var(--color-primary-soft);border-color:var(--color-primary)}.faq-pagination__button:disabled{color:var(--color-text-subtle);cursor:not-allowed;opacity:.6}.faq-page__toolbar{display:flex;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap}.faq-page__create-button{margin-left:auto;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.faq-page__create-button:hover{background:var(--color-primary-hover)}.faq-list__th--actions,.faq-list__td--actions{width:120px;white-space:nowrap}.faq-list__action{padding:2px var(--space-2);margin-right:var(--space-1);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.faq-list__action--edit{color:var(--color-primary)}.faq-list__action--edit:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.faq-list__action--delete{color:var(--color-danger)}.faq-list__action--delete:hover{background:#ffe7e4;background:oklch(95% .04 25);border-color:var(--color-danger)}.faq-list__action--loading{opacity:.7;cursor:progress}.faq-list__action--loading:disabled{cursor:progress}.faq-page__error-banner{padding:var(--space-3) var(--space-4);background:#fff6f5;background:oklch(98% .02 25);border:1px solid oklch(85% .08 25);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--text-sm)}.faq-dialog{padding:0;border:none;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);max-width:640px;width:90vw}.faq-dialog::backdrop{background:#11161f73}.faq-dialog__form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.faq-dialog__header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-3)}.faq-dialog__title{font-size:var(--text-lg);font-weight:700;color:var(--color-text)}.faq-dialog__field{display:flex;flex-direction:column;gap:var(--space-2)}.faq-dialog__field--inline{flex-direction:row;align-items:center}.faq-dialog__label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.faq-dialog__input,.faq-dialog__textarea,.faq-dialog__select{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md)}.faq-dialog__textarea{resize:vertical;min-height:140px;line-height:var(--leading-normal)}.faq-dialog__input:focus,.faq-dialog__textarea:focus,.faq-dialog__select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.faq-dialog__checkbox-label{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text);cursor:pointer}.faq-dialog__error{font-size:var(--text-xs);color:var(--color-danger)}.faq-dialog__error--submit{padding:var(--space-2) var(--space-3);background:#fff6f5;background:oklch(98% .02 25);border:1px solid oklch(85% .08 25);border-radius:var(--radius-md);font-size:var(--text-sm)}.faq-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--color-border);padding-top:var(--space-3)}.faq-dialog__button{padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.faq-dialog__button:disabled{opacity:.6;cursor:not-allowed}.faq-dialog__button--primary{color:var(--color-on-primary);background:var(--color-primary);border:1px solid var(--color-primary)}.faq-dialog__button--primary:hover:not(:disabled){background:var(--color-primary-hover)}.faq-dialog__button--secondary{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong)}.faq-dialog__button--secondary:hover:not(:disabled){background:var(--color-surface-sunken)}.faq-dialog__suggestions{padding:var(--space-3);background:var(--color-surface-sunken);border-radius:var(--radius-md);border:1px dashed var(--color-border-strong)}.faq-dialog__suggestions-label{margin:0 0 var(--space-2) 0;font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted)}.faq-dialog__suggestions-list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.faq-dialog__suggestion{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.faq-dialog__suggestion:hover{background:var(--color-surface-sunken);border-color:var(--color-primary)}.faq-dialog__suggestion--active{background:var(--color-primary-soft);color:var(--color-primary);border-color:var(--color-primary);font-weight:600}.faq-dialog__suggestion-category{font-weight:500}.faq-dialog__suggestion-confidence{font-variant-numeric:tabular-nums;font-size:var(--text-xs);opacity:.7}.faq-dialog__suggestion--active .faq-dialog__suggestion-confidence{opacity:1}.faq-tree-picker{position:relative;min-width:0}.faq-tree-picker__trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-base);text-align:start;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out)}.faq-tree-picker__trigger:hover:not(:disabled){border-color:var(--color-primary)}.faq-tree-picker__trigger:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.faq-tree-picker__trigger:disabled{cursor:not-allowed;color:var(--color-text-muted);background:var(--color-surface-sunken)}.faq-tree-picker__trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faq-tree-picker__trigger-caret{flex:none;font-size:var(--text-xs);color:var(--color-text-muted)}.faq-tree-picker__panel{position:absolute;z-index:20;inset-inline-start:0;inset-block-start:calc(100% + var(--space-1));width:max(100%,280px);display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md, 0 8px 24px rgb(0 0 0 / 12%));overflow:hidden}.faq-tree-picker__search{margin:var(--space-2);padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md)}.faq-tree-picker__search:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.faq-tree-picker__list{margin:0;padding:0 0 var(--space-1);list-style:none;max-height:280px;overflow-y:auto}.faq-tree-picker__option{display:flex;align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-3);padding-inline-start:calc(var(--space-3) + var(--depth, 0) * var(--space-5));cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.faq-tree-picker__option--active{background:var(--color-surface-sunken)}.faq-tree-picker__option[aria-selected=true]{color:var(--color-primary);font-weight:600}.faq-tree-picker__option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faq-tree-picker__empty{padding:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}@media (prefers-reduced-motion: reduce){.faq-tree-picker__trigger,.faq-tree-picker__option{transition:none}}.faq-list__breadcrumb{display:inline}.faq-list__breadcrumb-parent,.faq-list__breadcrumb-sep{color:var(--color-text-muted)}.faq-list__breadcrumb-current{color:var(--color-text)}.categories-page{display:flex;flex-direction:column;gap:var(--space-5)}.categories-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.categories-page__heading-group{display:flex;flex-direction:column;gap:var(--space-2)}.categories-page__title{font-size:var(--text-xl);font-weight:700;color:var(--color-text)}.categories-page__brand{font-size:var(--text-sm);color:var(--color-text-muted)}.categories-page__create-button{padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.categories-page__create-button:hover{background:var(--color-primary-hover)}.categories-status{padding:var(--space-6);text-align:center;font-size:var(--text-md);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.categories-status--error{color:var(--color-danger);background:#fff6f5;background:oklch(98% .02 25);border-color:#febab4}.category-tree{list-style:none;margin:0;padding:0}.category-tree:not(.category-tree--nested){background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.category-node{border-bottom:1px solid var(--color-border)}.category-node:last-child{border-bottom:none}.category-node__row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-inline-start:calc(var(--space-4) + var(--depth, 0) * var(--space-5));transition:background var(--duration-fast) var(--ease-out)}.category-node__row:hover{background:var(--color-surface-sunken)}.category-node__label{font-weight:700;color:var(--color-text)}.category-node__slug{font-size:var(--text-xs);color:var(--color-text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.category-node__count{display:inline-block;margin-inline-start:auto;padding:2px var(--space-2);font-size:var(--text-xs);font-weight:600;border-radius:999px;color:var(--color-text-muted);background:var(--color-surface-sunken);font-variant-numeric:tabular-nums;white-space:nowrap}.category-node__pill{display:inline-block;padding:2px var(--space-2);font-size:var(--text-xs);font-weight:600;border-radius:999px;white-space:nowrap}.category-node__pill--published{color:var(--color-success);background:#dcf7e1}.category-node__pill--unpublished{color:var(--color-text-subtle);background:var(--color-surface-sunken);border:1px solid var(--color-border)}.category-node__switch{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted)}.category-node__switch-input{accent-color:var(--color-success);cursor:pointer;width:16px;height:16px}.category-node__switch-input:disabled{cursor:progress;opacity:.5}.category-node__switch-input:disabled~.category-node__switch-label{opacity:.5}.category-node__switch-input:checked~.category-node__switch-label{color:var(--color-success)}.category-node__actions{display:inline-flex;gap:var(--space-1);white-space:nowrap}.category-node__action{padding:2px var(--space-2);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.category-node__action:disabled{color:var(--color-text-subtle);cursor:not-allowed;opacity:.6}.category-node__action--add{color:var(--color-text)}.category-node__action--add:hover:not(:disabled){background:var(--color-surface-sunken);border-color:var(--color-border-strong)}.category-node__action--edit{color:var(--color-primary)}.category-node__action--edit:hover:not(:disabled){background:var(--color-primary-soft);border-color:var(--color-primary)}.category-node__action--delete{color:var(--color-danger)}.category-node__action--delete:hover:not(:disabled){background:#ffe7e4;background:oklch(95% .04 25);border-color:var(--color-danger)}.category-dialog{padding:0;border:none;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);max-width:560px;width:90vw}.category-dialog::backdrop{background:#11161f73}.category-dialog__form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.category-dialog__header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-3)}.category-dialog__title{font-size:var(--text-lg);font-weight:700;color:var(--color-text)}.category-dialog__field{display:flex;flex-direction:column;gap:var(--space-2)}.category-dialog__field--inline{flex-direction:row;align-items:center}.category-dialog__label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.category-dialog__input{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md)}.category-dialog__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.category-dialog__input:read-only{background:var(--color-surface-sunken);color:var(--color-text-muted);cursor:not-allowed}.category-dialog__hint{font-size:var(--text-xs);color:var(--color-text-muted)}.category-dialog__checkbox-label{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text);cursor:pointer}.category-dialog__error{font-size:var(--text-xs);color:var(--color-danger)}.category-dialog__error--submit{padding:var(--space-2) var(--space-3);background:#fff6f5;background:oklch(98% .02 25);border:1px solid oklch(85% .08 25);border-radius:var(--radius-md);font-size:var(--text-sm)}.category-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--color-border);padding-top:var(--space-3)}.category-dialog__button{padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.category-dialog__button:disabled{opacity:.6;cursor:not-allowed}.category-dialog__button--primary{color:var(--color-on-primary);background:var(--color-primary);border:1px solid var(--color-primary)}.category-dialog__button--primary:hover:not(:disabled){background:var(--color-primary-hover)}.category-dialog__button--secondary{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong)}.category-dialog__button--secondary:hover:not(:disabled){background:var(--color-surface-sunken)}.category-delete-dialog{padding:0;border:none;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);max-width:480px;width:90vw}.category-delete-dialog::backdrop{background:#11161f73}.category-delete-dialog__body{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.category-delete-dialog__header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-3)}.category-delete-dialog__title{font-size:var(--text-lg);font-weight:700;color:var(--color-text)}.category-delete-dialog__message{font-size:var(--text-md);color:var(--color-text)}.category-delete-dialog__warning,.category-delete-dialog__error{padding:var(--space-2) var(--space-3);background:#fff6f5;background:oklch(98% .02 25);border:1px solid oklch(85% .08 25);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--text-sm)}.category-delete-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--color-border);padding-top:var(--space-3)}.category-delete-dialog__button{padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.category-delete-dialog__button:disabled{opacity:.6;cursor:not-allowed}.category-delete-dialog__button--secondary{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong)}.category-delete-dialog__button--secondary:hover:not(:disabled){background:var(--color-surface-sunken)}.category-delete-dialog__button--danger{color:var(--color-on-primary);background:var(--color-danger);border:1px solid var(--color-danger)}.category-delete-dialog__button--danger:hover:not(:disabled){background:#c53637}.category-node__handle{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--space-1);margin-inline-end:var(--space-1);color:var(--color-text-subtle);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--text-md);line-height:1;cursor:grab;touch-action:none;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.category-node__handle:hover{color:var(--color-text);background:var(--color-surface-sunken)}.category-node__handle:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.category-node__handle:active{cursor:grabbing}.category-node--dragging{opacity:.5;will-change:transform}.category-tree--overlay{list-style:none;margin:0;padding:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);cursor:grabbing}.category-node--overlay{border-bottom:none}@media (prefers-reduced-motion: reduce){.category-node__row,.category-node__action,.category-node__handle,.categories-page__create-button,.category-dialog__button,.category-delete-dialog__button{transition:none}}.stats-page{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5)}.stats-page__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.stats-page__title{margin:0;font-size:var(--text-xl);font-weight:700;color:var(--color-text)}.stats-page__brand{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}.stats-period{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.stats-period__field{display:flex;flex-direction:column;gap:var(--space-1)}.stats-period__label{font-size:var(--text-xs);color:var(--color-text-muted)}.stats-period__input{padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}.stats-period__input:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.stats-status{margin:0;padding:var(--space-5);text-align:center;color:var(--color-text-muted);font-size:var(--text-base)}.stats-status--error{color:var(--color-danger)}.stats-content{display:flex;flex-direction:column;gap:var(--space-6)}.stats-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);margin:0}.stats-kpi-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stats-kpi-card__label{font-size:var(--text-sm);color:var(--color-text-muted)}.stats-kpi-card__value{margin:0;font-size:var(--text-xl);font-weight:700;line-height:1.1;color:var(--color-text);font-variant-numeric:tabular-nums}.stats-section{display:flex;flex-direction:column;gap:var(--space-3)}.stats-section__title{margin:0;font-size:var(--text-md);font-weight:600;color:var(--color-text)}.stats-chart{padding:var(--space-4) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stats-device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}.stats-device-pie{display:flex;flex-direction:column;gap:var(--space-2)}.stats-device-pie__title{margin:0;font-size:.875rem;font-weight:600;text-align:center}.stats-query-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4)}.stats-query-table{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stats-query-table__title{margin:0;font-size:var(--text-base);font-weight:600;color:var(--color-text)}.stats-query-table__empty{margin:0;padding:var(--space-3) 0;font-size:var(--text-sm);color:var(--color-text-subtle)}.stats-query-table__table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.stats-query-table__table th,.stats-query-table__table td{padding:var(--space-2) var(--space-2);text-align:left;border-bottom:1px solid var(--color-border);color:var(--color-text)}.stats-query-table__table th{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted)}.stats-query-table__count-col{width:4rem;text-align:right;font-variant-numeric:tabular-nums}.stats-daily-summary{overflow-x:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stats-daily-summary__empty{margin:0;padding:var(--space-5);text-align:center;font-size:var(--text-sm);color:var(--color-text-subtle)}.stats-daily-summary__table{width:100%;border-collapse:collapse;font-size:var(--text-sm);white-space:nowrap;font-variant-numeric:tabular-nums}.stats-daily-summary__table th,.stats-daily-summary__table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text)}.stats-daily-summary__table thead th{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);background:var(--color-surface)}.stats-daily-summary__group-head{text-align:center;border-left:1px solid var(--color-border)}.stats-daily-summary__num{text-align:right}.stats-daily-summary__date-col{position:sticky;left:0;z-index:1;text-align:left;font-weight:600;background:var(--color-surface)}.login{display:grid;grid-template-columns:minmax(280px,34%) 1fr;min-height:100vh;background:var(--color-bg)}.login__brand{background:var(--color-nav-bg);color:var(--color-nav-text-active);display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2);padding:var(--space-8) var(--space-6)}.login__brand-mark{font-size:var(--text-xl);font-weight:600;letter-spacing:.02em}.login__brand-sub{font-size:var(--text-sm);color:var(--color-nav-text);letter-spacing:.18em;text-transform:uppercase}.login__brand-tag{font-size:var(--text-sm);color:var(--color-nav-text);margin-top:var(--space-3)}.login__panel{display:flex;align-items:center;justify-content:center;padding:var(--space-6)}.login__card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form__title{font-size:var(--text-xl);font-weight:600;color:var(--color-text)}.auth-form__sub{margin-top:calc(var(--space-3) * -1);font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.5}.auth-form__error{margin:0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--color-danger);color:var(--color-danger);font-size:var(--text-sm)}.auth-form__submit{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:var(--text-base);font-weight:600;color:var(--color-on-primary);background:var(--color-primary);border:none;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-2);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.auth-form__submit:hover:not(:disabled){background:var(--color-primary-hover)}.auth-form__submit:active:not(:disabled){transform:translateY(1px)}.auth-form__submit:disabled{background:var(--color-border-strong);cursor:not-allowed}.auth-form__submit:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field__label{font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}.field__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:var(--text-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.field__input:hover:not(:disabled){border-color:var(--color-text-subtle)}.field__input:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.field__input:disabled{background:var(--color-surface-sunken);color:var(--color-text-muted);cursor:not-allowed}@media (max-width: 720px){.login{grid-template-columns:1fr}.login__brand{padding:var(--space-6)}}.admin-test-page{display:flex;flex-direction:column;gap:var(--space-5);height:calc(100vh - var(--topbar-height) - var(--space-6) * 2);height:calc(100dvh - var(--topbar-height) - var(--space-6) * 2)}.admin-test-page__header{display:flex;flex-direction:column;gap:var(--space-2)}.admin-test-page__title{font-size:var(--text-xl);font-weight:700;color:var(--color-text)}.admin-test-page__description{max-width:70ch;color:var(--color-text-subtle);font-size:var(--text-sm)}.admin-test-toolbar{display:flex;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap}.admin-test-toolbar__status{color:var(--color-text-subtle);font-size:var(--text-sm);margin-left:auto}.admin-test-toggle{display:flex;flex-direction:column;gap:var(--space-1)}.admin-test-toggle__label{font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;color:var(--color-text-subtle);text-transform:uppercase}.admin-test-toggle__group{display:inline-flex;align-items:center;height:36px;gap:var(--space-3);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface)}.admin-test-toggle__option{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text);cursor:pointer}.admin-test-preview-frame{flex:1;min-height:0;width:100%;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.admin-test-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.preview-skeleton{display:flex;align-items:center;justify-content:center;width:100%;min-height:100vh;padding:var(--space-5);background:var(--color-surface-sunken)}.preview-skeleton__card{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);max-width:420px;padding:var(--space-6);text-align:center;background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg)}.preview-skeleton__badge{padding:2px 10px;font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;color:var(--color-text-subtle);background:var(--color-surface-sunken);border-radius:999px}.preview-skeleton__title{font-size:var(--text-lg);font-weight:700;color:var(--color-text)}.preview-skeleton__desc{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-subtle)}.preview-skeleton__lines{align-self:stretch;display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.preview-skeleton__lines span{height:12px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface-sunken) 50%,var(--color-border) 75%);background-size:200% 100%;animation:preview-skeleton-shimmer 1.4s ease-in-out infinite}.preview-skeleton__lines span:nth-child(2){width:80%}.preview-skeleton__lines span:nth-child(3){width:60%}@keyframes preview-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.preview-skeleton__lines span{animation:none}}:root{--color-bg: oklch(96.5% .005 255);--color-surface: oklch(100% 0 0);--color-surface-sunken: oklch(98% .004 255);--color-border: oklch(90% .008 255);--color-border-strong: oklch(83% .012 255);--color-text: oklch(30% .02 262);--color-text-muted: oklch(52% .02 262);--color-text-subtle: oklch(64% .015 262);--color-primary: oklch(55% .17 256);--color-primary-hover: oklch(48% .17 256);--color-primary-soft: oklch(95% .035 256);--color-on-primary: oklch(100% 0 0);--color-success: oklch(62% .15 150);--color-warning: oklch(75% .14 75);--color-danger: oklch(58% .2 25);--color-nav-bg: oklch(31% .045 262);--color-nav-text: oklch(78% .018 262);--color-nav-text-active: oklch(99% 0 0);--color-nav-active-bg: oklch(41% .08 260);--font-sans: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, system-ui, sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--leading-normal: 1.6;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px oklch(20% .02 262 / .06);--shadow-md: 0 4px 12px oklch(20% .02 262 / .08);--duration-fast: .12s;--duration-normal: .2s;--ease-out: cubic-bezier(.16, 1, .3, 1);--sidebar-width: 232px;--topbar-height: 56px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,p,ul{margin:0}a{color:inherit;text-decoration:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
