:root{--bg:#121315;--rail:#0f1012;--surface:#1b1c1e;--surface-2:#232426;--surface-3:#2c2d30;--line:#ffffff0d;--line-strong:#ffffff17;--text:#fff;--muted:#8b8c8f;--faint:#56575b;--accent:#d4d5d8;--accent-hover:#e2e3e5;--accent-soft:#d4d5d81f;--accent-line:#d4d5d88c;--on-accent:#121315;--danger:#ef5b5b;--danger-soft:#ef5b5b24;--success:#6fd98c;--success-soft:#6fd98c1f;--gold:#e8c26a;--silver:#c9ccd3;--bronze:#c98a5a;--warn:#f0b45a;--warn-soft:#f0b45a1f;--info:#7aa7ff;--info-soft:#7aa7ff24;--violet:#b195ff;--violet-soft:#b195ff24;--radius-lg:1.5rem;--radius-md:1rem;--radius-sm:.75rem;--radius-xs:.5rem;--gap:1rem;--font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--buncss-light: ;--buncss-dark:initial;color-scheme:dark}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;user-select:none;width:100%;height:100%;font-size:14px;line-height:1.5}#root{display:flex;flex-direction:column;width:100%;height:100%}button{font:inherit;color:inherit;cursor:pointer;user-select:none;outline:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none}input,select,textarea{font:inherit;color:inherit;outline:none;background:0 0;border:none}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffffff38}.splash{display:grid;grid-template-columns:minmax(0,1fr);text-align:center;background:var(--bg);color:var(--text);place-content: center;justify-items:center;gap:.75rem;height:100%;min-height:100vh;padding:1.5rem}.splash__title{color:var(--text);font-size:1.25rem;font-weight:700}.splash__text{color:var(--muted);max-width:22.5rem;line-height:1.5}.splash .btn{border-radius:12px;min-height:2.75rem;margin-top:.5rem;padding:.85rem 1.75rem;font-size:.95rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:1rem;padding:1.25rem;box-shadow:0 4px 20px #0003}.panel-subtle{background:var(--surface-2)}.panel-header{display:flex;justify-content:space-between;align-items: center}.panel-title{color:var(--text);display:flex;align-items: center;gap:.5rem;font-size:1rem;font-weight:700}.panel-desc{color:var(--muted);font-size:.8rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.stat-card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.35rem;padding:1rem}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:500}.stat-value{color:var(--text);letter-spacing:-.02em;display:flex;align-items:baseline;gap:.35rem;font-size:1.4rem;font-weight:800}.stat-hint{color:var(--faint);font-size:.75rem}.btn{display:inline-flex;border-radius:var(--radius-sm);justify-content:center;align-items: center;gap:.5rem;height:38px;padding:0 1rem;transition:all .15s;font-size:.85rem;font-weight:600}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--line-strong)}.btn-secondary:hover{background:var(--surface-3);border-color:#ffffff26}.btn-danger{background:var(--danger-soft);color:var(--danger);border:1px solid #ef5b5b4d}.btn-danger:hover{background:var(--danger);color:#fff}.btn-success{background:var(--success-soft);color:var(--success);border:1px solid #6fd98c4d}.btn-success:hover{background:var(--success);color:#121315}.btn-ghost{color:var(--muted);background:0 0;border:1px solid #0000}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-sm{height:30px;padding:0 .75rem;font-size:.78rem}.badge{display:inline-flex;letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items: center;gap:.35rem;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.badge-leader{color:var(--gold);background:#e8c26a26;border:1px solid #e8c26a59}.badge-deputy{color:var(--violet);background:#b195ff26;border:1px solid #b195ff59}.badge-recruiter{color:var(--info);background:#7aa7ff26;border:1px solid #7aa7ff59}.badge-member{color:var(--muted);border:1px solid var(--line);background:#ffffff14}.avatar{position:relative;overflow:hidden;background:var(--surface-3);border-radius:50%;flex-shrink:0}.avatar img{object-fit:cover;display:block;width:100%;height:100%}.avatar-fallback{display:flex;color:var(--muted);justify-content:center;align-items: center;width:100%;height:100%;font-size:.85em;font-weight:700}.person-row{display:flex;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);justify-content:space-between;align-items: center;gap:1rem;padding:.85rem 1rem;transition:border-color .15s,background .15s}.person-row:hover{border-color:var(--line-strong);background:#232426e6}.person-info{display:flex;align-items: center;gap:.85rem;min-width:0}.person-names{display:flex;flex-direction:column;min-width:0}.person-primary{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.person-secondary{color:var(--muted);font-size:.75rem}.person-actions{display:flex;flex-shrink:0;align-items: center;gap:.5rem}.tabs{display:flex;overflow-x:auto;align-items: center;gap:.5rem}.tab-btn{position:relative;color:var(--muted);border-radius:var(--radius-sm)var(--radius-sm)0 0;padding:.65rem 1.1rem;transition:color .15s;font-size:.85rem;font-weight:600}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:#fff}.tab-btn.active:after{content:"";position:absolute;background:var(--gold);border-radius:999px;height:2px;bottom:-1px;left:0;right:0}.dialog-overlay{position:fixed;backdrop-filter:blur(6px);display:flex;z-index:100;animation:.15s ease-out fadeIn;background:#000000bf;justify-content:center;align-items: center;padding:1.5rem;inset:0}.dialog-card{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);overflow:hidden;display:flex;animation:.15s ease-out scaleIn;flex-direction:column;width:100%;max-width:480px;box-shadow:0 16px 40px #0009}.dialog-header{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items: center;padding:1.25rem 1.5rem}.dialog-title{color:var(--text);font-size:1.1rem;font-weight:700}.dialog-body{display:flex;overflow-y:auto;flex-direction:column;gap:1rem;max-height:70vh;padding:1.5rem}.dialog-footer{border-top:1px solid var(--line);display:flex;background:var(--surface-2);justify-content:flex-end;align-items: center;gap:.75rem;padding:1rem 1.5rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;font-weight:600}.form-input{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--text);padding:.65rem .85rem;transition:border-color .15s;font-size:.9rem}.form-input:focus{border-color:var(--accent-line)}.form-select{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--text);padding:.65rem .85rem;font-size:.9rem}.progress-bar{background:var(--surface-3);overflow:hidden;border-radius:999px;width:100%;height:8px}.progress-fill{background:linear-gradient(90deg,#e8c26a,#c98a5a);border-radius:999px;height:100%;transition:width .3s}.member-search{display:flex;position:relative;flex-direction:column;gap:.5rem;width:100%}.member-search__field{display:flex;position:relative;align-items: center;width:100%}.member-search__icon{position:absolute;color:var(--muted);pointer-events:none;width:18px;height:18px;left:.75rem}.member-search__input{width:100%;padding-left:2.35rem!important}.member-search__spinner{position:absolute;border:2px solid var(--line-strong);border-top-color:var(--gold);animation:.8s linear infinite search-spin;border-radius:50%;width:16px;height:16px;right:.75rem}@keyframes search-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.member-search__list{display:flex;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);list-style:none;overflow-y:auto;flex-direction:column;gap:.25rem;max-height:220px;margin:0;padding:.375rem}.member-search__item{display:flex;border-radius:var(--radius-sm);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items: center;gap:.75rem;width:100%;padding:.5rem .625rem;transition:background .15s}.member-search__item:hover{background:var(--surface-3)}.member-search__info{display:flex;flex-direction:column;flex:1;gap:.1rem;min-width:0}.member-search__name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600}.member-search__id{color:var(--muted);font-size:.75rem}.member-search__empty{color:var(--muted);text-align:center;padding:.75rem;font-size:.85rem}.member-search__picked{display:flex;background:var(--surface-2);border:1px solid var(--accent-line,var(--line-strong));border-radius:var(--radius-sm);align-items: center;gap:.75rem;padding:.65rem .85rem}.member-search__picked-info{display:flex;flex-direction:column;flex:1;gap:.1rem;min-width:0}.member-search__picked-name{color:var(--text);font-size:.9rem;font-weight:700}.member-search__picked-id{color:var(--muted);font-size:.75rem}.admin-card{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:1rem;padding:1.25rem;transition:border-color .15s}.admin-card:hover{border-color:var(--line-strong)}.admin-clan-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items: center;gap:1rem}.admin-clan-info{display:flex;align-items: center;gap:.85rem}.admin-clan-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));background:var(--surface-2);border-radius:var(--radius-sm);gap:.75rem;padding:.75rem}.admin-clan-channels{display:flex;flex-wrap:wrap;gap:.65rem;font-size:.8rem}.channel-tag{display:inline-flex;background:var(--surface-3);border-radius:999px;align-items: center;gap:.35rem;padding:.25rem .6rem;font-size:.78rem}.channel-tag--ok{color:#4ade80;border:1px solid #4ade8040}.channel-tag--missing{color:#f87171;border:1px solid #f8717140}.admin-clan-actions{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem}.territories-map-card{position:relative;border-radius:var(--radius-md);overflow:hidden;background:var(--surface-1);border:1px solid var(--line);display:flex;justify-content:center;align-items: center;width:100%;min-height:280px}.territories-map-image{display:block;border-radius:var(--radius-md);cursor:zoom-in;width:100%;height:auto;transition:filter .2s}.territories-map-image:hover{filter:brightness(1.03)}.territories-map-loader{display:flex;color:var(--muted);flex-direction:column;justify-content:center;align-items: center;gap:.85rem;padding:4rem 1rem;font-size:.88rem}.territories-map-spinner{border:3px solid var(--line-strong);border-top-color:var(--gold);animation:.8s linear infinite search-spin;border-radius:50%;width:32px;height:32px}.territories-map-modal{position:fixed;z-index:1000;display:flex;backdrop-filter:blur(8px);background:#0a0b0df0;flex-direction:column;justify-content:center;align-items: center;padding:1.5rem;inset:0}.territories-map-modal-close{position:absolute;z-index:1001;top:1.25rem;right:1.25rem}.territories-map-modal-img{object-fit:contain;border-radius:var(--radius-sm);max-width:95vw;max-height:90vh;box-shadow:0 16px 48px #0009}.avatar-uploader{display:flex;background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--radius-md);align-items: center;gap:1rem;margin-bottom:.5rem;padding:.85rem}.avatar-uploader__preview{overflow:hidden;background:var(--surface-3);display:flex;border:2px solid var(--line-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:64px;height:64px}.avatar-uploader__preview img{object-fit:cover;width:100%;height:100%}.avatar-uploader__controls{display:flex;flex-direction:column;flex:1;gap:.5rem}.avatar-uploader__actions{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem}.shell{display:flex;background:var(--bg);overflow:hidden;flex-direction:column;width:100%;height:100%}.shell-header{display:flex;background:var(--rail);border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items: center;height:60px;min-height:60px;padding:0 1.5rem}.shell-brand{display:flex;align-items: center;gap:.75rem}.shell-logo{border-radius:var(--radius-sm);display:flex;color:#121315;background:linear-gradient(135deg,#e8c26a,#c98a5a);justify-content:center;align-items: center;width:32px;height:32px;font-weight:700;box-shadow:0 4px 12px #e8c26a40}.shell-title{letter-spacing:-.01em;color:var(--text);font-size:1rem;font-weight:700}.shell-subtitle{color:var(--muted);font-size:.75rem}.shell-actions{display:flex;align-items: center;gap:.75rem}.shell-user{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items: center;gap:.65rem;padding:.35rem .65rem}.shell-user-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.85rem;font-weight:600}.shell-body{display:flex;overflow:hidden;position:relative;flex-direction:column;flex:1}.shell-nav{background:var(--rail);border-bottom:1px solid var(--line);padding:.75rem 1.5rem 0}.shell-content{overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes pulseGlow{0%,to{opacity:.6}50%{opacity:1}}
