/* HeroUI Figma Kit adaptation: semantic tokens and shared component treatment. */
:root{
  color-scheme:dark;
  --h-background:#09090b;--h-foreground:#f4f4f5;--h-surface:#18181b;--h-surface-2:#27272a;--h-surface-3:#3f3f46;--h-overlay:#18181b;
  --h-muted:#a1a1aa;--h-separator:#27272a;--h-default:#27272a;--h-default-hover:#3f3f46;
  --h-accent:#006fee;--h-accent-hover:#338ef7;--h-accent-soft:rgba(0,111,238,.18);--h-accent-foreground:#fff;
  --h-primary:#006fee;--h-primary-hover:#338ef7;--h-success:#17c964;--h-warning:#f5a524;--h-danger:#f31260;
  --h-radius:.5rem;--h-field-radius:.75rem;--h-disabled:.5;
  --h-surface-shadow:0 2px 4px rgba(0,0,0,.18),0 1px 2px rgba(0,0,0,.22),0 0 1px rgba(255,255,255,.08);
  --h-overlay-shadow:0 12px 32px rgba(0,0,0,.46),0 4px 16px rgba(0,0,0,.34);
  --bg:var(--h-background);--surface:var(--h-surface);--surface-raised:var(--h-surface-2);--surface-soft:rgba(255,255,255,.055);
  --line:var(--h-separator);--line-strong:#3f3f46;--text:var(--h-foreground);--text-soft:#d4d4d8;--text-faint:var(--h-muted);
  --primary:var(--h-accent);--primary-strong:var(--h-accent-hover);--cyan:var(--h-primary-hover);--success:var(--h-success);--danger:var(--h-danger);--warning:var(--h-warning);
  --radius-xl:1.25rem;--radius-lg:1rem;--radius-md:var(--h-field-radius);--shadow:var(--h-overlay-shadow)
}
html{background:var(--h-background)}body{background-color:var(--h-background);color:var(--h-foreground)}
::selection{background:rgba(51,142,247,.42);color:#fff}
a,button,input,textarea,select,summary{touch-action:manipulation}
button,a,[role="button"]{transition:background-color .16s ease,color .16s ease,border-color .16s ease,opacity .16s ease,box-shadow .16s ease}
button:active,a:active,[role="button"]:active{opacity:.82}
button:disabled,[aria-disabled="true"]{opacity:var(--h-disabled)!important;cursor:not-allowed!important}
:focus-visible{outline:2px solid var(--h-primary-hover)!important;outline-offset:2px!important}
input,textarea,select{color:var(--h-foreground)!important;border-color:transparent!important;border-radius:var(--h-field-radius)!important;background:var(--h-default)!important;box-shadow:none!important}
input:hover,textarea:hover,select:hover{background:var(--h-default-hover)!important}
input:focus,textarea:focus,select:focus{background:var(--h-surface-2)!important;box-shadow:0 0 0 2px var(--h-primary-hover)!important}
input::placeholder,textarea::placeholder{color:var(--h-muted)!important}
dialog{border:0!important;border-radius:1rem!important;background:var(--h-overlay)!important;box-shadow:var(--h-overlay-shadow)!important}
dialog::backdrop{background:rgba(0,0,0,.66)!important;backdrop-filter:blur(8px)}
.custom-select{border-color:transparent!important;border-radius:var(--h-field-radius)!important;background:var(--h-default)!important;box-shadow:none!important}
.custom-select:hover{background:var(--h-default-hover)!important}.custom-select:focus-within{box-shadow:0 0 0 2px var(--h-primary-hover)!important}
.custom-select-menu{border:0!important;border-radius:var(--h-field-radius)!important;background:var(--h-overlay)!important;box-shadow:var(--h-overlay-shadow)!important}
.custom-select-option{border-radius:.625rem!important}.custom-select-option:hover,.custom-select-option.active{background:var(--h-default-hover)!important}.custom-select-option.selected{color:#a9d2ff!important;background:var(--h-accent-soft)!important}
.primary-btn,.room-primary-button,.auth-submit,.send-button,.discovery-filter button,.discovery-card form button,.final-cta a,.download-card a,.admin-card-actions button,.admin-form-grid button{border:0!important;border-radius:var(--h-field-radius)!important;background:var(--h-accent)!important;color:var(--h-accent-foreground)!important;box-shadow:none!important}
.primary-btn:hover,.room-primary-button:hover,.auth-submit:hover,.send-button:hover,.discovery-filter button:hover,.discovery-card form button:hover{background:var(--h-accent-hover)!important;filter:none!important;transform:none!important}
.soft-btn,.room-secondary-button{border:0!important;border-radius:var(--h-field-radius)!important;background:var(--h-default)!important;color:var(--h-foreground)!important}.soft-btn:hover,.room-secondary-button:hover{background:var(--h-default-hover)!important}
.danger-btn,.danger,.status-button{border:0!important;background:rgba(243,18,96,.16)!important;color:#ff8ab5!important}
.server-card,.settings-card,.stat-row article,.person-card,.friend-list article,.recent-list>a,.auth-card,.community-card,.discovery-card,.developer-card,.moderation-card,.admin-user-card,.admin-room-card,.document-card,.contact-card,.download-card,.feature-card,.story-panel,.room-action-card,.owned-room-card{border-color:transparent!important;border-radius:1rem!important;background:var(--h-surface)!important;box-shadow:var(--h-surface-shadow)!important;backdrop-filter:none!important}
.hub-sidebar,.dashboard-nav,.community-nav,.admin-nav,.site-nav{border-color:var(--h-separator)!important;background:rgba(9,9,11,.86)!important;backdrop-filter:blur(16px)}
.hub-nav a.active,.auth-tabs a.active{border-color:transparent!important;background:var(--h-accent-soft)!important;box-shadow:none!important;color:#cbe3ff!important}
.hub-alert.success,.admin-alert.success{border-color:transparent!important;background:rgba(23,201,100,.16)!important;color:#72e8a7!important}.hub-alert.error,.admin-alert.error,.form-alert{border-color:transparent!important;background:rgba(243,18,96,.15)!important;color:#ff8ab5!important}
.owner-tag,.capacity,.role-badge,.system-role,.profile-status,.access-badge,.discovery-tags span,.live-chip{border-color:transparent!important;border-radius:999px!important;background:var(--h-default)!important}
.hero-strip,.community-hero,.admin-hero,.final-cta{border-color:transparent!important;background:radial-gradient(circle at 10% 0,rgba(51,142,247,.22),transparent 42%),var(--h-surface)!important;box-shadow:var(--h-surface-shadow)!important}
.icon-button,.icon-action,.hub-account button,.person-card button,.friend-list button,.friend-list a{border-color:transparent!important;border-radius:50%!important;background:var(--h-default)!important}.icon-button:hover,.icon-action:hover{background:var(--h-default-hover)!important}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#3f3f46;border:2px solid transparent;background-clip:padding-box;border-radius:999px}*{scrollbar-width:thin;scrollbar-color:#3f3f46 transparent}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
