*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{line-height:1.5}body,button,input,select,textarea{font-family:'Plus Jakarta Sans',sans-serif}button,input,select,textarea{font:inherit}input[type="checkbox"]{accent-color:var(--accent-primary)}.hidden{display:none!important}
body.login-page{--bg-primary:#f4f7fb;--bg-secondary:rgba(255,255,255,.94);--bg-tertiary:#eef3f8;--bg-hover:#e4edf7;--accent-primary:#2563eb;--accent-primary-strong:#1d4ed8;--accent-soft:#dbeafe;--accent-green:#15803d;--accent-red:#dc2626;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-color:#d9e2ec;--shadow-card:0 24px 60px rgba(15,23,42,.08);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;color:var(--text-primary);background:var(--bg-primary);position:relative}
body.login-page .bg-effects{position:fixed;inset:0;pointer-events:none;overflow:hidden}body.login-page .bg-effects::before,body.login-page .bg-effects::after{content:'';position:absolute;border-radius:999px;filter:blur(10px)}body.login-page .bg-effects::before{width:300px;height:300px;top:-90px;right:-100px;background:rgba(37,99,235,.08)}body.login-page .bg-effects::after{width:260px;height:260px;bottom:-70px;left:-70px;background:rgba(15,118,110,.08)}
.login-container{width:100%;max-width:460px;position:relative;z-index:1}.login-card{background:var(--bg-secondary);border:1px solid rgba(217,226,236,.9);border-radius:28px;padding:40px;box-shadow:var(--shadow-card);backdrop-filter:blur(12px)}.login-kicker{width:fit-content;margin:0 auto 18px;padding:8px 14px;border-radius:999px;background:var(--accent-soft);color:var(--accent-primary);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.login-title{text-align:center;font-size:clamp(2rem,4vw,2.35rem);line-height:1.1;font-weight:800;letter-spacing:-.04em;margin-bottom:10px}.login-subtitle{max-width:320px;margin:0 auto 32px;text-align:center;color:var(--text-secondary);font-size:15px}.form-group{margin-bottom:22px}.form-label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.form-input{width:100%;padding:14px 16px;border-radius:16px;border:1px solid var(--border-color);background:#fff;color:var(--text-primary);font-size:15px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:rgba(37,99,235,.45);box-shadow:0 0 0 4px rgba(37,99,235,.12);background:#fff}.btn-login{width:100%;border:1px solid transparent;border-radius:16px;padding:14px 18px;background:var(--accent-primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;box-shadow:0 16px 30px rgba(37,99,235,.16)}.btn-login:hover{background:var(--accent-primary-strong);transform:translateY(-1px)}.btn-login:active{transform:translateY(0)}.btn-login:disabled{opacity:.75;cursor:not-allowed;transform:none}.btn-success{background:var(--accent-green)!important;box-shadow:0 16px 30px rgba(21,128,61,.16)!important;pointer-events:none}
.spinner{border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;width:18px;height:18px;animation:spin .8s linear infinite;display:inline-block;vertical-align:middle;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.error-msg{display:none;align-items:center;gap:10px;margin-top:18px;padding:13px 14px;border-radius:16px;border:1px solid rgba(220,38,38,.14);background:rgba(254,242,242,.95);color:var(--accent-red);font-size:13px;font-weight:600}.error-msg.show{display:flex}.error-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:currentColor}.key-info{display:none;margin-top:18px;padding:16px;border-radius:18px;border:1px solid rgba(21,128,61,.16);background:rgba(240,253,244,.98)}.key-info.show{display:block}.key-info-title{color:var(--accent-green);font-size:14px;font-weight:800;margin-bottom:12px;text-align:center}.key-info-details{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--text-secondary);padding-top:12px;border-top:1px solid rgba(21,128,61,.12)}.key-info-details strong{color:var(--text-primary)}.login-footer{margin-top:24px;text-align:center;color:var(--text-muted);font-size:12px;font-weight:600}
.shake{animation:shake .45s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}
body.dashboard-page{--bg-primary:#f5f7fb;--bg-secondary:rgba(255,255,255,.94);--bg-tertiary:#f8fafc;--bg-hover:#eef3f9;--accent-primary:#2563eb;--accent-primary-strong:#1d4ed8;--accent-soft:#e8f0ff;--accent-green:#15803d;--accent-green-soft:#edf8ef;--accent-red:#dc2626;--accent-red-soft:#fef2f2;--accent-yellow:#b45309;--accent-yellow-soft:#fff7ed;--accent-cyan:#0f766e;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border-color:#dce4ee;--shadow-soft:0 12px 32px rgba(15,23,42,.06);--shadow-hover:0 18px 42px rgba(15,23,42,.08);min-height:100vh;color:var(--text-primary);background:var(--bg-primary);overflow-x:hidden}
body.dashboard-page .bg-effects{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}body.dashboard-page .bg-effects::before,body.dashboard-page .bg-effects::after{content:'';position:absolute;border-radius:999px;filter:blur(8px)}body.dashboard-page .bg-effects::before{width:360px;height:360px;top:-140px;right:-120px;background:rgba(37,99,235,.06)}body.dashboard-page .bg-effects::after{width:280px;height:280px;bottom:-80px;left:-90px;background:rgba(15,118,110,.06)}
.app-container{display:flex;min-height:100vh;position:relative;z-index:1}.sidebar{width:248px;position:fixed;top:0;left:0;height:100vh;display:flex;flex-direction:column;background:var(--bg-secondary);border-right:1px solid rgba(220,228,238,.95);backdrop-filter:blur(14px);transition:width .25s ease}.sidebar.sidebar-collapsed{width:88px}.sidebar-header{padding:24px 20px 18px;border-bottom:1px solid rgba(220,228,238,.95)}.sidebar-brand-wrap{display:flex;flex-direction:column;gap:4px}.sidebar-brand{font-size:18px;font-weight:800;letter-spacing:-.03em;color:var(--text-primary)}.sidebar-subbrand{font-size:12px;color:var(--text-secondary)}.sidebar-nav{padding:18px 12px;display:flex;flex-direction:column;gap:8px;flex:1}
.nav-link{display:flex;align-items:center;gap:12px;text-decoration:none;padding:14px 16px;border-radius:18px;border:1px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:600;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.nav-link:hover{background:var(--bg-hover);border-color:rgba(220,228,238,.95);color:var(--text-primary);transform:translateY(-1px)}.nav-link.active{background:var(--accent-soft);border-color:rgba(37,99,235,.12);color:var(--accent-primary)}.nav-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:var(--accent-primary)}.sidebar-footer{padding:16px;border-top:1px solid rgba(220,228,238,.95)}.user-info-box{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;background:#fff;border:1px solid rgba(220,228,238,.95)}.user-details-box{flex:1;min-width:0}.user-label-text{font-size:11px;font-weight:700;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.user-key-text{margin-top:4px;font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{border:1px solid transparent;background:transparent;color:var(--text-secondary);padding:8px 12px;border-radius:12px;cursor:pointer;font-size:12px;font-weight:700;transition:background .2s ease,color .2s ease,border-color .2s ease}.logout-btn:hover{color:var(--accent-red);background:var(--accent-red-soft);border-color:rgba(220,38,38,.1)}
.main-content{flex:1;margin-left:248px;min-height:100vh;padding:32px;transition:margin-left .25s ease}.main-content.sidebar-collapsed{margin-left:88px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:28px}.page-copy{max-width:620px}.page-tag{display:inline-block;margin-bottom:10px;color:var(--accent-primary);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.page-title{font-size:clamp(2rem,4vw,2.7rem);line-height:1.05;font-weight:800;letter-spacing:-.05em}.page-subtitle{margin-top:10px;color:var(--text-secondary);font-size:15px;max-width:560px}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.action-btn{border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);padding:10px 16px;border-radius:14px;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.action-btn:hover{background:var(--bg-hover);border-color:rgba(37,99,235,.18);color:var(--text-primary);transform:translateY(-1px)}.save-indicator{display:none;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid rgba(21,128,61,.12);background:var(--accent-green-soft);color:var(--accent-green);font-size:12px;font-weight:800;letter-spacing:.04em}.save-indicator.show{display:inline-flex}
.save-dot,.expiry-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.28)}}
.connection-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;margin-bottom:20px;border-radius:18px;border:1px solid var(--border-color);background:var(--bg-secondary);box-shadow:var(--shadow-soft)}.connection-label{font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--text-secondary);text-transform:uppercase}.connection-text{font-size:14px;font-weight:700;color:var(--text-primary)}.connection-text.is-error{color:var(--accent-red)}.connection-text.is-loading{color:var(--accent-yellow)}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:26px}.stat-card{position:relative;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;overflow:hidden}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:rgba(37,99,235,.14)}.stat-card::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:4px}.stat-card.accent-purple::before{background:var(--accent-primary)}.stat-card.accent-green::before{background:var(--accent-green)}.stat-card.accent-cyan::before{background:var(--accent-cyan)}.stat-card.wide{grid-column:span 2}
.stat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.stat-label{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary)}.stat-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:var(--bg-tertiary);border:1px solid rgba(220,228,238,.95);color:var(--text-secondary);font-size:11px;font-weight:700}.stat-value{font-size:clamp(2rem,3vw,2.75rem);line-height:1;font-weight:800;letter-spacing:-.05em;color:var(--text-primary);overflow-wrap:anywhere}.stat-value-accent{color:var(--accent-cyan)}.stat-sub{margin-top:8px;color:var(--text-secondary);font-size:14px}.stat-sub-strong{font-weight:800;color:var(--text-primary)}.stat-note{margin-top:14px;color:var(--text-secondary);font-size:13px}.stat-inline{display:flex;align-items:center;gap:18px}.stat-inline-item{display:flex;flex-direction:column;gap:4px}.stat-inline-item .value{font-size:clamp(1.7rem,2.4vw,2.2rem);font-weight:800;letter-spacing:-.04em}.stat-inline-item .label{font-size:12px;font-weight:700}.stat-positive{color:var(--accent-green)}.stat-negative{color:var(--accent-red)}.stat-divider{width:1px;align-self:stretch;background:rgba(220,228,238,.95)}
.slot-bar{width:100%;height:8px;margin-top:16px;border-radius:999px;background:var(--bg-tertiary);overflow:hidden}.slot-bar-fill{height:100%;width:0;border-radius:inherit;background:var(--accent-primary);transition:width .35s ease}.stat-wide-layout{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.stat-primary-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px}.stat-meta-text{color:var(--text-secondary);font-size:14px;font-weight:600}.expiry-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:16px;border:1px solid rgba(180,83,9,.12);background:var(--accent-yellow-soft);color:var(--accent-yellow);font-size:13px;font-weight:800;white-space:nowrap}.tone-danger{color:var(--accent-red)!important}.tone-warning{color:var(--accent-yellow)!important}
.tab-switcher{display:flex;justify-content:center;margin:24px 0}.tab-group{display:inline-flex;gap:6px;padding:6px;border-radius:18px;border:1px solid var(--border-color);background:var(--bg-secondary);box-shadow:var(--shadow-soft)}.tab-btn{border:none;background:transparent;color:var(--text-secondary);padding:10px 18px;border-radius:14px;font-size:13px;font-weight:800;letter-spacing:.03em;cursor:pointer;transition:background .2s ease,color .2s ease}.tab-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-btn.active{background:var(--accent-primary);color:#fff}
.table-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft)}.table-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}.table-title{font-size:18px;font-weight:800;letter-spacing:-.03em}.table-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.selected-count{color:var(--text-secondary);font-size:13px;font-weight:700}.btn-delete,.btn-clear-all,.page-size-select{border-radius:14px;font-size:13px;font-weight:700}.btn-delete{padding:10px 14px;border:1px solid rgba(220,38,38,.12);background:var(--accent-red-soft);color:var(--accent-red);cursor:pointer;transition:background .2s ease,border-color .2s ease}.btn-delete:hover{background:rgba(254,226,226,.96);border-color:rgba(220,38,38,.18)}.btn-clear-all{padding:10px 14px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.btn-clear-all:hover{background:var(--bg-hover);color:var(--text-primary)}.page-size-select{padding:10px 14px;border:1px solid var(--border-color);background:#fff;color:var(--text-primary);outline:none;cursor:pointer}.page-size-select:focus{border-color:rgba(37,99,235,.28);box-shadow:0 0 0 4px rgba(37,99,235,.1)}
.last-update{display:block;margin-bottom:16px;color:var(--text-muted);font-size:12px;font-weight:700}.table-wrap{overflow-x:auto}.custom-table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0}.custom-table thead th{padding:14px 16px;border-bottom:1px solid rgba(220,228,238,.95);text-align:left;color:var(--text-secondary);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:rgba(248,250,252,.75)}.custom-table tbody td{padding:18px 16px;border-bottom:1px solid rgba(232,238,245,.95);vertical-align:top;background:transparent}.custom-table tbody tr:last-child td{border-bottom:none}.table-row:hover td{background:rgba(248,250,252,.92)}.table-empty{padding:56px 0!important;text-align:center;color:var(--text-secondary);font-size:15px;font-weight:600}.cell-checkbox{width:56px}.table-checkbox{width:16px;height:16px;border-radius:6px;border:1px solid var(--border-color);cursor:pointer}.account-cell{min-width:220px}.account-name{font-size:14px;font-weight:700;color:var(--text-primary);overflow-wrap:anywhere}
.checkbox-column{width:40px}
.status-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:700;white-space:nowrap}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}.status-badge.online{background:var(--accent-green-soft);border-color:rgba(21,128,61,.1);color:var(--accent-green)}.status-badge.offline{background:var(--accent-red-soft);border-color:rgba(220,38,38,.1);color:var(--accent-red)}.status-badge.idle{background:var(--bg-tertiary);border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.pets-cell{min-width:280px}.pets-summary{color:var(--text-secondary);font-size:13px;font-weight:700}.pets-empty{color:var(--text-muted);font-size:13px;font-weight:600}.updated-cell{color:var(--text-secondary);font-size:13px;font-weight:700;white-space:nowrap}
.pet-list-shell{margin-top:10px}.pet-list-toggle{display:inline-flex;align-items:center;gap:10px;padding:6px 10px;border-radius:999px;background:var(--bg-tertiary);border:1px solid rgba(220,228,238,.95);color:var(--accent-primary);cursor:pointer;user-select:none;font-size:12px;font-weight:700;transition:background .2s ease,border-color .2s ease}.pet-list-toggle:hover{background:var(--accent-soft);border-color:rgba(37,99,235,.12)}.pet-list-count{padding:2px 8px;border-radius:999px;background:#fff;border:1px solid rgba(220,228,238,.95);color:var(--text-secondary);font-size:11px;font-weight:800}.pet-list-arrow{color:var(--text-muted);font-size:10px;transition:transform .2s ease}.pet-list-container{max-height:0;overflow:hidden;transition:max-height .25s ease,margin-top .25s ease}.pet-list-container.show{max-height:1000px;margin-top:12px}.pet-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:8px;padding:10px 12px;border-radius:16px;border:1px solid rgba(220,228,238,.95);background:var(--bg-tertiary)}.pet-item-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.pet-item-name{font-size:13px;font-weight:700;overflow-wrap:anywhere}.pet-item-count{flex-shrink:0;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid rgba(220,228,238,.95);color:var(--text-primary);font-size:12px;font-weight:800}
.pet-mut-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;border:1px solid transparent}.pet-list-export{width:100%;margin-top:10px;padding:10px 12px;border-radius:14px;border:1px solid rgba(21,128,61,.12);background:var(--accent-green-soft);color:var(--accent-green);font-size:12px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease}.pet-list-export:hover{background:rgba(220,252,231,.96);border-color:rgba(21,128,61,.18)}.mutation-normal{color:var(--text-primary)}.mutation-gold{color:#b45309}.mutation-rainbow{color:#5b5bd6}.mutation-shiny{color:#15803d}.mutation-galactic{color:#7c3aed}.mutation-bubblegum{color:#db2777}.mutation-nyan{color:#0891b2}.mut-Normal{background:#f8fafc;border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.mut-Gold{background:#fff7ed;border-color:rgba(180,83,9,.14);color:#b45309}.mut-Rainbow{background:#eef2ff;border-color:rgba(99,102,241,.14);color:#4f46e5}.mut-Galactic{background:#f5f3ff;border-color:rgba(124,58,237,.14);color:#7c3aed}.mut-Shiny{background:#edfdf5;border-color:rgba(21,128,61,.14);color:#15803d}.mut-Bubblegum{background:#fdf2f8;border-color:rgba(219,39,119,.14);color:#db2777}.mut-Nyan{background:#ecfeff;border-color:rgba(8,145,178,.14);color:#0891b2}
.pagination-controls{margin-top:24px}.pagination-shell{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.pagination-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination-btn{min-width:42px;padding:10px 14px;border-radius:14px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:13px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.pagination-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.pagination-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.pagination-btn:disabled{opacity:.45;cursor:not-allowed}.pagination-btn:disabled:hover{background:#fff;color:var(--text-secondary)}.pagination-ellipsis{color:var(--text-muted);font-size:13px;font-weight:700;padding:0 4px}.pagination-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--text-secondary);font-size:13px;font-weight:700}
.section-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.section-meta{color:var(--text-secondary);font-size:14px;font-weight:700}.search-input{width:100%;max-width:380px;padding:12px 16px;border-radius:16px;border:1px solid var(--border-color);background:#fff;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:rgba(37,99,235,.26);box-shadow:0 0 0 4px rgba(37,99,235,.1)}.pets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.pets-empty-state{grid-column:1 / -1;padding:56px 0;border-radius:24px;border:1px solid var(--border-color);background:var(--bg-secondary);box-shadow:var(--shadow-soft);text-align:center;color:var(--text-secondary);font-size:15px;font-weight:600}
.search-result-active{color:var(--accent-green);font-weight:700}
.pet-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:22px;padding:18px;box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.pet-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:rgba(37,99,235,.14)}.pet-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.pet-card-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border:1px solid transparent}.pet-card-chip.secret{background:var(--accent-yellow-soft);border-color:rgba(180,83,9,.12);color:var(--accent-yellow)}.pet-card-chip.normal{background:var(--bg-tertiary);border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.pet-card-count{flex-shrink:0;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1;font-weight:800;letter-spacing:-.05em;color:var(--text-primary)}.pet-card-name{font-size:16px;line-height:1.35;font-weight:800;color:var(--text-primary);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;min-height:2.7em}.pet-card-meta{margin-top:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pet-card-variants{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:var(--bg-tertiary);border:1px solid rgba(220,228,238,.95);color:var(--text-secondary);font-size:12px;font-weight:700}.pet-card-type{font-size:12px;font-weight:700}
.modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,23,42,.32);backdrop-filter:blur(8px);z-index:50}.modal-front{z-index:60}.modal-card{width:100%;max-width:460px;padding:28px;border-radius:24px;border:1px solid rgba(220,228,238,.95);background:#fff;box-shadow:0 28px 60px rgba(15,23,42,.12)}.modal-card-wide{max-width:620px}.modal-title{font-size:22px;font-weight:800;letter-spacing:-.03em;margin-bottom:12px}.modal-title-accent{padding-bottom:12px;border-bottom:1px solid var(--border-color);color:var(--accent-cyan)}.modal-title-highlight{color:var(--text-primary)}.modal-text{color:var(--text-secondary);font-size:14px;margin-bottom:24px}.modal-textarea{width:100%;height:250px;margin-top:16px;padding:16px;border-radius:18px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;resize:none;outline:none}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}
.modal-btn{width:100%;padding:12px 14px;border-radius:16px;border:1px solid transparent;font-size:14px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.modal-btn:hover{transform:translateY(-1px)}.modal-btn.green{background:var(--accent-green-soft);border-color:rgba(21,128,61,.12);color:var(--accent-green)}.modal-btn.green:hover{background:rgba(220,252,231,.96)}.modal-btn.disabled-btn{background:var(--bg-tertiary);border-color:rgba(220,228,238,.95);color:var(--text-muted);cursor:not-allowed}.modal-btn.disabled-btn:hover{transform:none}.modal-btn.cancel{background:#fff;border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.modal-btn.cancel:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-btn-primary{width:auto;min-width:132px;background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.modal-btn-primary:hover{background:var(--accent-primary-strong)}.modal-btn-secondary{width:auto;min-width:110px;background:#fff;border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.modal-btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-divider{display:flex;align-items:center;margin:14px 0}.modal-divider::before,.modal-divider::after{content:'';flex:1;height:1px;background:var(--border-color)}.modal-divider span{padding:0 12px;color:var(--text-muted);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.notification{position:fixed;top:24px;right:24px;z-index:70;min-width:240px;max-width:360px;padding:14px 18px;border-radius:18px;border:1px solid transparent;box-shadow:var(--shadow-hover);transform:translateX(120%);opacity:0;transition:transform .25s ease,opacity .25s ease;font-size:14px;font-weight:700}.notification.show{transform:translateX(0);opacity:1}.notification--success{background:#f0fdf4;border-color:rgba(21,128,61,.12);color:#166534}.notification--error{background:#fef2f2;border-color:rgba(220,38,38,.12);color:#b91c1c}.notification--warning{background:#fff7ed;border-color:rgba(180,83,9,.12);color:#b45309}.notification--info{background:#eff6ff;border-color:rgba(37,99,235,.12);color:#1d4ed8}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(148,163,184,.55);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:rgba(100,116,139,.8)}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .35s ease-out forwards}
@media (max-width:1200px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.sidebar,.sidebar.sidebar-collapsed{width:88px}.sidebar-header{padding-inline:12px;text-align:center}.sidebar-brand,.sidebar-subbrand,.nav-text,.user-details-box,.logout-btn{display:none}.sidebar-nav{padding-inline:10px}.nav-link{justify-content:center;padding-inline:0}.sidebar-footer{padding:12px 10px}.user-info-box{justify-content:center;padding:10px}.main-content,.main-content.sidebar-collapsed{margin-left:88px}}@media (max-width:768px){body.login-page{padding:16px}.login-card{padding:28px 22px;border-radius:24px}.key-info-details{flex-direction:column;align-items:center;text-align:center}.app-container{flex-direction:column}.sidebar,.sidebar.sidebar-collapsed{position:sticky;top:0;width:100%;height:auto;min-height:unset;flex-direction:row;align-items:center;justify-content:space-between;border-right:none;border-bottom:1px solid rgba(220,228,238,.95);padding:12px 16px;z-index:20}.sidebar-header{padding:0;border-bottom:none}.sidebar-brand{display:block;font-size:16px}.sidebar-subbrand,.sidebar-footer{display:none}.sidebar-nav{flex:0;padding:0}.nav-link{justify-content:center;padding:10px 12px}.main-content,.main-content.sidebar-collapsed{margin-left:0;padding:18px 16px 28px}.page-header{margin-bottom:22px}.header-actions{width:100%}.action-btn,.save-indicator{flex:1 1 auto;justify-content:center}.connection-bar{flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:1fr}.stat-card.wide{grid-column:span 1}.stat-wide-layout{flex-direction:column}.table-card,.stat-card,.modal-card{border-radius:20px}.pagination-shell{align-items:flex-start}.pagination-meta{width:100%;justify-content:space-between}.section-toolbar{align-items:stretch}.search-input{max-width:none}.pets-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.modal-btn-primary,.modal-btn-secondary{width:100%}.notification{left:16px;right:16px;top:16px;min-width:0;max-width:none}}
body.login-page .btn-login{position:relative;overflow:hidden;isolation:isolate;background:transparent;color:var(--accent-primary);border-color:rgba(37,99,235,.28);box-shadow:none;transition:color .28s ease,border-color .28s ease,box-shadow .28s ease,transform .2s ease}body.login-page .btn-login::before{content:'';position:absolute;inset:0;background:rgba(37,99,235,.92);transform:scaleX(0);transform-origin:left center;transition:transform .3s ease;z-index:0}body.login-page .btn-login>*{position:relative;z-index:1}body.login-page .btn-login:hover{color:#fff;border-color:rgba(37,99,235,.9);box-shadow:0 18px 34px rgba(37,99,235,.16)}body.login-page .btn-login:hover::before{transform:scaleX(1)}body.login-page .btn-login:active{transform:translateY(0) scale(.985)}body.login-page .btn-login:disabled{background:rgba(37,99,235,.06);color:var(--accent-primary);border-color:rgba(37,99,235,.18);box-shadow:none}body.login-page .btn-success{color:#fff!important;border-color:var(--accent-green)!important;background:var(--accent-green)!important;box-shadow:0 16px 30px rgba(21,128,61,.16)!important}body.login-page .btn-success::before{background:var(--accent-green);transform:scaleX(1)}body.login-page .spinner{border:2px solid rgba(37,99,235,.2);border-top-color:currentColor}
.accounts-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.accounts-main{min-width:0}.accounts-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}.accounts-toolbar-main{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1 1 680px;flex-wrap:wrap}.quick-filter-row{display:flex;gap:10px;flex-wrap:wrap}.quick-filter-chip{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:13px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.quick-filter-chip:hover{background:var(--bg-hover);color:var(--text-primary);transform:translateY(-1px)}.quick-filter-chip.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.quick-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:rgba(15,23,42,.06);color:inherit;font-size:12px;font-weight:800}.quick-filter-chip.active .quick-filter-count{background:rgba(255,255,255,.2)}.account-search-box{display:flex;align-items:center;gap:10px;flex:1 1 280px;justify-content:flex-end}.account-search-input{max-width:320px;min-width:220px}.account-search-clear{padding:10px 12px;border-radius:12px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:12px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.account-search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.pets-summary-detail{margin-top:4px;color:var(--text-muted);font-size:12px;font-weight:700}.inventory-trigger-btn{margin-top:10px;display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:12px;border:1px solid rgba(37,99,235,.16);background:var(--accent-soft);color:var(--accent-primary);font-size:12px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.inventory-trigger-btn:hover{background:rgba(37,99,235,.14);border-color:rgba(37,99,235,.24)}.inventory-trigger-btn.subtle{background:var(--bg-tertiary);border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.inventory-trigger-btn.subtle:hover{background:var(--bg-hover);color:var(--text-primary)}.table-row.is-active td{background:rgba(232,240,255,.72)}
.inventory-side-panel{position:sticky;top:24px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-soft);padding:18px;overflow:hidden}.inventory-panel-empty,.inventory-panel-content{display:flex;flex-direction:column;gap:14px;min-height:0}.inventory-panel-kicker{color:var(--accent-primary);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.inventory-panel-heading{min-width:0}.inventory-panel-title{font-size:20px;font-weight:800;letter-spacing:-.04em;color:var(--text-primary);line-height:1.15;overflow-wrap:anywhere}.inventory-panel-subtitle{margin-top:6px;color:var(--text-secondary);font-size:13px;line-height:1.5}.inventory-panel-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.inventory-summary-row{display:flex;gap:10px;flex-wrap:wrap}.inventory-summary-pill{display:flex;flex-direction:column;gap:4px;min-width:110px;padding:10px 12px;border-radius:16px;border:1px solid rgba(220,228,238,.95);background:var(--bg-tertiary)}.inventory-summary-pill.wide{flex:1 1 100%}.inventory-summary-label{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.inventory-summary-pill strong{color:var(--text-primary);font-size:14px;font-weight:800;letter-spacing:-.01em;overflow-wrap:anywhere}.inventory-table-wrap{flex:1 1 auto;min-height:0;max-height:min(50vh,420px);border:1px solid rgba(220,228,238,.95);background:var(--bg-tertiary);border-radius:18px;overflow:auto;overscroll-behavior:contain}.inventory-table{width:100%;border-collapse:separate;border-spacing:0}.inventory-table thead th{position:sticky;top:0;z-index:1;padding:10px 12px;border-bottom:1px solid rgba(220,228,238,.95);text-align:left;color:var(--text-secondary);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:rgba(248,250,252,.96)}.inventory-table tbody td{padding:10px 12px;border-bottom:1px solid rgba(220,228,238,.7);vertical-align:middle;background:transparent}.inventory-table tbody tr:last-child td{border-bottom:none}.inventory-pet-name{font-size:12px;font-weight:800;line-height:1.45;overflow-wrap:anywhere}.inventory-mut-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;border:1px solid transparent}.inventory-count-cell{color:var(--text-primary);font-size:12px;font-weight:800;white-space:nowrap}.inventory-empty-row{text-align:center;color:var(--text-secondary);font-size:13px;font-weight:700;padding:22px 12px!important}.inventory-panel-footer{display:flex;justify-content:flex-end}.inventory-panel-export{width:100%;padding:11px 14px;border:none;border-radius:16px;background:var(--accent-primary);color:#fff;font-size:13px;font-weight:800;cursor:pointer;transition:background .2s ease,transform .2s ease,opacity .2s ease}.inventory-panel-export:hover{background:var(--accent-primary-strong);transform:translateY(-1px)}.inventory-panel-export:disabled{opacity:.45;cursor:not-allowed;transform:none}
@media (max-width:1200px){.accounts-layout{grid-template-columns:1fr}.inventory-side-panel{position:static;max-height:none}.inventory-panel-top{flex-direction:column;align-items:flex-start}.inventory-table-wrap{max-height:none}}@media (max-width:768px){.accounts-toolbar{align-items:stretch}.accounts-toolbar-main{align-items:stretch}.quick-filter-row{width:100%}.quick-filter-chip{flex:1 1 calc(50% - 10px);justify-content:center}.account-search-box{width:100%;justify-content:stretch}.account-search-input{max-width:none;min-width:0;flex:1 1 auto}.inventory-summary-row{display:grid;grid-template-columns:1fr 1fr}.inventory-summary-pill{min-width:0}.inventory-summary-pill.wide{grid-column:1 / -1}}
#globalPetsGrid.pets-grid{display:block}.global-pets-toolbar{align-items:flex-start}.global-pets-search-stack{display:flex;flex-direction:column;gap:10px;flex:1 1 420px;min-width:0}.global-pet-priority-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.global-pet-priority-input{max-width:520px;flex:1 1 320px}.global-pet-priority-btn{margin-top:0;white-space:nowrap}.global-pets-toolbar-note{color:var(--text-secondary);font-size:13px;line-height:1.55}.global-pets-toolbar-side{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;flex:1 1 240px}.global-pet-priority-list{display:flex;flex-wrap:wrap;gap:10px}.global-pet-priority-empty{padding:10px 14px;border-radius:16px;border:1px dashed rgba(220,228,238,.95);background:#fff;color:var(--text-muted);font-size:12px;font-weight:700}.global-pet-priority-chip{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:18px;border:1px solid rgba(220,228,238,.95);background:#fff;box-shadow:var(--shadow-soft)}.global-pet-priority-chip.live{border-color:rgba(37,99,235,.14);background:#f8fbff}.global-pet-priority-chip.waiting{background:#fffdf8}.global-pet-priority-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.global-pet-priority-name{font-size:13px;font-weight:800;color:var(--text-primary);overflow-wrap:anywhere}.global-pet-priority-state{font-size:11px;font-weight:700;color:var(--text-secondary)}.global-pet-priority-remove{padding:8px 10px;border-radius:12px;border:1px solid rgba(220,228,238,.95);background:var(--bg-tertiary);color:var(--text-secondary);font-size:11px;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.global-pet-priority-remove:hover{background:var(--bg-hover);color:var(--text-primary)}.pets-board-shell{display:flex;flex-direction:column;gap:20px}.pets-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pets-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.pet-hero-card,.pet-card{position:relative;overflow:hidden;border:1px solid var(--border-color);border-radius:26px;background:var(--bg-secondary);box-shadow:var(--shadow-soft);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.pet-hero-card:hover,.pet-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.pet-hero-card{padding:28px}.pet-card{padding:22px;min-height:216px}.pet-card-featured{min-height:228px}.pet-card-compact{min-height:206px}.pet-hero-surface,.pet-card-surface{appearance:none;display:block;width:100%;padding:22px 0 0;border:none;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.pet-card-watermark{position:absolute;right:18px;bottom:18px;z-index:0;font-size:56px;line-height:1;font-weight:800;letter-spacing:-.08em;color:rgba(148,163,184,.16);pointer-events:none}.pet-priority-toggle{position:absolute;top:18px;right:18px;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(220,228,238,.95);background:rgba(255,255,255,.92);color:var(--text-secondary);font-size:12px;font-weight:800;cursor:pointer;user-select:none;box-shadow:0 10px 24px rgba(15,23,42,.06)}.pet-priority-toggle input{width:14px;height:14px;flex-shrink:0;accent-color:var(--accent-primary)}.pet-priority-toggle.active{border-color:rgba(37,99,235,.14);background:#eef4ff;color:var(--accent-primary)}.pet-tone-manual{background:#fffdf8;border-color:rgba(180,83,9,.2)}.pet-tone-default{background:var(--bg-secondary)}.pet-card-chip.manual{background:#fff7ed;border-color:rgba(180,83,9,.12);color:#b45309}.pet-card-chip.default{background:var(--bg-tertiary);border-color:rgba(220,228,238,.95);color:var(--text-secondary)}.pet-hero-top{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:24px;align-items:start}.pet-hero-copy{display:flex;flex-direction:column;gap:14px;min-width:0}.pet-hero-kicker{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.pet-hero-name{font-size:clamp(2rem,4vw,2.7rem);line-height:1.02;font-weight:800;letter-spacing:-.06em;color:var(--text-primary);max-width:14ch;overflow-wrap:anywhere}.pet-hero-note{max-width:640px;color:var(--text-secondary);font-size:15px;line-height:1.6}.pet-hero-total{display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;border-radius:22px;border:1px solid rgba(220,228,238,.9);background:rgba(255,255,255,.82)}.pet-hero-total span{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.pet-hero-total strong{font-size:clamp(2.25rem,4vw,3.1rem);line-height:1;font-weight:800;letter-spacing:-.06em;color:var(--text-primary)}.pet-hero-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.pet-stat-block{display:flex;flex-direction:column;gap:6px;padding:15px 16px;border-radius:18px;border:1px solid rgba(220,228,238,.92);background:rgba(255,255,255,.78)}.pet-stat-block span{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.pet-stat-block strong{font-size:18px;font-weight:800;letter-spacing:-.03em;color:var(--text-primary)}.pet-card-head,.pet-card-name,.pet-card-note,.pet-card-stats,.pet-card-action{position:relative;z-index:1}.pet-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pet-card-rank{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.pet-card-name{margin-top:18px;font-size:18px;line-height:1.3;font-weight:800;color:var(--text-primary);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;max-width:17ch}.pet-card-featured .pet-card-name{font-size:20px;max-width:16ch}.pet-card-note{margin-top:10px;max-width:28ch;color:var(--text-secondary);font-size:13px;line-height:1.55}.pet-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.pet-card-stat{display:flex;flex-direction:column;gap:6px;padding:12px 10px;border-radius:16px;border:1px solid rgba(220,228,238,.9);background:rgba(255,255,255,.8)}.pet-card-stat span{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.pet-card-stat strong{font-size:15px;font-weight:800;letter-spacing:-.03em;color:var(--text-primary)}.pet-card-action{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:8px 12px;border-radius:999px;border:1px solid rgba(220,228,238,.92);background:rgba(255,255,255,.82);color:var(--text-secondary);font-size:12px;font-weight:800}.pet-hero-card .pet-card-action{margin-top:20px;background:#fff;color:var(--accent-primary);border-color:rgba(37,99,235,.14)}.pet-card:hover .pet-card-action,.pet-hero-card:hover .pet-card-action{border-color:rgba(37,99,235,.18);color:var(--text-primary)}.pet-hero-card:hover .pet-card-action{color:var(--accent-primary)}@media (max-width:1200px){.pets-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pets-catalog-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width:920px){.pet-hero-top{grid-template-columns:1fr}.pet-hero-total{max-width:220px}.pets-featured-grid{grid-template-columns:1fr}}@media (max-width:768px){.global-pet-priority-bar{align-items:stretch}.global-pet-priority-input,.global-pet-priority-btn{max-width:none;width:100%}.global-pets-toolbar-side{justify-content:flex-start}.global-pet-priority-list{flex-direction:column}.global-pet-priority-chip{align-items:flex-start;justify-content:space-between}.pet-hero-card{padding:22px}.pet-card{padding:18px;min-height:auto}.pet-priority-toggle{top:14px;right:14px}.pet-card-watermark{right:14px;bottom:14px;font-size:44px}.pet-hero-surface,.pet-card-surface{padding-top:24px}.pet-hero-name{max-width:none}.pet-hero-stats,.pet-card-stats{grid-template-columns:1fr}.pets-catalog-grid{grid-template-columns:1fr}.pet-card-action{width:100%}}

