.btn{transition:box-shadow .2s,border-color .2s,filter .2s,background-color .2s;transform:none!important}
.btn-primary:hover{background:linear-gradient(115deg,#69f9b6,#39d88c);filter:brightness(1.08)}
.btn-primary:focus-visible{outline:2px solid #a4ffd0;outline-offset:4px}
.nav-item:hover:not(:disabled){transform:none}
.server-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.server-card:hover{transform:translateY(-3px)}
.server-card-top{position:relative;gap:15px}.card-delete{margin-left:auto;align-self:flex-start;color:var(--muted)}
.card-delete:hover,.danger-icon:hover{color:#ff9f9f!important}
.btn-ghost{border-radius:10px;display:inline-flex;align-items:center;justify-content:center;transition:color .18s,background-color .18s;flex-shrink:0}
.user-actions .btn-ghost,.card-delete,.file-tools .btn-ghost{width:36px;height:36px;padding:0}
.brand-home{border:0;background:transparent;color:inherit;text-align:left;width:100%;cursor:pointer;border-radius:14px;padding:0}
.brand-home:focus-visible,.avatar-owner:focus-visible{outline:2px solid #8bffc2;outline-offset:4px}
.account button.avatar-owner{padding:0;background:transparent;cursor:pointer;overflow:hidden;border-radius:10px}
.preview-card{border-color:#58f5a743}
.server-tabs{display:flex;padding:4px;gap:4px;border:1px solid var(--line);border-radius:12px;background:#101a1d}
.server-tabs button{border:0;padding:9px 16px;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .2s,color .2s}
.server-tabs button.active{background:#52eca31a;color:#86ffc0}.toolbar>#server-count{font-size:13px;margin-right:auto}
.user-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.user-actions .btn-ghost{min-width:36px;min-height:36px}
.users-table td{vertical-align:middle}.paused{color:#f1c878!important}.badge-state.paused:before{background:#f1c878}
.access-selection{margin-top:14px;padding:16px;background:#0a1115;border:1px solid var(--line);border-radius:14px}
.access-selection[hidden]{display:none}.access-list-toolbar{display:flex;gap:9px;margin-bottom:14px}
.access-list-toolbar select{flex:1;min-width:0}.access-list-toolbar .btn{font-size:12px;white-space:nowrap}
.access-server-list{display:grid;gap:8px;max-height:230px;overflow:auto;overscroll-behavior:contain}
.access-server{display:flex;align-items:center;gap:12px;border:1px solid #263730;padding:12px 14px;border-radius:10px;cursor:pointer;transition:border-color .2s,background .2s}
.access-server:has(:checked){border-color:#58f5a767;background:#58f5a709}.access-server>span{display:flex;align-items:center;justify-content:space-between;width:100%;gap:16px}
.access-server strong{font-size:13px}.access-server small{font-size:11px}.access-count{display:block;color:var(--muted);font-size:12px;margin-bottom:12px}
dialog:has(#grant-form,#invite-form){width:min(760px,calc(100% - 32px))}.rights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.rights-grid label{font-size:12px}.access-server-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.brand-mark img,.avatar-owner img{object-fit:contain;transform:none}
.sidebar .brand-mark{width:76px;height:76px;border:0;border-radius:15px;overflow:hidden}.sidebar .brand{gap:13px}
.sidebar .brand>span:last-child{font-size:20px}.sidebar .brand small{font-size:10px;letter-spacing:1px}
.avatar-owner{width:40px;height:40px;border:0}
.auth-header .brand-mark{width:48px;height:48px;overflow:hidden}
.auth-header .brand-mark img{object-fit:cover;transform:translate(33%,31%) scale(2.5)}
.auth-scene{background:radial-gradient(ellipse at 24% 48%,#144c3a22,transparent 55%),radial-gradient(ellipse at 88% 12%,#173f5530,transparent 50%),#080d12}
.auth-layout{gap:7%;grid-template-columns:1.1fr 1fr;min-height:calc(100vh - 110px)}.auth-art{height:570px}
.cat-display{width:min(100%,460px);height:auto;aspect-ratio:1;border-radius:25px;overflow:hidden;border:1px solid #71efa51e;box-shadow:0 24px 90px #0003,0 0 70px #37f38809;animation:cat-float 9s ease-in-out infinite}
.cat-display img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.auth-wordmark{bottom:0;font-size:30px}.auth-wordmark span{letter-spacing:3px;font-size:11px;margin-top:8px}
.auth-card{border-radius:21px;padding:34px;background:linear-gradient(140deg,#15211ffa,#0c161afb);box-shadow:0 20px 80px #0005}
.auth-card h1{margin:0 0 21px}.auth-tabs{margin-bottom:25px}
.auth-card:has(#register-form){padding:28px 32px}.auth-card:has(#register-form) h1{margin-bottom:18px}
.auth-error{max-width:100%;overflow-wrap:anywhere}
.auth-card .form-control{background:#101e1a;border-color:#496357;color:#f0fff6;box-shadow:inset 0 1px 3px #0003}
.auth-card .form-control::placeholder{color:#94aa9e}.auth-card .form-control:focus{background:#12271e;border-color:#77f8b3;box-shadow:0 0 0 3px #58f5a71a}
.form-check-input{border-color:#78998a;background-color:#14251d}
.player-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inventory-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:6px;margin:14px 0 22px}.inventory-slot{min-height:58px;border:1px solid #344b40;border-radius:8px;background:#0c1712;padding:6px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.inventory-slot.empty{border-color:#26362d;opacity:.6}.inventory-slot small{font-size:10px;color:#90aa9c}.inventory-slot strong{font-size:10px;overflow-wrap:anywhere;color:#bff9d5}.inventory-slot span{align-self:flex-end;font-size:12px;color:#82fab9}
dialog:has(.inventory-grid){width:min(780px,calc(100% - 32px))}
@media(max-width:1050px){.auth-layout{gap:5%;grid-template-columns:1fr 1fr}.auth-art{height:470px}.cat-display{width:min(100%,380px)}.auth-wordmark{bottom:0;font-size:27px}}
@media(max-width:760px){.auth-layout{display:block;min-height:calc(100vh - 110px);padding:35px 0}.auth-art{display:none}.auth-card,.auth-card:has(#register-form){padding:26px 23px}.auth-header{justify-content:center}.toolbar{flex-wrap:wrap;gap:14px}.toolbar .search{width:100%}.access-list-toolbar{flex-wrap:wrap}.access-list-toolbar select{flex-basis:100%}.access-server>span{flex-wrap:wrap;gap:5px}.sidebar .brand-mark{width:53px;height:53px}.sidebar .brand>span:last-child{font-size:18px}}
@media(max-width:520px){.inventory-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.player-tools .btn{font-size:12px}}
@media(max-width:600px){.rights-grid,.access-server-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.cat-display{animation:none}.btn,.server-tabs button,.access-server,.server-card{transition:none}.server-card:hover{transform:none}}
