:root{--text-on-primary:#1F1F1F;--text-on-danger:#FFFFFF;--text-on-accent:#FFFFFF}aside,body{transition:background-color .2s ease,color .2s ease,border-color .2s ease}@media (prefers-reduced-motion:reduce){aside,body{transition:none!important}}:root{--brand-primary:#3AF185;--brand-primary-hover:#3DD078;--brand-primary-pressed:#23A859;--brand-primary-disabled:#87D9A8;--surface-page:#F1F3F5;--surface-1:#FFFFFF;--surface-2:#F1F3F5;--surface-3:#D9DBDE;--container-action:#3AF185;--container-action-hover:#3DD078;--container-action-pressed:#23A859;--container-action-disabled:#87D9A8;--container-success:#3AF185;--container-warning:#FF9A3D;--container-error:#EA4335;--container-info:#3577D8;--text-primary:#3A3A3A;--text-secondary:#525252;--text-tertiary:#7B7F84;--text-action:#3DD078;--icon-primary:#3A3A3A;--icon-secondary:#525252;--icon-tertiary:#7B7F84;--icon-action:#3DD078;--outline-primary:#B0B2B5;--outline-secondary:#D9DBDE;--outline-action:#3AF185;--outline-subtle:#F1F3F5;--status-preparing:#10AAB4;--status-offline:#7B7F84;--text-success:#23A859;--text-error:#EA4335;--text-warning:#FF9A3D;--text-success-on-tint:#166534;--text-warning-on-tint:#92400E;--text-error-on-tint:#991B1B;--text-info-on-tint:#1E40AF}html[data-theme=dark]{--brand-primary:#3AF185;--brand-primary-hover:#3DD078;--brand-primary-pressed:#23A859;--brand-primary-disabled:#87D9A8;--surface-page:#262626;--surface-1:#3A3A3A;--surface-2:#525252;--surface-3:#7B7F84;--container-action:#3AF185;--container-action-hover:#3DD078;--container-action-pressed:#23A859;--container-action-disabled:#87D9A8;--container-success:#3AF185;--container-warning:#FF9A3D;--container-error:#EA4335;--container-info:#3577D8;--text-primary:#FFFFFF;--text-secondary:#D9DBDE;--text-tertiary:#B0B2B5;--text-action:#3AF185;--icon-primary:#FFFFFF;--icon-secondary:#D9DBDE;--icon-tertiary:#B0B2B5;--icon-action:#3AF185;--outline-primary:#B0B2B5;--outline-secondary:#525252;--outline-action:#3AF185;--outline-subtle:#525252;--status-preparing:#10AAB4;--status-offline:#B0B2B5;--text-success:#3AF185;--text-error:#FF6B5F;--text-warning:#FFB36B;--text-success-on-tint:#86EFAC;--text-warning-on-tint:#FCD34D;--text-error-on-tint:#FCA5A5;--text-info-on-tint:#93C5FD}@keyframes eco-fade-in{0%{opacity:0}to{opacity:1}}@keyframes eco-fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes eco-fade-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes eco-slide-in-left{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes eco-slide-in-right{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes eco-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes eco-pop-in{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes eco-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes eco-spin{to{transform:rotate(1turn)}}@keyframes eco-pulse-ring{0%{transform:scale(1);opacity:.7}to{transform:scale(2.2);opacity:0}}@keyframes eco-typing-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.eco-animate-fade-in{animation:eco-fade-in .4s ease-out both}.eco-animate-fade-up{animation:eco-fade-up .45s ease-out both}.eco-animate-fade-down{animation:eco-fade-down .45s ease-out both}.eco-animate-slide-in-left{animation:eco-slide-in-left .4s ease-out both}.eco-animate-slide-in-right{animation:eco-slide-in-right .4s ease-out both}.eco-animate-scale-in{animation:eco-scale-in .45s cubic-bezier(.175,.885,.32,1.275) both}.eco-animate-pop-in{animation:eco-pop-in .4s cubic-bezier(.175,.885,.32,1.275) both}.eco-lazy{opacity:0;will-change:opacity,transform}.eco-lazy.is-visible{animation:eco-fade-up .5s ease-out forwards}.eco-lazy[data-anim=fade-in].is-visible{animation:eco-fade-in .5s ease-out forwards}.eco-lazy[data-anim=fade-down].is-visible{animation:eco-fade-down .5s ease-out forwards}.eco-lazy[data-anim=slide-in-left].is-visible{animation:eco-slide-in-left .5s ease-out forwards}.eco-lazy[data-anim=slide-in-right].is-visible{animation:eco-slide-in-right .5s ease-out forwards}.eco-lazy[data-anim=scale-in].is-visible{animation:eco-scale-in .45s cubic-bezier(.175,.885,.32,1.275) forwards}.eco-lazy[data-anim=pop-in].is-visible{animation:eco-pop-in .4s cubic-bezier(.175,.885,.32,1.275) forwards}.eco-stagger>*{opacity:0;animation:eco-fade-up .45s ease-out forwards}.eco-stagger>:first-child{animation-delay:.05s}.eco-stagger>:nth-child(2){animation-delay:.1s}.eco-stagger>:nth-child(3){animation-delay:.15s}.eco-stagger>:nth-child(4){animation-delay:.2s}.eco-stagger>:nth-child(5){animation-delay:.25s}.eco-stagger>:nth-child(6){animation-delay:.3s}.eco-stagger>:nth-child(7){animation-delay:.35s}.eco-stagger>:nth-child(8){animation-delay:.4s}.eco-lazy-img{filter:blur(10px);transition:filter .4s ease-out}.eco-lazy-img.loaded{filter:blur(0)}.eco-skeleton{background:linear-gradient(90deg,var(--surface-2) 0,var(--surface-3) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:eco-shimmer 1.5s ease-in-out infinite;border-radius:4px}.eco-spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--surface-3);border-top-color:var(--brand-primary);border-radius:50%;animation:eco-spin .7s linear infinite}.eco-pulse-dot{position:relative;display:inline-block;width:8px;height:8px}.eco-pulse-dot:after,.eco-pulse-dot:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--brand-primary)}.eco-pulse-dot:after{animation:eco-pulse-ring 1.5s ease-out infinite}.eco-typing-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--brand-primary);animation:eco-typing-dot 1.4s infinite}.eco-typing-dot:nth-child(2){animation-delay:.2s}.eco-typing-dot:nth-child(3){animation-delay:.4s}.eco-press{transition:transform .12s ease-out}.eco-press:active{transform:scale(.97)}.eco-hover-lift{transition:transform .18s ease-out,box-shadow .18s ease-out}.eco-hover-lift:hover{transform:translateY(-1px);box-shadow:0 4px 12px -2px rgba(0,0,0,.08)}@media (prefers-reduced-motion:reduce){.eco-animate-fade-down,.eco-animate-fade-in,.eco-animate-fade-up,.eco-animate-pop-in,.eco-animate-scale-in,.eco-animate-slide-in-left,.eco-animate-slide-in-right,.eco-lazy.is-visible,.eco-pulse-dot:after,.eco-skeleton,.eco-stagger>*,.eco-sticky-pop,.eco-typing-dot{animation:none!important;opacity:1!important;transform:none!important}.eco-hover-lift:hover,.eco-press:active{transform:none!important;box-shadow:none!important}.eco-hover-lift,.eco-press{transition:none!important}.eco-input-pulse{animation:none!important;border-color:var(--container-error)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--container-error) 14%,transparent)!important}}@keyframes eco-field-pulse-border{0%,to{border-color:color-mix(in srgb,var(--container-error) 55%,transparent);box-shadow:0 0 0 0 transparent}50%{border-color:var(--container-error);box-shadow:0 0 0 3px color-mix(in srgb,var(--container-error) 12%,transparent)}}.eco-input-pulse{border-color:var(--container-error)!important;animation:eco-field-pulse-border 1.3s ease-in-out 3}@keyframes eco-sticky-pop{0%{opacity:0;transform:translateY(110%)}70%{transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.eco-sticky-pop{animation:eco-sticky-pop .4s cubic-bezier(.34,1.56,.64,1) both}[data-tooltip]{position:relative}[data-tooltip]:focus-visible:after,[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--text-primary);color:var(--surface-1);padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;z-index:var(--z-tooltip,90);pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.15);animation:eco-fade-in .15s ease-out}[data-tooltip]:focus-visible:before,[data-tooltip]:hover:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translateX(-50%);border:5px solid transparent;border-top:5px solid var(--text-primary);z-index:var(--z-tooltip,90);pointer-events:none;animation:eco-fade-in .15s ease-out}[data-tooltip-position=bottom]:focus-visible:after,[data-tooltip-position=bottom]:hover:after{bottom:auto;top:calc(100% + 8px)}[data-tooltip-position=bottom]:focus-visible:before,[data-tooltip-position=bottom]:hover:before{bottom:auto;top:calc(100% + 2px);border-top-color:transparent;border-bottom-color:var(--text-primary)}[data-tooltip-wrap]:focus-visible:after,[data-tooltip-wrap]:hover:after{white-space:normal;width:-moz-max-content;width:max-content;max-width:260px;text-align:center}.link{color:var(--brand-primary-pressed);text-decoration:none;font-weight:500;transition:color .15s}.link:hover{text-decoration:underline;color:var(--brand-primary)}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-size:13px;font-weight:500;color:var(--text-primary);display:inline-flex;align-items:center;gap:4px}.field__label--required:after{content:" *";color:var(--container-error);font-weight:600}.field__hint{color:var(--text-tertiary)}.field__error,.field__hint{font-size:12px;line-height:1.4}.field__error{color:var(--container-error)}.field--error .input,.field--error select,.field--error textarea{border-color:var(--container-error)}.form{display:flex;flex-direction:column;gap:14px}.form-row{display:flex;gap:12px;align-items:flex-start}.form-row>.field{flex:1;min-width:0}.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px;flex-wrap:wrap}.form-actions--start{justify-content:flex-start}.form-actions--space-between{justify-content:space-between}.form-section{display:flex;flex-direction:column;gap:14px;padding:16px 0;border-bottom:1px solid var(--outline-secondary)}.form-section:last-child{border-bottom:none}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--outline-secondary)}.tab{padding:10px 16px;font-weight:500;font-size:14px;color:var(--text-secondary);cursor:pointer;background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}.tab--active,.tab:hover{color:var(--text-primary)}.tab--active{border-bottom-color:var(--brand-primary)}.tab-panel{padding:20px 4px}.pagination{gap:4px;flex-wrap:wrap}.pagination,.pagination__btn{display:inline-flex;align-items:center}.pagination__btn{min-width:32px;height:32px;justify-content:center;padding:0 8px;border:1px solid var(--outline-secondary);background:var(--surface-1);border-radius:6px;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:border-color .15s,color .15s,background-color .15s}.pagination__btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--text-tertiary)}.pagination__btn:disabled{opacity:.4;cursor:not-allowed}.pagination__btn--active{background:var(--brand-primary);color:var(--text-on-primary);border-color:var(--brand-primary)}.pagination__ellipsis{padding:0 6px;color:var(--text-tertiary);font-size:13px}.breadcrumbs{display:inline-flex;align-items:center;gap:6px;font-size:13px}.breadcrumbs a{color:var(--text-secondary);text-decoration:none;transition:color .15s}.breadcrumbs a:hover{color:var(--brand-primary-pressed)}.breadcrumbs__separator{color:var(--text-tertiary)}.breadcrumbs__current{color:var(--text-primary);font-weight:500}.empty-state{padding:32px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary)}.empty-state--compact{padding:16px}.empty-state__icon{font-size:36px;opacity:.6;margin-bottom:4px;color:var(--text-tertiary)}.empty-state__title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.empty-state__message{font-size:13px;color:var(--text-secondary);line-height:1.4;max-width:360px;margin:0}.empty-state__actions{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.eco-skip-link{position:absolute;left:8px;top:-40px;z-index:10000;padding:8px 14px;background:var(--brand-primary);color:var(--text-on-primary);border-radius:8px;font-size:14px;font-weight:500;text-decoration:none;transition:top .15s ease-out}.eco-skip-link:focus,.eco-skip-link:focus-visible{top:8px;outline:2px solid var(--text-primary);outline-offset:2px}.skeleton-line{display:block;height:12px;width:100%;margin:4px 0;border-radius:4px;background:linear-gradient(90deg,var(--surface-2) 0,var(--surface-3) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:eco-shimmer 1.5s ease-in-out infinite}.skeleton-line--sm{height:10px}.skeleton-line--lg{height:16px}.skeleton-circle{border-radius:50%;background:var(--surface-2);animation:eco-shimmer 1.5s ease-in-out infinite}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:500;border-radius:6px;border:1px solid transparent;white-space:nowrap}.tag-green{background:color-mix(in srgb,var(--brand-primary-pressed) 14%,transparent);color:var(--brand-primary-pressed);border-color:color-mix(in srgb,var(--brand-primary-pressed) 30%,transparent)}.tag-orange{background:color-mix(in srgb,var(--container-warning) 14%,transparent);color:var(--container-warning);border-color:color-mix(in srgb,var(--container-warning) 30%,transparent)}.tag-blue{background:color-mix(in srgb,var(--container-info) 14%,transparent);color:var(--container-info);border-color:color-mix(in srgb,var(--container-info) 30%,transparent)}.tag-red{background:color-mix(in srgb,var(--container-error) 14%,transparent);color:var(--container-error);border-color:color-mix(in srgb,var(--container-error) 30%,transparent)}.tag-slate{background:var(--surface-2);color:var(--text-secondary);border-color:var(--outline-secondary)}.msg{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:8px;border:1px solid transparent;font-size:13px;line-height:1.5}.msg-success{background:color-mix(in srgb,var(--container-success) 12%,transparent);color:var(--text-success-on-tint);border-color:color-mix(in srgb,var(--container-success) 30%,transparent)}.msg-error{background:color-mix(in srgb,var(--container-error) 12%,transparent);color:var(--text-error-on-tint);border-color:color-mix(in srgb,var(--container-error) 30%,transparent)}.msg-warning{background:color-mix(in srgb,var(--container-warning) 12%,transparent);color:var(--text-warning-on-tint);border-color:color-mix(in srgb,var(--container-warning) 30%,transparent)}.msg-info{background:color-mix(in srgb,var(--container-info) 12%,transparent);color:var(--text-info-on-tint);border-color:color-mix(in srgb,var(--container-info) 30%,transparent)}.divider{display:flex;align-items:center;margin:20px 0;gap:12px;color:var(--text-tertiary);font-size:12px}.divider:after,.divider:before{content:"";flex:1;height:1px;background:var(--outline-secondary)}.btn-large{height:60px;padding:0 30px;font-size:16px;font-weight:700;border-radius:12px}.btn-icon{width:40px;height:40px;padding:0;aspect-ratio:1}.btn-block{display:flex;width:100%}html[data-theme=dark]{.bg-white{background-color:var(--surface-1)}.bg-slate-50{background-color:var(--surface-2)}.bg-slate-100,.bg-slate-200{background-color:var(--surface-3)}.bg-slate-300{background-color:color-mix(in srgb,var(--surface-3) 60%,var(--text-tertiary))}.bg-slate-900{background-color:var(--text-primary);color:var(--surface-1)}.text-slate-800,.text-slate-900{color:var(--text-primary)}.text-slate-500,.text-slate-600,.text-slate-700{color:var(--text-secondary)}.text-slate-200,.text-slate-300,.text-slate-400{color:var(--text-tertiary)}.border-slate-100,.border-slate-200,.border-slate-300{border-color:var(--outline-secondary)}.border-slate-400{border-color:var(--text-tertiary)}.divide-slate-100>*+*,.divide-slate-200>*+*{border-color:var(--outline-secondary)}.hover\:bg-slate-50:hover{background-color:var(--surface-2)}.hover\:bg-slate-100:hover{background-color:var(--surface-3)}.hover\:bg-white:hover{background-color:var(--surface-1)}.hover\:text-slate-900:hover{color:var(--text-primary)}.hover\:text-slate-700:hover{color:var(--text-secondary)}.hover\:border-slate-300:hover{border-color:var(--outline-secondary)}.placeholder\:text-slate-400::-moz-placeholder{color:var(--text-tertiary)}.placeholder\:text-slate-400::placeholder{color:var(--text-tertiary)}.placeholder\:text-slate-300::-moz-placeholder{color:var(--text-tertiary)}.placeholder\:text-slate-300::placeholder{color:var(--text-tertiary)}.focus\:ring-2:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary) 35%,transparent)}.bg-emerald-50,.bg-green-50,.bg-teal-50{background-color:color-mix(in srgb,var(--container-success) 14%,transparent)}.bg-emerald-100,.bg-green-100,.bg-teal-100{background-color:color-mix(in srgb,var(--container-success) 22%,transparent)}.bg-amber-50,.bg-orange-50,.bg-yellow-50{background-color:color-mix(in srgb,var(--container-warning) 14%,transparent)}.bg-amber-100,.bg-orange-100,.bg-yellow-100{background-color:color-mix(in srgb,var(--container-warning) 22%,transparent)}.bg-red-50,.bg-rose-50{background-color:color-mix(in srgb,var(--container-error) 14%,transparent)}.bg-red-100,.bg-rose-100{background-color:color-mix(in srgb,var(--container-error) 22%,transparent)}.bg-blue-50,.bg-cyan-50,.bg-indigo-50,.bg-sky-50{background-color:color-mix(in srgb,var(--container-info) 14%,transparent)}.bg-blue-100,.bg-cyan-100,.bg-indigo-100,.bg-sky-100{background-color:color-mix(in srgb,var(--container-info) 22%,transparent)}.bg-fuchsia-50,.bg-pink-50,.bg-purple-50,.bg-violet-50{background-color:color-mix(in srgb,#a855f7 14%,transparent)}.bg-fuchsia-100,.bg-pink-100,.bg-purple-100,.bg-violet-100{background-color:color-mix(in srgb,#a855f7 22%,transparent)}.bg-gray-50{background-color:var(--surface-2)}.bg-gray-100{background-color:var(--surface-3)}.text-emerald-700,.text-emerald-800,.text-green-700,.text-green-800{color:var(--text-success-on-tint)}.text-amber-700,.text-amber-800,.text-orange-700,.text-yellow-700{color:var(--text-warning-on-tint)}.text-red-700,.text-red-800,.text-rose-700{color:var(--text-error-on-tint)}.text-blue-700,.text-blue-800,.text-indigo-700,.text-sky-700{color:var(--text-info-on-tint)}}