@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1218;--bg-accent:#132733;--surface:#0a1016c7;--surface-strong:#111c25f5;--surface-soft:#162632a6;--border:#97bfd81a;--border-strong:#97bfd833;--text:#eef4f8;--muted:#96aab8;--accent:#7df1cf;--accent-strong:#b9ffbf;--danger:#ff8b87;--danger-surface:#78252e66;--warn:#ffcb77;--success:#78f0b6;--shadow:0 24px 80px #00000047;--radius-xl:28px;--radius-lg:20px;--radius-md:14px;--mono:"IBM Plex Mono", monospace;--sans:"Space Grotesk", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--sans);background:radial-gradient(circle at top left, #7df1cf24, transparent 32%), radial-gradient(circle at right 15%, #ffcb771a, transparent 22%), linear-gradient(160deg, var(--bg), #091015 44%, var(--bg-accent));color:var(--text);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{max-width:1680px;margin:0 auto;padding:24px 24px 56px}.hero-bar{align-items:center;gap:16px;margin-bottom:16px;padding:14px 0;display:flex}.hero-bar__brand{align-items:center;gap:8px;display:flex}.hero-bar__mark{color:#041217;background:linear-gradient(145deg,#7df1cf,#ffcb77);border-radius:9px;place-items:center;width:30px;height:30px;font-size:.88rem;font-weight:800;display:inline-grid;box-shadow:0 4px 14px #7df1cf3d}.hero-bar__text{gap:0;display:grid}.hero-bar__accent{color:#d7fff1;letter-spacing:-.015em;font-size:1.15rem;font-weight:700}.hero-bar__title{letter-spacing:.08em;text-transform:uppercase;color:#96aab8e6;font-size:.84rem;font-weight:500}.hero-bar__sub{color:var(--muted);border-left:1px solid var(--border);padding-left:16px;font-size:.8rem}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;margin:0 0 10px;font-size:.74rem}.card-shell{background:linear-gradient(180deg, #ffffff05, transparent 44%), var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:var(--radius-xl)}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar__dirty-badge{color:var(--warn);background:#ffcb771a;border:1px solid #ffcb7733;border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:500;display:inline-flex}.toolbar__badge{border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:500;display:inline-flex}.toolbar__badge--danger{color:var(--danger);background:#ff8b871a}.toolbar__badge--warn{color:var(--warn);background:#ffcb771a}.toolbar-menu{position:relative}.toolbar-menu__trigger{cursor:pointer;white-space:nowrap;border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:.84rem;font-weight:600;transition:background .12s,transform .12s;display:inline-flex}.toolbar-menu__trigger:hover{transform:translateY(-1px)}.toolbar-menu__trigger--primary{color:var(--text);background:linear-gradient(135deg,#7df1cf47,#ffcb7738)}.toolbar-menu__trigger--primary:hover{background:linear-gradient(135deg,#7df1cf5c,#ffcb7747)}.toolbar-menu__trigger--ghost{color:var(--text);background:#ffffff0d}.toolbar-menu__trigger--ghost:hover{background:#ffffff1a}.toolbar-menu__caret{opacity:.5;width:14px;height:14px;transition:transform .15s}.toolbar-menu__dropdown{-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);z-index:100;background:#0e161ef2;border:1px solid #97bfd81f;border-radius:12px;flex-direction:column;gap:2px;min-width:200px;padding:6px;animation:.12s menu-appear;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff08}@keyframes menu-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.toolbar-menu__item{width:100%;color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.84rem;transition:background .1s;display:flex}.toolbar-menu__item:hover:not(:disabled){background:#ffffff14}.toolbar-menu__item:disabled{opacity:.35;cursor:not-allowed}.toolbar-menu__divider{background:var(--border);height:1px;margin:4px 8px}.ftp-connected{background:#7df1cf0f;border:1px solid #7df1cf26;border-radius:8px;flex-direction:column;gap:6px;min-width:0;margin-bottom:8px;padding:10px 12px;display:flex}.ftp-connected__status{align-items:center;gap:8px;min-width:0;display:flex}.ftp-connected__info{color:var(--text);overflow-wrap:anywhere;min-width:0;font-size:.88rem;font-weight:600}.ftp-connected__detail{color:var(--muted);font-size:.75rem;font-family:var(--mono);overflow-wrap:anywhere;word-break:break-all}.ftp-publish{flex:1;justify-content:center}.ftp-resync{padding:8px 10px}.ftp-actions--connected{gap:8px;margin-top:4px;display:flex}.tab-switcher{border:1px solid var(--border);background:#ffffff08;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.tab-switcher__button{color:var(--muted);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:.88rem;transition:background .15s,color .15s,transform .15s;display:inline-flex}.tab-switcher__button.is-active{color:var(--text);background:linear-gradient(135deg,#7df1cf29,#ffcb771f)}.tab-switcher__button:hover{color:var(--text);transform:translateY(-1px)}.tab-switcher__button svg{opacity:.85}.tab-switcher__button.is-active svg{opacity:1}.tab-switcher__label{line-height:1}.step-rail{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:12px 16px;display:flex}.step-rail__group{flex-wrap:wrap;gap:10px;display:flex}.step-rail__button{color:var(--muted);background:#ffffff05;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.88rem;display:inline-flex}.step-rail__button.is-active{color:var(--text);background:#7df1cf1a;border-color:#7df1cf47}.step-rail__index{width:24px;height:24px;font-size:.7rem;font-family:var(--mono);background:#ffffff0f;border-radius:999px;place-items:center;display:inline-grid}.step-rail__meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.step-rail__save-label{color:var(--muted);font-size:.88rem}.status-chip,.mini-badge{color:var(--muted);background:#ffffff08;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.75rem;display:inline-flex}.status-chip--ok,.mini-badge--ok{color:var(--success);background:#78f0b61f}.status-chip--warn{color:var(--warn);background:#ffcb771f}.status-chip--danger,.mini-badge--danger{color:var(--danger);background:#ff8b871f}.mini-badge--neutral{color:var(--accent)}.info-banner{border-radius:var(--radius-md);border:1px solid var(--border);letter-spacing:.01em;color:var(--muted);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:10px 16px;font-size:.82rem;display:flex;overflow:hidden}.info-banner--entering{animation:.3s both banner-in}.info-banner--leaving{animation:.3s both banner-out}.info-banner__dismiss{color:var(--muted);cursor:pointer;opacity:.6;background:0 0;border:0;border-radius:4px;flex-shrink:0;padding:2px;transition:opacity .12s}.info-banner__dismiss:hover{opacity:1}.banner--neutral{background:#ffffff0a}.banner--success{background:#78f0b61f;border-color:#78f0b647}.banner--danger,.warning-banner{background:var(--danger-surface);border-color:#ff8b874d}.warning-banner{border-radius:var(--radius-md);color:#ffd6d4;border:1px solid #ff8b8742;margin-bottom:18px;padding:14px 18px}.confirm-bar{border-radius:var(--radius-md);color:#ffe0b2;background:#ffb4461a;border:1px solid #ffb4464d;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:10px 16px;font-size:.85rem;display:flex;overflow:hidden}.confirm-bar--entering{animation:.3s both banner-in}.confirm-bar--leaving{animation:.3s both banner-out}.confirm-bar__actions{flex-shrink:0;gap:8px;display:flex}@keyframes banner-in{0%{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translateY(-8px)}to{opacity:1;max-height:80px;transform:translateY(0)}}@keyframes banner-out{0%{opacity:1;max-height:80px;transform:translateY(0)}to{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translateY(-8px)}}.workspace-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.workspace-main{gap:18px;display:grid}.sync-loader{text-align:center;background:radial-gradient(circle at 50% 0,#7df1cf1a,#0000 48%),linear-gradient(#ffffff08,#ffffff03);place-items:center;gap:10px;min-height:320px;padding:28px 18px;display:grid}.sync-loader__ring{border:2px solid #97bfd838;border-top-color:#7df1cfd9;border-radius:999px;width:38px;height:38px;animation:.9s linear infinite spin-ring}.sync-loader__title{letter-spacing:-.02em;margin:0;font-size:1.2rem}.sync-loader__copy,.sync-loader__progress{color:var(--muted);margin:0}.sync-loader__detail{color:color-mix(in srgb, var(--muted) 82%, var(--accent));margin:-2px 0 0;font-size:.82rem}.sync-loader__progress{font-family:var(--mono);font-size:.82rem}@keyframes spin-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.workspace-card,.side-card,.action-footer{padding:18px}.panel-header{gap:10px;margin-bottom:18px;display:grid}.panel-header--tight{grid-template-columns:minmax(0,1fr) auto;align-items:start}.panel-header h2{letter-spacing:-.03em;margin:0;font-size:1.25rem}.panel-header--roster.panel-header--tight,.panel-header--config.panel-header--tight{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.panel-header--roster.panel-header--tight>:last-child,.panel-header--config.panel-header--tight>:last-child{justify-self:end}.panel-header--roster{background:linear-gradient(120deg,#7df1cf0d,#ffcb770a 48%,#ffffff03);border:1px solid #97bfd814;border-radius:12px;margin-bottom:14px;padding:10px 12px}.panel-header__new-group{min-height:36px;box-shadow:none;background:#ffffff0b;border:1px solid #97bfd81a;border-radius:10px;padding:7px 12px}.panel-header__new-group:hover:not(:disabled){background:linear-gradient(135deg,#7df1cf33,#ffcb7729);border-color:#97bfd82e}.panel-header--config{background:linear-gradient(120deg,#7df1cf0a,#ffcb7708 52%,#ffffff03);border:1px solid #97bfd814;border-radius:12px;margin-bottom:14px;padding:10px 12px}.panel-header__actions{flex-wrap:nowrap;align-items:center;gap:8px;margin:0;display:inline-flex}.panel-header__actions .icon-btn.panel-header__action-btn{min-height:36px;color:var(--text);box-shadow:none;background:linear-gradient(135deg,#7df1cf29,#ffcb771c);border:1px solid #97bfd81a;border-radius:10px;padding:7px 12px;font-weight:600}.panel-header__actions .icon-btn.panel-header__action-btn:hover:not(:disabled){background:linear-gradient(135deg,#7df1cf3d,#ffcb772e);border-color:#97bfd82e;box-shadow:0 2px 10px #00000024}.panel-header__preset{min-width:220px}.panel-header__preset .cselect__trigger{min-height:36px;color:var(--text);background:linear-gradient(135deg,#7df1cf24,#ffcb771a);border-color:#97bfd81a;border-radius:10px;padding:7px 12px;font-weight:600}.panel-header__preset .cselect__placeholder{color:#eef4f8ad;opacity:1}.panel-header__preset .cselect__chevron{opacity:.72}.panel-header__preset .cselect__trigger:hover{background:linear-gradient(135deg,#7df1cf33,#ffcb7729);border-color:#97bfd82e}.panel-header__preset .cselect__menu{width:max-content;min-width:280px;max-width:min(420px,100vw - 24px);left:auto;right:0}.panel-header__preset .cselect__option-text{text-overflow:clip;white-space:nowrap;overflow:visible}.quick-settings{background:radial-gradient(circle at 8% 0,#7df1cf14,#0000 54%),linear-gradient(125deg,#ffffff08,#ffffff03);border:1px solid #97bfd81a;border-radius:14px;margin:0 0 14px;padding:12px;box-shadow:inset 0 0 0 1px #ffffff03}.quick-settings__header{margin-bottom:10px}.quick-settings__title{color:#eef4f8e6;letter-spacing:.015em;margin:0;font-size:.92rem;font-weight:600}.quick-settings__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quick-field{align-content:start;gap:5px;display:grid}.quick-field--full{grid-column:1/-1}.quick-field__label{color:#96aab8f2;text-transform:uppercase;letter-spacing:.04em;font-size:.76rem;font-weight:600}.quick-field__hint{color:#96aab8bf;min-height:2.2em;margin:0;font-size:.71rem;line-height:1.35}.quick-settings .field-input,.quick-settings .quick-settings__select .cselect__trigger,.quick-settings .faction-toggle__btn{height:42px;min-height:42px}.quick-settings__select .cselect__trigger{width:100%}.faction-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.faction-toggle__btn{color:var(--muted);background:#ffffff08;border:1px solid #97bfd81a;border-radius:10px;font-weight:600;transition:all .15s}.faction-toggle__btn:hover{color:var(--text);border-color:#97bfd82e}.faction-toggle__btn.is-active{color:var(--text);background:linear-gradient(135deg,#7df1cf33,#ffcb7724);border-color:#7df1cf57}@media (width<=1240px){.quick-settings__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-field--full{grid-column:1/-1}}.quick-switch{min-height:42px;color:var(--text);background:#ffffff06;border:1px solid #97bfd81a;border-radius:10px;align-items:center;gap:10px;padding:0 12px;transition:border-color .15s,background .15s;display:inline-flex}.quick-switch:hover{border-color:#97bfd833}.quick-switch__track{background:#96aab84d;border-radius:999px;width:38px;height:22px;transition:background .15s;position:relative}.quick-switch__knob{background:#fff;border-radius:999px;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.quick-switch__label{color:#eef4f8e6;font-size:.84rem;font-weight:600}.quick-switch.is-on{background:#7df1cf14;border-color:#7df1cf59}.quick-switch.is-on .quick-switch__track{background:linear-gradient(135deg,#7df1cfcc,#ffcb77b3)}.quick-switch.is-on .quick-switch__knob{transform:translate(16px)}.panel-copy,.muted-note{color:var(--muted);margin:0;font-size:.85rem;line-height:1.5}.editor-textarea,.field-input,.group-panel__title{width:100%;color:var(--text);appearance:none;background:#ffffff06;border:1px solid #97bfd814;border-radius:10px;transition:border-color .2s,box-shadow .2s,background .2s}.editor-textarea:hover,.field-input:hover,.group-panel__title:hover{background:#ffffff09;border-color:#97bfd829}.editor-textarea:focus,.field-input:focus,.group-panel__title:focus{background:#ffffff0a;border-color:#7df1cf66;outline:none;box-shadow:0 0 0 3px #7df1cf12,inset 0 1px 2px #0000001f}.editor-textarea::placeholder,.field-input::placeholder,.group-panel__title::placeholder{color:var(--muted);opacity:.5;transition:opacity .2s}.editor-textarea:focus::placeholder,.field-input:focus::placeholder,.group-panel__title:focus::placeholder{opacity:.3}.editor-textarea{resize:vertical;min-height:320px;line-height:1.6;font-family:var(--mono);padding:14px 16px;font-size:.88rem}.editor-textarea--export{min-height:440px}.field-input,.group-panel__title{padding:11px 14px;font-size:.88rem}.field-input--mono{font-family:var(--mono);letter-spacing:.01em}.field-input--select{min-width:220px}.button-row{flex-wrap:wrap;gap:12px;display:flex}.button-row--compact{gap:10px}.button-row--stacked{flex-direction:column}.button{color:var(--text);background:#ffffff0d;border:0;border-radius:999px;align-items:center;gap:6px;padding:10px 18px;font-size:.88rem;transition:transform .18s,background .18s,opacity .18s,box-shadow .18s;display:inline-flex}.button svg{flex-shrink:0}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #00000026}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{opacity:.35;cursor:not-allowed}.button--primary{background:linear-gradient(135deg,#7df1cf47,#ffcb7738)}.button--ghost{background:#ffffff0a}.button--danger{color:#ffd8d7;background:#ff645f33;border:1px solid #ff645f4d}.button--danger:hover:not(:disabled){background:#ff645f4d}.button--sm{padding:6px 14px;font-size:.8rem}.button--small{padding:10px 14px}.button--file input{display:none}.form-grid{grid-template-columns:minmax(0,1fr) 112px;gap:10px;margin-bottom:12px;display:grid}.form-grid--compact{gap:8px;margin-bottom:10px}.form-grid__full{grid-column:1/-1}.side-card__header{color:var(--accent);flex-wrap:wrap;align-items:baseline;gap:6px 8px;margin-bottom:12px;display:flex}.side-card__title{text-transform:uppercase;letter-spacing:.12em;color:var(--text);white-space:nowrap;font-size:.92rem;font-weight:700}.side-card__meta{color:var(--muted);text-align:right;white-space:nowrap;margin-left:auto;font-size:.72rem}.side-card__status{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.status-dot{background:var(--muted);border-radius:50%;width:7px;height:7px}.status-dot--ok{background:var(--success);box-shadow:0 0 6px #78f0b680}.ftp-toggle{color:var(--accent);cursor:pointer;background:0 0;border:0;margin-bottom:10px;padding:4px 0;font-size:.78rem}.ftp-toggle:hover{text-decoration:underline}.ftp-profile-select{margin-bottom:8px}.ftp-hint{color:var(--warn);opacity:.85;margin:2px 0 6px;font-size:.72rem}.profile-row{align-items:center;gap:6px;margin-bottom:8px;display:flex}.profile-row__select{flex:1;min-width:0}.icon-btn--mini{box-sizing:border-box;border-radius:8px;flex-shrink:0;justify-content:center;width:32px;height:32px;padding:6px}.icon-btn--mini svg{flex-shrink:0}.ftp-actions{gap:6px;margin-top:6px;display:flex}.ftp-actions__connect{white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:600;display:inline-flex}.icon-btn{color:var(--text);cursor:pointer;white-space:nowrap;background:#ffffff0d;border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:500;transition:background .15s,transform .15s,opacity .15s,box-shadow .15s;display:inline-flex}.icon-btn:hover:not(:disabled){background:#ffffff1a;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.icon-btn:active:not(:disabled){transform:translateY(0)}.icon-btn:disabled{opacity:.28;cursor:not-allowed;filter:grayscale(.6)}.icon-btn--accent{background:linear-gradient(135deg,#7df1cf33,#ffcb7724)}.icon-btn--danger{color:var(--danger)}.icon-btn--danger:hover:not(:disabled){background:#ff8b871f}.icon-btn--label{cursor:pointer}.icon-actions{flex-wrap:wrap;gap:6px;display:flex}.field-input--sm{padding:9px 12px;font-size:.84rem}.cselect{position:relative}.cselect__trigger{width:100%;min-width:0;color:var(--text);font:inherit;cursor:pointer;background:#ffffff06;border:1px solid #97bfd814;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-size:.84rem;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.cselect__trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cselect__trigger:hover{background:#ffffff09;border-color:#97bfd829}.cselect.is-open .cselect__trigger{background:#ffffff0a;border-color:#7df1cf66;box-shadow:0 0 0 3px #7df1cf12,inset 0 1px 2px #0000001f}.cselect__placeholder{color:var(--muted);opacity:.5}.cselect__chevron{opacity:.5;flex-shrink:0;transition:transform .2s}.cselect:hover .cselect__chevron,.cselect.is-open .cselect__chevron{opacity:.8}.cselect.is-open .cselect__chevron{transform:rotate(180deg)}.cselect__menu{z-index:50;border:1px solid var(--border-strong);background:var(--surface-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;max-height:240px;margin:0;padding:5px;list-style:none;animation:.15s select-open;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden auto;box-shadow:0 12px 48px #00000059,0 0 0 1px #ffffff08}@keyframes select-open{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.cselect__option{width:100%;min-width:0;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;padding:9px 12px;font-size:.84rem;transition:background .12s;display:flex}.cselect__option-text{text-overflow:ellipsis;white-space:nowrap;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex;overflow:hidden}.cselect__delete{width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .1s,color .1s;display:inline-flex}.cselect__delete:hover{color:var(--danger);background:#ff8b8726}.cselect__option:hover{background:#7df1cf1a}.cselect__option.is-selected{color:var(--accent)}.cselect__meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.72rem;overflow:hidden}.stack-grid{gap:14px;display:grid}.entry-stack{gap:2px;display:grid}.group-panel{border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-strong);border:1px solid #97bfd814;padding:16px;transition:border-color .2s}.group-panel:hover{border-color:#97bfd81f}.group-panel__header{align-items:center;gap:8px;margin-bottom:10px;display:flex}.group-panel__title{background:0 0;border-color:#0000;border-radius:8px;flex:1;min-width:0;max-width:none;padding:8px 10px;font-size:.95rem;font-weight:700}.group-panel__title:hover{background:#ffffff05;border-color:#97bfd814}.group-panel__title:focus{background:#ffffff08;border-color:#7df1cf4d;box-shadow:0 0 0 2px #7df1cf0f}.group-panel__toolbar{background:#ffffff08;border:1px solid #97bfd80f;border-radius:8px;flex-shrink:0;align-items:center;gap:2px;padding:2px;display:flex}.group-panel__action{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;transition:background .15s,color .15s;display:inline-grid}.group-panel__action:hover{color:var(--accent);background:#7df1cf1a}.group-panel__action--danger:hover{color:var(--danger);background:#ff8b871a}.group-panel__divider{background:#97bfd81a;flex-shrink:0;width:1px;height:18px}.group-panel__actions{flex-wrap:wrap;gap:10px;display:flex}.entry-row{background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:6px 8px;transition:background .15s;display:flex}.entry-row:hover{background:#ffffff05}.entry-row__meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.cfg-row{background:0 0;border:0;border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;transition:background .15s;display:grid}.cfg-row:hover{background:#ffffff05}.entry-row__steam{flex:3;min-width:0}.entry-row__name{flex:1;min-width:0}.entry-row .field-input,.cfg-row .field-input{min-height:42px;line-height:1.2}.entry-row.is-invalid .field-input,.cfg-row.is-invalid .field-input{border-color:#ff8b8740}.entry-row.is-valid .field-input{border-color:#78f0b62e}.row-delete{width:28px;height:28px;color:var(--muted);cursor:pointer;opacity:.4;background:0 0;border:0;border-radius:6px;flex-shrink:0;place-items:center;padding:0;transition:opacity .15s,color .15s,background .15s;display:inline-grid}.entry-row:hover .row-delete,.cfg-row:hover .row-delete{opacity:.7}.row-delete:hover{color:var(--danger);background:#ff8b871a;opacity:1!important}.row-lock{opacity:.35;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:14px;display:inline-grid}.cfg-row.is-locked .field-input{opacity:.6;cursor:default}.avatar-frame{cursor:pointer;width:34px;height:34px;color:inherit;background:linear-gradient(135deg,#7df1cf14,#ffcb7714);border:1px solid #97bfd81a;border-radius:9px;flex-shrink:0;place-items:center;padding:0;font-size:.75rem;font-weight:700;text-decoration:none;display:grid;overflow:hidden}.avatar-frame:disabled{cursor:default;opacity:.5}.avatar-frame img{object-fit:cover;width:100%;height:100%}.toggle-field{color:var(--muted);cursor:pointer;align-items:center;gap:10px;font-size:.85rem;display:inline-flex}.toggle-field input[type=checkbox]{appearance:none;cursor:pointer;background:#ffffff08;border:1.5px solid #97bfd833;border-radius:5px;flex-shrink:0;width:18px;height:18px;transition:background .15s,border-color .15s,box-shadow .15s;position:relative}.toggle-field input[type=checkbox]:checked{background:#7df1cf40;border-color:#7df1cf80;box-shadow:0 0 0 2px #7df1cf14}.toggle-field input[type=checkbox]:checked:after{content:"";background:var(--accent);border-radius:2px;position:absolute;inset:2px}.action-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.empty-state{text-align:center;justify-content:center;align-items:center;min-height:360px;padding:40px;display:flex}.empty-state__inner{max-width:380px}.empty-state__icon{width:68px;height:68px;color:var(--accent);background:linear-gradient(145deg,#7df1cf24,#7df1cf0a);border:1px solid #7df1cf38;border-radius:20px;place-items:center;margin:0 auto 10px;display:grid;box-shadow:0 12px 34px #7df1cf1a}.empty-state__title{letter-spacing:-.02em;margin:0 0 8px;font-size:1.2rem;font-weight:600}.empty-state__copy{color:var(--muted);margin:0 0 20px;font-size:.85rem;line-height:1.5}.empty-state .button-row{justify-content:center}.empty-state .button{align-items:center;gap:6px;display:inline-flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drop-overlay{z-index:9999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070c12d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.drop-overlay__inner{border:2px dashed var(--accent);border-radius:var(--radius-lg);color:var(--accent);letter-spacing:-.01em;flex-direction:column;align-items:center;gap:12px;padding:48px 64px;font-size:1.1rem;font-weight:600;display:flex}@media (width<=1100px){.workspace-grid{grid-template-columns:1fr}.side-card{order:-1}}@media (width<=900px){.app-shell{padding:20px 18px 44px}.hero-bar{flex-wrap:wrap;gap:10px;padding:10px 0}.hero-bar__sub{border-left:0;width:100%;padding-left:0;font-size:.78rem}.toolbar{gap:10px}.toolbar__actions{flex-wrap:wrap;gap:6px;width:100%}.toolbar-menu__trigger{padding:8px 12px;font-size:.82rem}.tab-switcher{width:100%}.tab-switcher__button{text-align:center;flex:1;justify-content:center}.panel-header--tight{grid-template-columns:1fr;gap:12px}.panel-header--tight>:last-child{justify-self:start}.panel-header--roster.panel-header--tight,.panel-header--config.panel-header--tight{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.panel-header--roster.panel-header--tight>:last-child,.panel-header--config.panel-header--tight>:last-child{justify-self:end}.step-rail{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.step-rail__group{width:100%}.step-rail__meta{justify-content:flex-start;width:100%}.form-grid{grid-template-columns:1fr}.form-grid--compact{grid-template-columns:1fr 90px}}@media (width<=640px){:root{--radius-xl:18px;--radius-lg:14px;--radius-md:10px}.app-shell{padding:12px 12px 36px}.hero-bar{margin-bottom:10px;padding:8px 0}.hero-bar__accent,.hero-bar__title{font-size:1.08rem}.workspace-card,.side-card,.action-footer{padding:14px}.workspace-grid{gap:12px}.panel-header{margin-bottom:14px}.panel-header h2{font-size:1.1rem}.panel-header--roster,.panel-header--config{gap:8px;margin-bottom:12px;padding:9px 10px}.panel-header--config.panel-header--tight{grid-template-columns:1fr;align-items:start;gap:8px}.panel-header--config.panel-header--tight>:last-child{justify-self:start;width:100%}.panel-header__new-group{border-radius:9px;min-height:34px;padding:6px 10px;font-size:.82rem}.panel-header__actions{gap:6px;width:100%}.panel-header--config .panel-header__actions{flex-wrap:nowrap;justify-content:flex-start}.panel-header__actions .icon-btn.panel-header__action-btn,.panel-header__preset .cselect__trigger{border-radius:9px;min-height:34px;padding:6px 10px;font-size:.82rem}.panel-header__actions .icon-btn.panel-header__action-btn{flex:none}.panel-header__preset{flex:auto;min-width:0}.quick-settings{border-radius:12px;margin-bottom:10px;padding:10px}.quick-settings__grid{grid-template-columns:1fr;gap:8px}.quick-field--full{grid-column:auto}.quick-field__label{font-size:.72rem}.quick-field__hint{min-height:0}.faction-toggle__btn{height:38px;min-height:38px;font-size:.84rem}.quick-switch{height:38px;min-height:38px}.eyebrow{font-size:.68rem}.toolbar{flex-direction:column;align-items:stretch}.toolbar__actions{flex-direction:column;width:100%}.toolbar-menu{width:100%}.toolbar-menu__trigger{justify-content:center;width:100%;padding:10px 14px;font-size:.84rem}.toolbar-menu__dropdown{min-width:unset;left:0;right:0}.toolbar-menu__item{padding:10px 14px;font-size:.86rem}.button{justify-content:center;min-height:44px;padding:11px 18px;font-size:.86rem}.button--sm{min-height:38px;padding:8px 14px}.icon-btn{min-height:44px;padding:10px 14px;font-size:.84rem}.icon-btn--mini{justify-content:center;width:38px;min-width:38px;height:38px;min-height:38px;padding:8px}.field-input,.group-panel__title{min-height:44px;padding:12px 14px;font-size:.9rem}.field-input--sm{min-height:42px;padding:10px 12px}.cselect__trigger{min-height:44px;padding:11px 14px}.form-grid{grid-template-columns:1fr;gap:8px}.form-grid--compact{grid-template-columns:1fr}.entry-row{flex-wrap:wrap;gap:6px;padding:8px 6px}.entry-row__meta{flex:1;order:0;justify-content:flex-start}.entry-row>.row-delete{opacity:.6;order:1}.entry-row__steam{flex:100%;order:2;min-width:0}.entry-row__name{flex:100%;order:3;min-width:0}.row-delete{opacity:.6}.cfg-row{grid-template-columns:1fr;gap:6px;padding:8px 6px}.group-panel{padding:12px}.group-panel__header{gap:6px}.group-panel__title{padding:8px;font-size:.9rem}.group-panel__toolbar{gap:1px;padding:2px}.group-panel__action{width:34px;height:34px}.step-rail{padding:10px}.step-rail__button{justify-content:center;width:100%;padding:10px 14px;font-size:.86rem}.button-row{gap:8px}.button-row .button{width:100%}.button-row--compact{gap:6px}.action-footer{flex-direction:column;align-items:stretch;gap:10px}.tab-switcher{width:100%}.tab-switcher__button{text-align:center;flex:1;padding:10px 12px;font-size:.86rem}.ftp-actions{flex-direction:column;gap:8px}.ftp-actions--connected{flex-direction:column}.profile-row{flex-wrap:nowrap}.side-card__header{flex-wrap:wrap;gap:4px 8px}.side-card__meta{text-align:left;width:100%;margin-left:0}.toolbar__dirty-badge{justify-content:center;width:100%}.avatar-frame{width:38px;height:38px}.empty-state{min-height:280px;padding:28px 16px}.empty-state__title{font-size:1.08rem}.info-banner{gap:10px;padding:12px 14px;font-size:.8rem}.info-banner__dismiss{place-items:center;min-width:28px;min-height:28px;padding:6px;display:grid}.confirm-bar{flex-direction:column;align-items:stretch;gap:10px;padding:10px 12px}.confirm-bar__actions{width:100%}.confirm-bar__actions .button{flex:1}.modal-card{min-width:unset;width:100%;max-width:calc(100vw - 24px);margin:12px;padding:20px}.modal-card__actions{flex-direction:column}.modal-card__actions .button{width:100%}}@media (width<=380px){.app-shell{padding:8px 8px 28px}.hero-bar__accent,.hero-bar__title{font-size:.95rem}.workspace-card,.side-card,.action-footer,.group-panel{padding:10px}.field-input,.group-panel__title{padding:10px 12px;font-size:.86rem}.button{padding:10px 14px;font-size:.82rem}.panel-header h2{font-size:1rem}.panel-header--roster.panel-header--tight,.panel-header--config.panel-header--tight{grid-template-columns:1fr}.panel-header--roster.panel-header--tight>:last-child,.panel-header--config.panel-header--tight>:last-child{justify-self:stretch}.panel-header__new-group,.panel-header__actions{width:100%}.panel-header__new-group{justify-content:center}.panel-header__actions{flex-wrap:wrap;gap:6px}.panel-header__actions .icon-btn.panel-header__action-btn,.panel-header__preset{flex:100%}}.field-input:focus-visible,.group-panel__title:focus-visible,.editor-textarea:focus-visible,.cselect__trigger:focus-visible,.button:focus-visible,.icon-btn:focus-visible{outline-offset:2px;outline:2px solid #7df1cf80}.cselect__menu::-webkit-scrollbar{width:6px}.editor-textarea::-webkit-scrollbar{width:6px}.cselect__menu::-webkit-scrollbar-track{background:0 0}.editor-textarea::-webkit-scrollbar-track{background:0 0}.cselect__menu::-webkit-scrollbar-thumb{background:#97bfd826;border-radius:3px}.editor-textarea::-webkit-scrollbar-thumb{background:#97bfd826;border-radius:3px}.cselect__menu::-webkit-scrollbar-thumb:hover{background:#97bfd840}.editor-textarea::-webkit-scrollbar-thumb:hover{background:#97bfd840}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;place-items:center;animation:.15s ease-out fade-in;display:grid;position:fixed;inset:0}.modal-card{-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);background:#0e161ef5;border:1px solid #97bfd81f;border-radius:18px;width:100%;min-width:360px;max-width:460px;padding:28px;animation:.2s ease-out modal-pop;box-shadow:0 24px 80px #00000080,0 0 0 1px #ffffff08}.modal-card__header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-card__header h3{margin:0;font-size:1.05rem}.modal-card__close{width:28px;height:28px;color:var(--muted);cursor:pointer;background:#ffffff0f;border:0;border-radius:8px;place-items:center;padding:0;transition:background .15s;display:grid}.modal-card__close:hover{color:var(--text);background:#ffffff1f}.modal-card__body{color:var(--muted);margin:0 0 20px;font-size:.88rem}.modal-card__actions{gap:10px;display:flex}.modal-card__actions .button{text-align:center;flex:1;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:scale(.92)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.ftp-gate{text-align:center;place-items:center;gap:14px;padding:48px 32px;display:grid}.ftp-gate--editor{min-height:360px}.ftp-gate__icon{width:68px;height:68px;color:var(--accent);background:linear-gradient(145deg,#7df1cf29,#7df1cf0a);border:1px solid #7df1cf38;border-radius:20px;place-items:center;display:grid;box-shadow:0 14px 38px #7df1cf1f}.ftp-gate__icon--logs{color:#9fb1ff;background:linear-gradient(145deg,#9fb1ff38,#6376e41f);border-color:#9fb1ff57;box-shadow:0 14px 38px #6376e42e}.ftp-gate__icon--crashes{color:#ffbf73;background:linear-gradient(145deg,#ffbf733d,#ff7c691a);border-color:#ffbf7357;box-shadow:0 14px 38px #ff7c6929}.ftp-gate__icon--roster{color:#7df1cf;background:linear-gradient(145deg,#7df1cf33,#4ab6911a);border-color:#7df1cf4d;box-shadow:0 14px 38px #4ab69124}.ftp-gate__icon--config{color:#6ee7da;background:linear-gradient(145deg,#6ee7da38,#4aabba1f);border-color:#6ee7da57;box-shadow:0 14px 38px #4aabba29}.ftp-gate__title{letter-spacing:-.01em;margin:0;font-size:1.25rem}.ftp-gate__copy{color:var(--muted);max-width:440px;margin:0;line-height:1.55}.ftp-gate__hint{color:var(--muted);opacity:.75;margin:6px 0 0;font-size:.78rem}.logs-view{grid-template-columns:260px minmax(0,1fr);min-height:640px;display:grid;overflow:hidden}.logs-view__sidebar{border-right:1px solid var(--border);background:#080e1480;flex-direction:column;min-height:0;display:flex}.logs-view__sidebar-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 12px;display:flex}.logs-view__heading{letter-spacing:-.01em;margin:0;font-size:1.05rem}.logs-view__list{flex-direction:column;flex:1;gap:2px;margin:0;padding:8px;list-style:none;display:flex;overflow-y:auto}.logs-view__empty,.logs-view__placeholder{color:var(--muted);text-align:center;place-items:center;gap:10px;padding:32px 24px;font-size:.9rem;display:grid}.logs-view__placeholder{min-height:240px}.logs-view__error{background:var(--danger-surface);color:#ffd6d4;border:1px solid #ff8b8742;border-radius:10px;margin:10px 14px;padding:10px 12px;font-size:.82rem}.logs-view__error--block{margin:16px}.log-entry{border-radius:12px;align-items:center;gap:4px;padding:2px;transition:background .12s;display:flex}.log-entry:hover,.log-entry.is-active{background:#7df1cf14}.log-entry.is-active{box-shadow:inset 0 0 0 1px #7df1cf38}.log-entry__main{min-width:0;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:8px 10px;display:flex}.log-entry__name{font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.82rem;overflow:hidden}.log-entry__meta{color:var(--muted);align-items:center;gap:6px;font-size:.72rem;display:flex}.log-entry__dot{opacity:.4}.log-entry__actions{opacity:0;gap:2px;padding-right:6px;transition:opacity .12s;display:flex}.log-entry:hover .log-entry__actions,.log-entry.is-active .log-entry__actions{opacity:1}.icon-button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#ffffff0a;border:0;border-radius:8px;place-items:center;padding:0;transition:background .12s,color .12s;display:grid}.icon-button:hover:not(:disabled){color:var(--text);background:#ffffff1a}.icon-button:disabled{opacity:.4;cursor:not-allowed}.icon-button--sm{width:26px;height:26px}.icon-button--danger:hover:not(:disabled){color:var(--danger);background:#ff8b872e}.icon-button .spin,.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.logs-view__main{flex-direction:column;min-height:0;display:flex;overflow:hidden}.logs-view__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 12px;display:flex}.logs-view__title{font-family:var(--mono);letter-spacing:-.005em;margin:0;font-size:1rem}.logs-view__subtitle{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:.78rem;display:flex}.logs-view__header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.segmented{border:1px solid var(--border);background:#ffffff0a;border-radius:999px;padding:3px;display:inline-flex}.segmented__option{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:.82rem;transition:background .12s,color .12s}.segmented__option.is-active{color:var(--text);background:linear-gradient(135deg,#7df1cf2e,#ffcb771f)}.logs-view__controls{border-bottom:1px solid var(--border);background:#080e144d;flex-direction:column;gap:10px;padding:12px 22px;display:flex}.logs-view__search{align-items:center;gap:8px;display:flex}.logs-view__search input{border:1px solid var(--border);color:var(--text);background:#050a0e99;border-radius:10px;flex:1;padding:9px 14px;font-size:.88rem}.logs-view__search input:focus{border-color:#7df1cf66;outline:none}.logs-view__filters{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#ffffff08;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.76rem;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.chip:hover:not(:disabled){color:var(--text)}.chip:disabled{opacity:.4;cursor:not-allowed}.chip.is-active{color:var(--text);background:#7df1cf24;border-color:#7df1cf61}.chip__count{font-family:var(--mono);opacity:.7;background:#ffffff0f;border-radius:999px;padding:1px 6px;font-size:.68rem}.chip.log-level--error.is-active{color:var(--danger);background:#ff8b8729;border-color:#ff8b8773}.chip.log-level--warn.is-active{color:var(--warn);background:#ffcb7729;border-color:#ffcb7773}.chip.log-level--info.is-active{color:var(--accent);background:#7df1cf24;border-color:#7df1cf66}.chip.log-level--debug.is-active{color:var(--muted);background:#97bfd824;border-color:#97bfd85c}.logs-view__raw{color:#cfe0ea;font-family:var(--mono);white-space:pre;background:#04090d80;flex:1;margin:0;padding:16px 22px;font-size:.78rem;line-height:1.55;overflow:auto}.logs-view__pretty{background:#04090d61;flex:1;overflow:auto}.logs-view__truncation{color:var(--warn);background:#ffcb7714;border-bottom:1px solid #ffcb7733;padding:8px 22px;font-size:.78rem}.logs-view__lines{font-family:var(--mono);background:#090f148c;border:1px solid #97bfd814;border-radius:12px;max-height:72vh;margin:0;padding:0;font-size:.78rem;list-style:none;overflow-y:auto}.log-line{border-bottom:1px solid #ffffff08;grid-template-columns:54px 118px auto minmax(0,1fr);align-items:baseline;gap:10px;padding:5px 14px;line-height:1.55;display:grid}.log-line:nth-child(2n){background:#ffffff04}.log-line:hover{background:#7df1cf0d}.log-line__level{letter-spacing:.04em;text-transform:uppercase;border-radius:6px;justify-content:center;align-items:center;padding:1px 6px;font-size:.7rem;font-weight:600;display:inline-flex}.log-level--error{color:var(--danger)}.log-level--warn{color:var(--warn)}.log-level--info{color:var(--accent)}.log-level--debug{color:var(--muted)}.log-level--unknown{color:#97bfd880}.log-line__level.log-level--error{background:#ff8b8729}.log-line__level.log-level--warn{background:#ffcb7729}.log-line__level.log-level--info{background:#7df1cf1f}.log-line__level.log-level--debug{background:#97bfd81a}.log-line__level.log-level--unknown{background:#97bfd80f}.log-line__time{color:#97bfd8b3;white-space:nowrap;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:inline-flex}.log-line__date{color:#97bfd86b;font-size:.72rem}.log-line__clock{color:#97bfd8d1}.log-line__time--muted{color:#97bfd840}.log-line__subsystem{color:#b9ffbfb8;margin-right:4px;font-weight:500}.log-line__category{color:#ffcb77b8;white-space:nowrap;background:#ffcb7714;border-radius:999px;place-self:center start;width:fit-content;padding:1px 8px;font-size:.7rem}.log-line__message{color:#d7e6ee;word-break:break-word;white-space:pre-wrap}.crash-view{flex-direction:column;gap:16px;padding:24px 26px 26px;display:flex}.crash-view__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.crash-view__title{letter-spacing:-.01em;margin:4px 0;font-size:1.15rem}.crash-view__copy{color:var(--muted);max-width:none;margin:0;font-size:.86rem;line-height:1.5}.crash-view__copy code{color:var(--accent);background:#ffffff0d;border-radius:5px;padding:1px 6px;font-size:.8rem}.crash-view__header-actions{flex-wrap:wrap;flex-shrink:0;gap:8px;display:flex}.crash-view__empty{color:var(--muted);border:1px dashed var(--border);text-align:center;border-radius:16px;place-items:center;gap:10px;padding:60px 24px;display:grid}.crash-view__toolbar{border:1px solid var(--border);background:#080e1480;border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px;padding:10px 14px;display:flex}.crash-view__toolbar-meta{color:var(--muted);flex:1;font-size:.82rem}.checkbox{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.85rem;display:inline-flex}.checkbox input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.crash-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.crash-list-section{flex-direction:column;gap:8px;display:flex}.crash-list-section__header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.crash-list-section__title{letter-spacing:.08em;text-transform:uppercase;color:#d7e6eee6;font-size:.78rem;font-weight:700}.crash-list-section__meta{color:var(--muted);font-size:.75rem}.crash-list--featured{gap:8px}.crash-list__row{border:1px solid var(--border);background:#080e1473;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:12px 14px;transition:border-color .12s,background .12s;display:grid}.crash-list__row:hover{border-color:var(--border-strong)}.crash-list__row.is-selected{background:#7df1cf0f;border-color:#7df1cf66}.crash-list__row--featured{background:#ffffff05;border-color:#97bfd82e}.crash-list__row--featured:hover{border-color:#97bfd84d}.crash-list__row--featured.is-selected{background:#7df1cf0f;border-color:#7df1cf66}.crash-list__info{min-width:0}.crash-list__name-row{align-items:center;gap:10px;min-width:0;display:flex}.crash-list__name{font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;overflow:hidden}.crash-list__tag{letter-spacing:.08em;font-size:.68rem;font-weight:700;font-family:var(--mono);border-radius:6px;align-items:center;padding:2px 8px;display:inline-flex}.crash-list__tag--dump{color:var(--danger);background:#ff8b8724}.crash-list__tag--log{color:var(--accent);background:#7df1cf1f}.crash-list__meta{color:var(--muted);font-size:.74rem;font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.crash-list__rel{opacity:.7}.crash-list__actions{flex-shrink:0}.crash-list__check input{margin:0}.modal-card--wide{max-width:540px}.crash-modal__steps{color:var(--muted);margin:14px 0 18px;padding-left:20px;font-size:.88rem;line-height:1.6}.crash-modal__steps li{margin-bottom:4px}.crash-modal__files{border:1px solid var(--border);background:#090f1459;border-radius:8px;flex-direction:column;gap:6px;margin:0 0 18px;padding:10px 12px;list-style:none;display:flex}.crash-modal__files li{align-items:center;gap:10px;min-width:0;font-size:.82rem;display:flex}.crash-modal__file-name{color:#d7e6ee;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.crash-modal__file-meta{color:var(--muted);white-space:nowrap;font-size:.76rem}.crash-modal__actions{flex-wrap:wrap;gap:10px;display:flex}.crash-modal__actions .button{flex:1;justify-content:center;min-width:180px;text-decoration:none}.crash-modal__note{color:var(--muted);opacity:.72;margin:14px 0 0;font-size:.76rem}.crash-modal__note code{background:#ffffff0d;border-radius:5px;padding:1px 6px;font-size:.74rem}@media (width<=960px){.logs-view{grid-template-columns:1fr}.logs-view__sidebar{border-right:0;border-bottom:1px solid var(--border);max-height:280px}.log-line{grid-template-columns:56px 1fr;row-gap:2px}.log-line__time,.log-line__category{grid-column:2;font-size:.72rem}.log-line__message{grid-column:1/-1}}.panel-header--roster,.panel-header--config,.panel-header--logs,.panel-header--crashes{background:linear-gradient(120deg,#7df1cf0d,#ffcb770a 52%,#ffffff03);border:1px solid #97bfd814;border-radius:12px;margin-bottom:14px;padding:10px 12px}.panel-header--logs.panel-header--tight,.panel-header--crashes.panel-header--tight{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.panel-header--logs.panel-header--tight>:last-child,.panel-header--crashes.panel-header--tight>:last-child{justify-self:end}.panel-header__action-btn--primary{text-shadow:0 1px #00000059;color:#eef4f8!important;background:linear-gradient(135deg,#7df1cf47,#ffcb7738)!important;font-weight:700!important}.panel-header__action-btn--primary:hover:not(:disabled){background:linear-gradient(135deg,#7df1cf61,#ffcb774d)!important}.logs-view__loadmore{flex-wrap:wrap;justify-content:center;gap:10px;padding:14px 0 4px;display:flex}.log-year-select{position:relative}.log-year-select__trigger{align-items:center;gap:8px;display:inline-flex}.log-year-select__menu{z-index:50;background:#0b1218fa;border:1px solid #97bfd824;border-radius:12px;flex-direction:column;gap:2px;min-width:180px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #0000007a}.log-year-select__option{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:.82rem}.log-year-select__option:hover{background:#7df1cf14}.log-year-select__option.is-active{color:var(--text);background:linear-gradient(135deg,#7df1cf2e,#ffcb771f)}.log-year-select__divider{background:#97bfd81a;height:1px;margin:4px 2px}.logs-view__status{color:#97bfd8bf;background:#7df1cf0a;border:1px solid #7df1cf1a;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:8px 12px;font-size:.76rem;display:flex}.logs-view__status-hint{color:#97bfd873;font-size:.72rem}.logs-view__pretty{flex-direction:column;gap:6px;display:flex}.crash-view__copy{color:#97bfd8bf;margin:0 4px 10px;font-size:.85rem}.crash-view__copy code{background:#ffffff0d;border-radius:5px;padding:1px 6px;font-size:.78rem}
