.help-support-overlay-enter-active[data-v-0f0d4d1c],.help-support-overlay-leave-active[data-v-0f0d4d1c]{transition:opacity .15s ease}.help-support-overlay-enter-active .help-support-modal[data-v-0f0d4d1c],.help-support-overlay-leave-active .help-support-modal[data-v-0f0d4d1c]{transition:transform .15s ease,opacity .15s ease}.help-support-overlay-enter-from[data-v-0f0d4d1c],.help-support-overlay-leave-to[data-v-0f0d4d1c]{opacity:0}.help-support-overlay-enter-from .help-support-modal[data-v-0f0d4d1c],.help-support-overlay-leave-to .help-support-modal[data-v-0f0d4d1c]{opacity:0;transform:translateY(.5rem) scale(.98)}.help-thank-overlay-enter-active[data-v-0f0d4d1c],.help-thank-overlay-leave-active[data-v-0f0d4d1c]{transition:opacity .18s ease}.help-thank-overlay-enter-active .help-thank-modal[data-v-0f0d4d1c],.help-thank-overlay-leave-active .help-thank-modal[data-v-0f0d4d1c]{transition:transform .18s ease,opacity .18s ease}.help-thank-overlay-enter-from[data-v-0f0d4d1c],.help-thank-overlay-leave-to[data-v-0f0d4d1c]{opacity:0}.help-thank-overlay-enter-from .help-thank-modal[data-v-0f0d4d1c],.help-thank-overlay-leave-to .help-thank-modal[data-v-0f0d4d1c]{opacity:0;transform:translateY(.35rem) scale(.97)}.help-thank-modal-overlay[data-v-0f0d4d1c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,2vw,1.5rem);background:color-mix(in oklab,var(--bg-overlay) 82%,black);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.help-thank-modal[data-v-0f0d4d1c]{width:100%;max-width:24rem;padding:1.65rem 1.45rem 1.4rem;text-align:center;background:color-mix(in oklab,var(--bg-card) 94%,#0a1020);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);box-shadow:0 26px 70px #00000073}.help-thank-modal__mark[data-v-0f0d4d1c]{display:flex;align-items:center;justify-content:center;width:3.15rem;height:3.15rem;margin:0 auto 1.1rem;border-radius:50%;background:color-mix(in oklab,var(--accent-subtle) 78%,transparent);border:1px solid color-mix(in oklab,var(--accent) 30%,var(--border));color:var(--accent)}.help-thank-modal__title[data-v-0f0d4d1c]{margin:0 0 .68rem;font-size:1.2rem;font-weight:700;color:var(--text);letter-spacing:-.01em}.help-thank-modal__desc[data-v-0f0d4d1c]{margin:0 0 1.35rem}.help-thank-modal__lead[data-v-0f0d4d1c]{margin:0 0 .4rem;font-size:.9375rem;line-height:1.5;font-weight:600;color:var(--text)}.help-thank-modal__sub[data-v-0f0d4d1c]{margin:0;font-size:.84rem;line-height:1.5}.help-thank-modal__sub--muted[data-v-0f0d4d1c]{color:var(--text-muted)}.help-thank-modal__sub--warn[data-v-0f0d4d1c]{color:var(--danger)}.help-thank-modal__ok[data-v-0f0d4d1c]{display:flex;align-items:center;width:100%;text-align:center;justify-content:center}.help-discard-overlay-enter-active[data-v-0f0d4d1c],.help-discard-overlay-leave-active[data-v-0f0d4d1c]{transition:opacity .18s ease}.help-discard-overlay-enter-active .help-discard-modal[data-v-0f0d4d1c],.help-discard-overlay-leave-active .help-discard-modal[data-v-0f0d4d1c]{transition:transform .18s ease,opacity .18s ease}.help-discard-overlay-enter-from[data-v-0f0d4d1c],.help-discard-overlay-leave-to[data-v-0f0d4d1c]{opacity:0}.help-discard-overlay-enter-from .help-discard-modal[data-v-0f0d4d1c],.help-discard-overlay-leave-to .help-discard-modal[data-v-0f0d4d1c]{opacity:0;transform:translateY(.35rem) scale(.97)}.help-discard-modal-overlay[data-v-0f0d4d1c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--bg-overlay)}.help-discard-modal[data-v-0f0d4d1c]{width:100%;max-width:26rem;padding:1.35rem 1.35rem 1.25rem;text-align:left;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 24px 64px #0006;outline:none}.help-discard-modal__title[data-v-0f0d4d1c]{margin:0 0 .65rem;font-size:1.0625rem;font-weight:700;color:var(--text)}.help-discard-modal__message[data-v-0f0d4d1c]{margin:0 0 1.25rem;font-size:.875rem;line-height:1.5;color:var(--text-muted)}.help-discard-modal__actions[data-v-0f0d4d1c]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.help-support-modal-overlay[data-v-0f0d4d1c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:max(.75rem,env(safe-area-inset-top,0px)) max(.75rem,env(safe-area-inset-right,0px)) max(.75rem,env(safe-area-inset-bottom,0px)) max(.75rem,env(safe-area-inset-left,0px));padding-top:max(1.25rem,env(safe-area-inset-top,0px));overflow-y:auto;background:var(--bg-overlay)}.help-support-modal[data-v-0f0d4d1c]{width:100%;max-width:min(44rem,calc(100vw - 1.5rem));margin:1.25rem auto 2rem;max-height:min(calc(100vh - 2.5rem),56rem);display:flex;flex-direction:column;min-height:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 20px 60px #00000059;outline:none}.help-support-modal--form .help-support-modal__header[data-v-0f0d4d1c]{flex-shrink:0}.help-support-modal__intro[data-v-0f0d4d1c]{flex-shrink:0;margin:0;padding:.5rem 1.5rem 0;font-size:.875rem;line-height:1.55;color:var(--text-muted)}.help-support-modal__form[data-v-0f0d4d1c]{display:flex;flex-direction:column;flex:1;min-height:0}.help-support-modal__scroll[data-v-0f0d4d1c]{flex:1;min-height:0;overflow-y:auto;padding:.75rem 1.5rem 1.35rem}.help-support-modal__section[data-v-0f0d4d1c]{padding-top:1.1rem}.help-support-modal__section[data-v-0f0d4d1c]:first-child{padding-top:.5rem}.help-support-modal__section+.help-support-modal__section[data-v-0f0d4d1c]{margin-top:1.15rem;padding-top:1.2rem;border-top:1px solid var(--border)}.help-support-modal__section-title[data-v-0f0d4d1c]{margin:0 0 .75rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.help-support-modal__field.form-group[data-v-0f0d4d1c]{margin-bottom:0}.help-support-modal .form-group input[data-v-0f0d4d1c],.help-support-modal .form-group textarea[data-v-0f0d4d1c],.help-support-modal .form-group select[data-v-0f0d4d1c]{max-width:none;width:100%}.help-support-modal .form-hint[data-v-0f0d4d1c]{display:block;margin-top:.4rem;max-width:100%;font-size:.8125rem;line-height:1.45;color:var(--text-muted)}.help-support-modal__textarea[data-v-0f0d4d1c]{min-height:6.5rem;resize:vertical}.help-support-modal__footer[data-v-0f0d4d1c]{flex-shrink:0;padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--border);background:var(--bg-card)}.help-support-modal__footer-feedback[data-v-0f0d4d1c]{margin:0 0 .65rem}.help-support-modal__header[data-v-0f0d4d1c]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid var(--border)}.help-support-modal__title[data-v-0f0d4d1c]{margin:0;font-size:1.0625rem;font-weight:700;color:var(--text)}.help-support-modal__close[data-v-0f0d4d1c]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer;transition:color .12s ease,background .12s ease}.help-support-modal__close[data-v-0f0d4d1c]:hover{color:var(--text);background:var(--bg-hover)}.help-support-drop__icon[data-v-0f0d4d1c]{display:flex;color:var(--text-muted);transition:color .15s ease}.help-support-drop:hover .help-support-drop__icon[data-v-0f0d4d1c],.help-support-drop--active .help-support-drop__icon[data-v-0f0d4d1c]{color:var(--accent)}.help-support-screens__label[data-v-0f0d4d1c]{display:block;margin-bottom:.35rem;font-size:.875rem;font-weight:600;color:var(--text)}.help-support-screens__input[data-v-0f0d4d1c]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.help-support-drop[data-v-0f0d4d1c]{min-height:6.25rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;padding:1rem;border:2px dashed var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.help-support-drop[data-v-0f0d4d1c]:hover{border-color:var(--accent);background:var(--accent-subtle);color:var(--text)}.help-support-drop--active[data-v-0f0d4d1c]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent)}.help-support-drop[data-v-0f0d4d1c]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.help-support-drop__text[data-v-0f0d4d1c]{font-size:.875rem;text-align:center;line-height:1.4}.help-support-screens__list[data-v-0f0d4d1c]{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.help-support-screens__item[data-v-0f0d4d1c]{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg)}.help-support-screens__thumb[data-v-0f0d4d1c]{width:2.5rem;height:2.5rem;object-fit:cover;border-radius:calc(var(--radius) * .75);flex-shrink:0}.help-support-screens__name[data-v-0f0d4d1c]{flex:1;min-width:0;font-size:.8125rem;font-family:ui-monospace,monospace;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-support-screens__remove[data-v-0f0d4d1c]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:1.25rem;line-height:1;cursor:pointer}.help-support-screens__remove[data-v-0f0d4d1c]:hover{color:var(--danger);background:var(--danger-subtle)}.help-support-modal__actions[data-v-0f0d4d1c]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.25rem}.help-support__feedback[data-v-0f0d4d1c]{margin:.75rem 0 0;font-size:.875rem}.help-support__feedback--ok[data-v-0f0d4d1c]{color:var(--success)}.help-support__feedback--err[data-v-0f0d4d1c]{color:var(--danger)}.help-support__muted[data-v-0f0d4d1c]{font-size:.875rem;color:var(--text-muted);margin:0}.support-fab-coach-enter-active[data-v-0f0d4d1c],.support-fab-coach-leave-active[data-v-0f0d4d1c]{transition:opacity .22s ease,transform .22s ease}.support-fab-coach-enter-from[data-v-0f0d4d1c],.support-fab-coach-leave-to[data-v-0f0d4d1c]{opacity:0;transform:translateY(.35rem) scale(.96)}.support-help-fab-wrap[data-v-0f0d4d1c]{position:fixed;z-index:150;right:max(1rem,env(safe-area-inset-right,0px));bottom:max(1rem,env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;max-width:min(16rem,calc(100vw - 2rem))}.support-help-fab-coach[data-v-0f0d4d1c]{position:relative;margin:0;padding:.65rem 2rem .65rem .75rem;border-radius:1rem 1rem .35rem;border:1px solid var(--border);background:var(--bg-card);color:var(--text);box-shadow:0 6px 28px #00000038}.support-help-fab-coach[data-v-0f0d4d1c]:before{content:"";position:absolute;right:1.1rem;bottom:-9px;border-width:9px 9px 0 9px;border-style:solid;border-color:var(--border) transparent transparent transparent}.support-help-fab-coach[data-v-0f0d4d1c]:after{content:"";position:absolute;right:calc(1.1rem + 1px);bottom:-7px;border-width:8px 8px 0 8px;border-style:solid;border-color:var(--bg-card) transparent transparent transparent}.support-help-fab-coach__text[data-v-0f0d4d1c]{margin:0;font-size:.8125rem;line-height:1.45;font-weight:500}.support-help-fab-coach__dismiss[data-v-0f0d4d1c]{position:absolute;top:.2rem;right:.2rem;display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:color .15s ease,background .15s ease}.support-help-fab-coach__dismiss[data-v-0f0d4d1c]:hover{color:var(--text);background:color-mix(in oklab,var(--accent) 12%,transparent)}.support-help-fab-coach__dismiss[data-v-0f0d4d1c]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.support-help-fab[data-v-0f0d4d1c]{width:3.25rem;height:3.25rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);background:var(--bg-card);color:var(--accent);box-shadow:0 4px 20px #00000047;cursor:pointer;transition:background .15s ease,transform .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.support-help-fab[data-v-0f0d4d1c]:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);box-shadow:0 6px 24px #00000052;transform:translateY(-1px)}.support-help-fab[data-v-0f0d4d1c]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.support-help-fab__icon[data-v-0f0d4d1c]{display:block;width:1.4rem;height:1.4rem;flex-shrink:0}:root{--bg: #0f0f12;--bg-card: #1a1a1f;--bg-elevated: #202026;--bg-hover: #24242a;--bg-overlay: rgba(15, 15, 18, .5);--text: #e4e4e7;--text-muted: #8e8e96;--accent: oklch(72% .18 195);--accent-hover: oklch(79% .16 195);--accent-subtle: oklch(72% .18 195 / 15%);--border: #27272a;--border-subtle: rgba(148, 163, 184, .12);--success: #22c55e;--success-subtle: rgba(34, 197, 94, .2);--danger: #ef4444;--danger-subtle: rgba(239, 68, 68, .15);--warn: #eab308;--warn-subtle: rgba(234, 179, 8, .2);--radius: 8px}*,*:before,*:after{box-sizing:border-box}@font-face{font-family:Instrument Sans Fallback;src:local("Arial");size-adjust:100%;ascent-override:93%;descent-override:23%;line-gap-override:0%}body{margin:0;font-family:Instrument Sans,Instrument Sans Fallback,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;overflow-x:hidden;font-kerning:normal}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}input,button,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.app-layout{display:flex;min-height:100vh}.sidebar{position:relative;width:var(--sidebar-width, 240px);min-width:0;max-width:min(100vw - 1rem,40rem);flex-shrink:0;background:var(--bg-card);border-right:1px solid var(--border);padding:.75rem 0 0;display:flex;flex-direction:column;overflow:visible}.sidebar.sidebar--measuring-width{width:max-content;max-width:none;align-items:flex-start;box-sizing:border-box}.sidebar.sidebar--measuring-width .sidebar-section--activity{position:absolute;left:-9999px;width:1px;height:1px;margin:0;padding:0;overflow:hidden;white-space:nowrap;border:0;clip:rect(0,0,0,0)}.sidebar.sidebar--measuring-width .sidebar-nav{flex:0 0 auto;width:max-content;min-width:0}.sidebar.sidebar--measuring-width .sidebar-nav__group{width:max-content}.sidebar.sidebar--measuring-width .sidebar-brand{width:max-content;box-sizing:border-box}.sidebar.sidebar--measuring-width .sidebar-nav a.sidebar-nav__item,.sidebar.sidebar--measuring-width .sidebar-nav__sub-link{width:max-content;max-width:100%;box-sizing:border-box}.sidebar.sidebar--measuring-width .sidebar-nav__group-label{width:max-content;box-sizing:border-box}.sidebar.sidebar--measuring-width .sidebar-footer,.sidebar.sidebar--measuring-width .sidebar-user-row{width:max-content;max-width:100%;box-sizing:border-box}.sidebar-brand{display:flex;align-items:center;gap:.875rem;padding:1rem;margin-bottom:.5rem;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none;transition:background .12s ease}.sidebar-brand:hover{background:var(--bg-hover)}.sidebar-brand__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;color:var(--accent)}.sidebar-brand__icon svg{width:2rem;height:2rem}.sidebar-brand__text{display:flex;flex-direction:column;gap:.05rem;min-width:0}.sidebar-brand__line{display:block;font-weight:700;font-size:1rem;line-height:1.2;letter-spacing:.02em}.sidebar-brand__line:last-child{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}@media (min-width: 769px){.sidebar.sidebar--collapsed{width:56px;padding-left:0;padding-right:0}.sidebar.sidebar--collapsed .sidebar-brand{justify-content:center;padding-left:.5rem;padding-right:.5rem}.sidebar.sidebar--collapsed .sidebar-brand__text{display:none}.sidebar.sidebar--collapsed .sidebar-nav a{justify-content:center;padding-left:.5rem;padding-right:.5rem;margin-left:.25rem;margin-right:.25rem}.sidebar.sidebar--collapsed .sidebar-nav__label{display:none}.sidebar.sidebar--collapsed .sidebar-nav__dot{position:absolute;top:50%;right:.25rem;transform:translateY(-50%);margin:0}.sidebar.sidebar--collapsed .sidebar-user-row__name--expandable,.sidebar.sidebar--collapsed .sidebar-footer-link--expandable{display:none}.sidebar.sidebar--collapsed .sidebar-footer{flex-direction:column;align-items:center;gap:.5rem}.sidebar.sidebar--collapsed .sidebar-user-row{justify-content:center}.sidebar.sidebar--collapsed .sidebar-nav__group-label{display:none}.sidebar.sidebar--collapsed .sidebar-nav__group+.sidebar-nav__group{margin-top:0;padding-top:0;border-top:none}.sidebar.sidebar--collapsed .sidebar-nav a{border-left-color:transparent!important}.sidebar.sidebar--collapsed .sidebar-footer{padding:.45rem .35rem .5rem;align-items:center;justify-content:center;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.sidebar.sidebar--collapsed .sidebar-user-row{flex-direction:column;gap:.3rem;margin:0;padding:.35rem .15rem;width:100%;max-width:100%;min-width:0;box-sizing:border-box;align-items:center;justify-content:center}.sidebar.sidebar--collapsed .sidebar-user-row__avatar{width:1.5rem;height:1.5rem}.sidebar.sidebar--collapsed .sidebar-user-row__avatar svg{width:14px;height:14px}.sidebar.sidebar--collapsed .sidebar-user-row__logout{width:1.5rem;height:1.5rem}.sidebar.sidebar--collapsed .sidebar-user-row__logout svg{width:14px;height:14px}.sidebar__collapse{position:absolute;right:-11px;top:50%;transform:translateY(-50%);z-index:10;display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:var(--bg-card);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:50%;box-shadow:2px 0 8px #0000004d;transition:background .12s ease,color .12s ease,border-color .12s ease}.sidebar__collapse:hover{background:var(--bg-hover);color:var(--text);border-color:var(--accent)}}.sidebar-nav{padding:.25rem 0;flex:1;overflow-y:auto}.sidebar-nav__group{padding:0;margin:0}.sidebar-nav__group+.sidebar-nav__group{margin-top:.25rem;padding-top:.25rem;border-top:1px solid var(--border-subtle)}.sidebar-nav__group-label{margin:.5rem 0 .125rem;padding:0 1.25rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);opacity:.55;white-space:nowrap;overflow:hidden}.sidebar-nav__label,.sidebar-nav__sub-link-label{white-space:nowrap}.sidebar-nav a{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;margin:.1rem .5rem;min-height:40px;color:var(--text-muted);border-radius:6px;font-size:.875rem;font-weight:500;transition:background .12s ease,color .12s ease}.sidebar-nav a:hover{color:var(--text);background:var(--bg-hover)}.sidebar-nav a.router-link-active{color:var(--accent);background:var(--accent-subtle);font-weight:600}.main{flex:1;padding:1.5rem 2rem;overflow:auto}.page-title{margin:0 0 .375rem;font-size:clamp(1.25rem,3vw,1.625rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}.page-desc{margin:0 0 1.5rem;color:var(--text-muted);font-size:.9375rem;line-height:1.5}.server-card__value,th,td,.badge,.app-card__metrics{font-variant-numeric:tabular-nums}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;min-height:44px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:.875rem}.btn:hover{background:var(--bg-hover)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--bg)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--bg)}.btn:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-hover);border-color:var(--border);color:var(--text-muted)}.btn-primary:disabled:hover{background:var(--bg-hover);border-color:var(--border)}.btn--secondary{background:var(--bg-hover);border-color:var(--border)}.btn--secondary:hover{background:var(--border)}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger-subtle)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn--ghost:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text)}.btn-sm,.btn--sm{padding:.3125rem .6875rem;font-size:.8125rem;min-height:32px;gap:.3rem}@keyframes spin{to{transform:rotate(360deg)}}.btn-spinner{width:13px;height:13px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.btn-spinner--sm{width:11px;height:11px;border-width:1.5px}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.35rem;font-size:.875rem;color:var(--text-muted)}.form-group input,.form-group select,.form-group textarea{width:100%;max-width:400px;padding:.5rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.form-group input:focus-visible,.form-group select:focus-visible,.form-group textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.input--mono,.form-group select.input--mono,.ui-monospace{font-family:ui-monospace,monospace}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-left:-.25rem;margin-right:-.25rem;padding-left:.25rem;padding-right:.25rem;background:linear-gradient(to right,var(--bg-card) 20%,transparent) left center / 32px 100% no-repeat local,linear-gradient(to left,var(--bg-card) 20%,transparent) right center / 32px 100% no-repeat local,radial-gradient(ellipse at left,oklch(0% 0 0 / 25%) 0%,transparent 70%) left center / 18px 100% no-repeat scroll,radial-gradient(ellipse at right,oklch(0% 0 0 / 25%) 0%,transparent 70%) right center / 18px 100% no-repeat scroll}table{width:100%;min-width:600px;border-collapse:collapse}th,td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border)}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}tr:hover td{background:var(--bg-hover)}.badge{display:inline-block;padding:.2rem .5rem;font-size:.75rem;border-radius:4px}.badge-success{background:var(--success-subtle);color:var(--success)}.badge-warn{background:var(--warn-subtle);color:var(--warn)}.badge-muted{background:var(--bg-hover);color:var(--text-muted)}.badge-php{background:#00bebf1f;background:oklch(72% .18 195 / 12%);color:var(--accent)}.grid-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.action-btns{display:flex;flex-wrap:wrap;gap:.5rem}.page-error{color:var(--danger);margin:0 0 1rem;font-size:.875rem}@media (max-width: 768px){.app-layout{position:relative;flex-direction:column;overflow-x:hidden}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:100;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.app-layout.sidebar-open .sidebar-overlay{opacity:1;visibility:visible}.sidebar__collapse{display:none}.main-header{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:var(--bg-card);border-bottom:1px solid var(--border);flex-shrink:0;z-index:10;position:sticky;top:0;width:100%}.main-header__menu{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;min-width:2.75rem;min-height:2.75rem;background:transparent;border:none;color:var(--text);border-radius:var(--radius);cursor:pointer}.main-header__menu:hover{background:var(--bg-hover)}.main-header__hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:24px}.main-header__hamburger-line{display:block;width:100%;height:2px;background:currentColor;border-radius:1px}.main-header__menu-label{font-size:.9375rem;font-weight:500;color:var(--text)}.main-header__title{font-size:.9375rem;font-weight:600;color:var(--text);min-width:0;flex:1 1 auto}.main-header__page{font-size:.8125rem;color:var(--text-muted);margin-left:.5rem;flex-shrink:0}.main-header__lang{display:flex;align-items:center;gap:.375rem;margin-left:auto;flex-shrink:0}.main-header__lang-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.main-header__locale-select{font-size:.75rem;font-weight:500;padding:.35rem .5rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-overlay);color:var(--text);cursor:pointer;min-width:4.75rem}.main-header__locale-select:hover{border-color:var(--border-strong)}.main-header__locale-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.sidebar-lang__select{min-height:2rem}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:101;width:min(var(--sidebar-width, 280px),85vw);max-width:85vw;transform:translate(-100%);transition:transform .25s ease;box-shadow:none;visibility:hidden}.app-layout.sidebar-open .sidebar{transform:translate(0);box-shadow:4px 0 24px #0006;visibility:visible}.sidebar__close{display:flex;align-items:center;justify-content:center}.sidebar-brand{padding:1.25rem 3rem 1.25rem 1.25rem}.main{padding:1rem;min-width:0;width:100%;margin-left:0;flex:1 1 auto}.page-title{font-size:1.25rem;margin-bottom:1rem}.card{padding:1rem}th,td{padding:.5rem .75rem;font-size:.8125rem}th{font-size:.7rem}}@media (max-width: 480px){.main{padding:.75rem}.table-wrap{margin-left:-.5rem;margin-right:-.5rem;padding-left:.5rem;padding-right:.5rem}th,td{padding:.4rem .5rem;font-size:.75rem}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}.main-view-transition{view-transition-name:panel-main}::view-transition-old(root),::view-transition-new(root){animation:none}@keyframes panel-main-vt-out{to{opacity:0;transform:translateY(-6px)}}@keyframes panel-main-vt-in{0%{opacity:0;transform:translateY(6px)}}::view-transition-group(panel-main){animation-duration:.22s;animation-timing-function:ease}::view-transition-old(panel-main){animation:.22s ease both panel-main-vt-out}::view-transition-new(panel-main){animation:.22s ease both panel-main-vt-in}@media (prefers-reduced-motion: reduce){::view-transition-group(panel-main){animation:none}::view-transition-old(panel-main),::view-transition-new(panel-main){animation:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
