/* OreCraft / Obsidian & Redstone. Load after the page's structural styles. */
@font-face {
  font-family: "OreCraft Pixel";
  src: url("/fonts/orecraft-pixel.ttf") format("truetype");
  font-display: swap;
  font-weight: 400;
}

:root {
  color-scheme: dark;
  --oc-bg: #09090b; --oc-surface: #131315; --oc-surface-2: #1b1b1e;
  --oc-text: #f4f1ee; --oc-muted: #a9a5a5; --oc-line: #303034;
  --oc-accent: #e74747; --oc-accent-2: #b92332; --oc-glow: #ff6862;
  --bg: var(--oc-bg); --bg1: var(--oc-bg); --bg2: #111113;
  --surface: var(--oc-surface); --surface-2: var(--oc-surface-2);
  --panel: var(--oc-surface); --panel-2: var(--oc-surface-2);
  --text: var(--oc-text); --muted: var(--oc-muted); --line: var(--oc-line);
  --accent: var(--oc-accent); --accent-2: var(--oc-accent-2);
  --srv-accent: var(--oc-accent); --srv-accent-2: var(--oc-accent-2);
  --srv-accent-rgb: 231, 71, 71; --html-bg: var(--oc-bg);
  --ore-pixel: "OreCraft Pixel", Impact, sans-serif;
  --ore-ui: "Poppins", "Segoe UI", sans-serif;
  --ore-ease: cubic-bezier(.2,.7,.2,1);
}

html { background: var(--oc-bg); scroll-padding-top: 82px; }
body {
  background: var(--oc-bg) !important; color: var(--oc-text);
  font-family: var(--ore-ui); -webkit-font-smoothing: antialiased;
  overflow-x: clip; text-rendering: optimizeLegibility;
}
body:not(.mobile-nav-open) { overflow-y: auto; }
body::before, .bg-orb, .bg-grid { display: none !important; }
button, input, select, textarea { font-family: var(--ore-ui); }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button, a { touch-action: manipulation; }
button { cursor: pointer; }
input, textarea, pre, code { user-select: text; -webkit-user-select: text; }
[hidden] { display: none !important; }
::selection { color: #fff; background: #a82d38; }
:focus-visible { outline: 2px solid #ff8278 !important; outline-offset: 4px; }

/* No persistent compositor layers or animated blur. Busy indicators may spin. */
*, *::before, *::after { will-change: auto !important; }
.layout { background: transparent; }
.content { background: transparent !important; view-transition-name: none; }
:is(.sidebar,.topbar,.player-topbar,.oc-site-topbar,[class$="-backdrop"],.srv-pin-overlay) {
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
:is(.profile-section,.cards,.card,.admin-section,.admin-row,.ticket-logs-section,
  .ticket-log-row,.recruitment-row,.itemshop-section,.stats-tabs,.table-wrap,
  .overview-wrap,.approved-wrap,.feedback-panel,.form-wrap,.list-wrap,.stats-card,
  .reveal-shell,.section-head,.section-sub,.helper,.empty,.status-text) {
  animation: none !important;
}
body:is(.errors-page,.vacations-page) :is(.reveal-shell,.error-card,.vacation-card,.approved-card,.empty,.status-text),
body:is(.errors-page,.vacations-page).page-enter-pending :is(.reveal-shell,.error-card,.vacation-card,.approved-card,.empty,.status-text) {
  opacity: 1 !important; visibility: visible !important; transform: none !important;
  pointer-events: auto;
}
.content > :is(.topbar,.profile-section,.srv-manage-header,.srv-topbar),
.login-card, .brand, .player-hero {
  animation: ore-enter .32s var(--ore-ease) both;
}
.view-enter, .srv-view:not([hidden]) { animation: ore-enter .22s var(--ore-ease) both !important; }
body.stats-page .cards .card, body.stats-page :is(.cards,.stats-tabs,#history,#loginsSection) { animation: none !important; }
@keyframes ore-enter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes ocPanelSectionEnter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes ocPanelInnerEnter { from { opacity: .6; } to { opacity: 1; } }

/* Compact frame; existing drawer/collapse logic owns positioning. */
.sidebar {
  background: #101012 !important; border-color: #2c292c !important;
  box-shadow: none; scrollbar-gutter: stable;
}
.sidebar-top { min-height: 94px; align-items: center; background: #121214 !important; }
.logo-block { padding-left: 14px; gap: 11px; text-decoration: none; }
.logo-image { width: 60px; height: 60px; filter: none; object-fit: contain; }
.logo-block::after {
  content: none; color: #f4f1ee; font: 400 18px/1.4 var(--ore-pixel);
  letter-spacing: .02em;
}
.sidebar.collapsed .logo-block::after { display: none; }
.sidebar-footer { background: #141416 !important; border-color: var(--oc-line) !important; }
.menu { gap: 6px; }
.menu-item, .submenu-item, .srv-nav-item {
  border-radius: 0 !important; color: #b6b1b1 !important; box-shadow: none !important;
  transition: background-color .16s, color .16s, border-color .16s !important;
  transform: none !important; text-shadow: none;
}
.menu-item, .srv-nav-item { min-height: 44px; font-weight: 600; }
.menu-label, .srv-nav-item > span:not(.material-symbols-rounded) { font-size: 13px; }
:is(.menu-item,.submenu-item,.srv-nav-item):hover {
  background: #211719 !important; color: #fff !important; border-color: #573035 !important;
}
:is(.menu-item,.submenu-item).active, .srv-nav-item.is-active, .oc-panel-link {
  background: #30191c !important; color: #fff !important; border-color: #73333a !important;
  box-shadow: inset 3px 0 #ed5550 !important;
}
.menu-icon { color: #df6763 !important; text-shadow: none; }
.srv-nav-item .material-symbols-rounded { color: #c68987; }
.submenu { border-left-color: #603036 !important; }
.oc-site-links-title, .kicker, .tag, .oc-eyebrow { color: #ed7770 !important; }
.topbar { border-color: #30282a !important; background: transparent !important; }
.topbar h1, .srv-topbar h1, .srv-manage-title h1, .profile-copy h1,
.section-head h2, .admin-header h2, .ticket-logs-header h2,
.srv-section-head h2, .player-copy h1, .dashboard-head h1 {
  font-family: var(--ore-pixel); font-weight: 400; letter-spacing: .025em;
  text-transform: uppercase; line-height: 1.5; color: #f6f1ed !important;
  -webkit-text-fill-color: currentColor; background: none; overflow-wrap: break-word;
}
.topbar h1, .srv-topbar h1, .srv-manage-title h1 { font-size: clamp(20px,2vw,29px); }
.section-head h2, .admin-header h2, .ticket-logs-header h2, .srv-section-head h2 { font-size: 22px; }
.profile-copy h1 { font-size: clamp(26px,3.2vw,42px); }
.profile-section {
  border: 1px solid #343033; border-left: 3px solid #e74747;
  background: linear-gradient(100deg,#211416 0%,#141416 70%); padding-left: 26px;
}
.profile-section::after {
  content: ""; position: absolute; right: 24px; top: 25px; width: 68px; height: 68px;
  background: url('/logo.png') center/contain no-repeat; opacity: .25; pointer-events: none;
}
.welcome { color: #c5bdbb; font-size: 15px; }
.owner-badge { border-radius: 0; background: #201719; border-color: #533137; }
.owner-badge span { color: #ff8d84; }
.value, .shop-title { background: none; -webkit-text-fill-color: currentColor; color: #f4f1ee; }
.value { font-variant-numeric: tabular-nums; }

/* Shared panels, including every server view and dynamically rendered cards. */
:is(.login-card,.auth-card,.dashboard-card,.profile-card,.card,.stats-card,.panel-card,
  .admin-section,.ticket-logs-section,.ticket-log-detail-section,.itemshop-section,
  .overview-wrap,.approved-wrap,.add-wrap,.feedback-panel,.form-wrap,.list-wrap,
  .vacation-panel,.error-card,.feedback-item,.vacation-card,.approved-card,
  .srv-stat,.srv-card,.srv-metric,.srv-settings,.srv-console-wrap,.srv-files,
  .srv-plugin-card,.srv-mon-card,.srv-mon-status,.srv-log-card,.srv-backup-card,
  .player-stat-card,.srv-type-card,.srv-engine-card,.srv-summary,.srv-schedule-card) {
  border-radius: 0 !important; border-color: #343033 !important;
  background: #141416 !important; box-shadow: 0 4px 0 #040405 !important;
}
:is(.card,.stats-card,.srv-stat,.srv-metric,.player-stat-card) {
  border-top: 2px solid #563035 !important;
}
:is(.admin-section,.ticket-logs-section,.itemshop-section,.overview-wrap,.form-wrap,.srv-settings) {
  border-top: 2px solid #ad373c !important;
}
:is(.table-wrap,.table-scroll,.ticket-logs-list,.admin-table-scroll,.itemshop-table-wrap,
  .decision-list-content,.voucher-admin-form,.details-grid,.details-block,.vacation-ended-list,
  .srv-fm-list,.srv-files-list,.srv-dropdown-menu,.srv-log-list,.srv-installed-list) {
  border-color: #322d30 !important; border-radius: 0 !important; background: #101012 !important;
}
:is(.admin-table,.itemshop-table,.table-wrap) th {
  background: #1e1a1c !important; color: #c9bebe !important; font-size: 11px;
  letter-spacing: .045em;
}
:is(.admin-table,.itemshop-table,.table-wrap) td { border-color: #292528 !important; color: #d8d0cd !important; }
:is(.admin-row,.ticket-log-row,.decision-list-item,.srv-fm-row,.srv-file-row):hover {
  background: #24191c !important;
}
.ticket-log-row, .decision-list-item { border-radius: 0; background: #181619 !important; }
.avatar, .welcome-avatar, .admin-avatar { border-radius: 2px; }
.tag, .srv-badge, .srv-console-tag, .srv-metric-tag,
.status-approved, .status-rejected, .status-pending, .server-pill, .promo-product-pill,
.feedback-person-pill, .feedback-type-pill, .recruitment-summary-pill { border-radius: 0 !important; }

/* Bevelled controls: neutral stone, redstone primary, semantic success/danger. */
:is(.discord-btn,.submit-btn,.secondary-btn,.primary-btn,.ghost-btn,.primary-link,
  .logout-btn,.sidebar-logout-btn,.action-btn,.ticket-more-btn,.ticket-back-btn,.fix-btn,
  .stats-tab-btn,.itemshop-tab-btn,.purchase-id-btn,.voucher-delete-btn,.ip-reveal-btn,
  .recruitment-action-btn,.approve-btn,.reject-btn,.delete-btn,.access-denied-close,
  .srv-btn,.srv-pin-submit,.srv-plugin-install-btn,.srv-fab,.srv-plugin-del-btn,
  button[type="submit"]) {
  --button-bg: #29262a; --button-edge: #51484e; --button-bottom: #0a080b;
  color: #f8f3ef !important; background: var(--button-bg) !important;
  border: 1px solid var(--button-edge) !important;
  border-top: 2px solid var(--button-edge) !important;
  border-bottom: 4px solid var(--button-bottom) !important;
  border-radius: 0 !important; box-shadow: none !important; filter: none !important;
  min-height: 42px; font-weight: 600;
  transition: transform .16s var(--ore-ease), background-color .16s, border-color .16s, box-shadow .16s !important;
}
:is(.discord-btn,.submit-btn,.primary-btn,.primary-link,.srv-btn-primary,.srv-pin-submit,
  .srv-plugin-install-btn,.access-denied-close,button[type="submit"]),
:is(.stats-tab-btn,.itemshop-tab-btn).active {
  --button-bg: #cc353f; --button-edge: #f6736c; --button-bottom: #6d1722;
}
:is(.discord-btn,.submit-btn,.primary-btn,.primary-link,.srv-pin-submit,.access-denied-close),
.srv-btn-primary:not(.srv-btn-sm) {
  font-family: var(--ore-pixel); font-weight: 400; font-size: 16px;
  letter-spacing: .025em; line-height: 1.6; text-transform: uppercase;
}
.srv-btn-run, .approve-btn, .recruitment-action-btn-accept {
  --button-bg: #234d39 !important; --button-edge: #5eab7f !important; --button-bottom: #10271a !important;
}
.srv-btn-danger, .reject-btn, .delete-btn, .recruitment-action-btn-reject {
  --button-bg: #4e202b !important; --button-edge: #b35b67 !important; --button-bottom: #230d13 !important;
}
.menu-btn, .mobile-nav-trigger, .srv-icon-btn, [class$="-modal-close"] {
  background: #262125 !important; color: #f3e8e4 !important;
  border: 1px solid #564249 !important; border-radius: 0 !important; box-shadow: none !important;
  min-width: 42px; min-height: 42px;
}
.menu-btn { flex-basis: 36px; min-width: 36px; min-height: 36px; }
.menu-btn span, .mobile-nav-trigger span { background: #f4dedd !important; border-radius: 0; }
:is(button,a)[aria-disabled="true"], button:disabled {
  opacity: .5; cursor: not-allowed; transform: none !important; box-shadow: none !important;
}
:is(.srv-engine-card,.srv-type-card).is-selected,
.promo-product-pill.is-selected, .srv-dropdown-opt.is-selected {
  background: #321b1e !important; border-color: #e4635f !important; box-shadow: inset 3px 0 #e74747 !important;
}
@media (hover:hover) and (pointer:fine) {
  :is(.discord-btn,.submit-btn,.secondary-btn,.primary-btn,.ghost-btn,.primary-link,
    .logout-btn,.sidebar-logout-btn,.action-btn,.ticket-more-btn,.ticket-back-btn,.fix-btn,
    .stats-tab-btn,.itemshop-tab-btn,.purchase-id-btn,.voucher-delete-btn,.ip-reveal-btn,
    .recruitment-action-btn,.approve-btn,.reject-btn,.delete-btn,.access-denied-close,
    .srv-btn,.srv-pin-submit,.srv-plugin-install-btn,.srv-fab,.srv-plugin-del-btn,button[type="submit"]):not(:disabled):not([aria-disabled="true"]):hover {
    transform: translateY(-2px); border-top-color: #ffaea2 !important;
    box-shadow: 0 4px 0 #040405 !important;
  }
  :is(a.srv-card,.srv-engine-card,.srv-type-card):hover {
    transform: translateY(-3px); border-color: #a54c51 !important; background: #201719 !important;
  }
}
:is(.discord-btn,.submit-btn,.secondary-btn,.primary-btn,.ghost-btn,.primary-link,
  .srv-btn,.srv-pin-submit,.action-btn,.ticket-more-btn,.srv-fab):not(:disabled):active {
  transform: translateY(2px) !important; box-shadow: none !important;
}
.card:hover, .feedback-item:hover, .vacation-card:hover, .approved-card:hover {
  transform: none; box-shadow: 0 4px 0 #040405 !important; border-color: #754046 !important;
}

input:not([type="checkbox"]):not([type="radio"]), select, textarea, .srv-dropdown-btn {
  background: #0b0b0e !important; border: 1px solid #44383e !important;
  border-radius: 0 !important; color: #f0e9e5 !important;
  transition: border-color .16s, box-shadow .16s;
}
input::placeholder, textarea::placeholder { color: #979091; opacity: 1; }
:is(input,select,textarea):focus {
  border-color: #e86c66 !important; box-shadow: 0 0 0 2px #e7474726 !important;
}
input[type="checkbox"], input[type="radio"] { accent-color: #df4646; }
select option { background: #171316 !important; color: #f4f1ee !important; }
.srv-console { background: #08080a !important; color: #ddd6d2; }
.srv-console, .srv-console-input input, .srv-editor-textarea, .command-pill,
pre, code { font-family: Consolas,"Cascadia Code",monospace; }
.srv-console-head, .srv-console-input, .srv-fm-bar, .srv-editor-head, .srv-editor-foot {
  background: #20191d !important; border-color: #3c2d33 !important;
}
.srv-console-head .material-symbols-rounded { font-family: "Material Symbols Rounded"; }
.srv-pin-lock, .srv-mon-dot, .srv-btn-force-kill { animation: none !important; }
.srv-pin-lock { border-radius: 0; background: #391b23; box-shadow: 0 4px 0 #09080a; }
.srv-pin-overlay { background: #08080bed; }
.srv-pin-card { background: #151214; border-radius: 0; border-top: 3px solid #e74747; }
.srv-mon-status { border-left: 3px solid #5ca77d; }
.srv-danger-zone { background: #25151b; border-color: #843749; border-radius: 0; }

/* Dialogs keep their existing visibility, focus, sizing and action handlers. */
:is(.access-denied-dialog,.recruitment-modal-dialog,.decision-list-modal-dialog,
  .vacation-modal-dialog,.error-modal-dialog,.feedback-modal-dialog,.srv-wizard-dialog,
  .srv-detail-dialog,.srv-confirm-dialog,.srv-plugin-dialog,.srv-editor-dialog,
  .srv-input-dialog,.srv-sch-dialog,.srv-access-dialog,.srv-upload-dialog,
  .srv-users-dialog,.srv-activity-dialog) {
  background: #161315 !important; border: 1px solid #574048 !important;
  border-top: 3px solid #e74747 !important; border-radius: 0 !important;
  box-shadow: 0 12px 0 #0005,0 24px 64px #0008 !important;
  animation-duration: .22s !important;
}
[class$="-backdrop"] { background: #050507c9 !important; }
.recruitment-modal-dialog, .error-modal-dialog, .vacation-modal-dialog, .srv-editor-dialog { max-height: calc(100dvh - 32px); }
.srv-editor-dialog { overflow: hidden; }
.srv-editor-textarea { min-height: 180px; }
.srv-mon-status.is-warn { border-left-color: #d6a04e; }
.srv-mon-status.is-crit { border-left-color: #e55a62; }
.srv-mon-tabs, .srv-sch-item, .srv-sch-log, .srv-log-file,
.srv-users-list, .srv-activity-list, .srv-plugin-ver, .srv-step-ic,
.srv-engine-check, .srv-type-check, .srv-fm-check input,
.srv-toggle-track, .srv-toggle-thumb, .srv-progress-bar { border-radius: 0 !important; }

/* Public entry: a static vector scene of obsidian blocks and redstone ore. */
body:has(.login-wrap) { user-select: auto; -webkit-user-select: auto; }
.oc-site-topbar {
  position: relative; top: 0; left: 0; transform: none; width: 100%; max-width: none;
  min-height: 82px; margin: 0; padding: 16px max(28px,calc((100vw - 1200px)/2));
  justify-content: space-between; border: 0; border-bottom: 1px solid #33282e;
  border-radius: 0; background: #0e0d10; box-shadow: none;
}
.oc-site-brand { display: inline-flex; align-items: center; gap: 11px; padding: 0 !important; }
.oc-site-brand img { width: 56px; height: 56px; }
.oc-site-brand span { font: 400 21px/1.4 var(--ore-pixel); letter-spacing: .025em; color: #f4f1ee; }
.oc-site-nav { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.oc-site-topbar a:not(.oc-site-brand), .player-topbar a {
  border-radius: 0; border-color: transparent; color: #bcb2b4; padding: 9px 12px;
  font-size: 11px; font-weight: 600;
}
.oc-site-topbar a:not(.oc-site-brand):hover, .player-topbar a:hover,
.oc-site-topbar a.is-panel, .player-topbar .is-panel {
  background: #30191e; border-color: #71303b; color: #fff;
}
.login-wrap {
  min-height: calc(100svh - 82px); max-width: 1360px; margin: 0 auto;
  padding: 74px 6vw 96px; gap: 64px; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr);
}
.brand { position: relative; padding-bottom: 220px; }
.brand::after {
  content: ""; position: absolute; left: -32px; right: -16px; bottom: -30px;
  height: 260px; background: url('/ore-landscape.svg') center/contain no-repeat; pointer-events: none;
}
.oc-eyebrow { display: flex; align-items: center; gap: 9px; font-size: 10px; letter-spacing: .17em; font-weight: 700; }
.oc-eyebrow::before { content: none; }
.brand h1 {
  margin: 20px 0 24px; color: #f4f1ee; background: none; -webkit-text-fill-color: currentColor;
  font: 400 clamp(32px,4.5vw,62px)/1.4 var(--ore-pixel); letter-spacing: .01em;
  text-shadow: 0 5px #000a;
}
.brand h1 em { display: block; font-style: normal; color: #ed5550; }
.brand p { max-width: 470px; color: #b9afb0 !important; font-size: 14px; line-height: 1.9; margin: 0; }
.login-card { justify-self: stretch; width: 100%; max-width: 470px; padding: 34px; border-top: 3px solid #e74747 !important; }
.login-card .tag { padding: 0; border: 0; background: none; font-size: 10px; text-transform: uppercase; letter-spacing: .16em; }
.login-card h2 { font: 400 24px/1.6 var(--ore-pixel); text-transform: uppercase; margin: 18px 0 16px; }
.login-card p { font-size: 13px; line-height: 1.9; }
.login-card .discord-btn {
  --button-bg: #b52f3b; --button-edge: #de665f; --button-bottom: #61151f;
  width: 100%; min-height: 58px; font-size: 15px; font-weight: 400;
  font-synthesis: none; text-shadow: none; -webkit-text-stroke: 0;
  color: #f2e9e5 !important; letter-spacing: .045em;
  gap: 12px; padding: 12px 16px; justify-content: center;
}
.discord-icon { flex: 0 0 24px; width: 24px; height: 24px; fill: #fff; background: none; border-radius: 0; }
.login-card .auth-message:empty { display: none; }
.login-card .oc-login-note { display: block; margin: 22px 0 0; border-top: 1px solid #332a2e; padding-top: 18px; font-size: 12px; line-height: 1.8; color: #aaa0a4 !important; }
.oc-login-note::before { content: none; }
.oc-login-footer { padding: 0 24px 24px; text-align: center; color: #8d8187; font-size: 10px; letter-spacing: .05em; }
.player-topbar { background: #111013; border-bottom-color: #3a2b32; box-shadow: none; }
.player-copy h1 { font-size: clamp(32px,5vw,60px); }
.player-copy p { color: #b6aaaf; font-size: 15px; line-height: 1.9; }
.auth-card { border-top: 3px solid #e74747 !important; }
.dashboard-card { border-top: 3px solid #e74747 !important; }
.skin-stage { background: #21191c; border-color: #473039; border-radius: 0; }
.stat-icon { font-family: "Material Symbols Rounded"; }

html,body,.sidebar,.srv-scroll,.custom-scroll,.table-scroll,.admin-table-scroll,.itemshop-table-wrap,.ticket-log-frame-wrap {
  scrollbar-color: #8f3f4c #111013 !important; scrollbar-width: thin;
}
::-webkit-scrollbar-thumb { background: #8f3f4c !important; border: 2px solid #111013 !important; border-radius: 0 !important; }
::-webkit-scrollbar-track { background: #111013 !important; border-radius: 0 !important; }

@media (min-width:1101px) {
  .content { padding: 28px 32px 40px; }
  .sidebar { overflow-y: auto; }
}
@media (max-width:1100px) {
  .sidebar { background: #111013 !important; }
  .logo-block::after { font-size: 22px; }
  .content > .topbar { min-height: 48px; }
}
@media (max-width:800px) {
  .oc-site-topbar { padding: 14px 20px; gap: 16px; }
  .oc-site-nav a:not(.is-panel) { display: none; }
  .login-wrap { grid-template-columns: minmax(0,1fr); padding: 42px 24px 48px; gap: 30px; }
  .brand { padding-bottom: 0; }
  .brand::after { display: none; }
  .brand h1 { font-size: clamp(30px,7vw,48px); margin-block: 16px; }
  .brand p { max-width: 560px; }
  .login-card { max-width: 560px; justify-self: center; padding: 26px; }
  .login-card h2 { font-size: 22px; }
  .oc-eyebrow { font-size: 9px; }
  .srv-manage-title h1 { font-size: 21px; }
  .srv-manage-controls { gap: 8px; }
  .srv-btn { white-space: normal; height: auto; min-height: 44px; }
  .profile-section { padding-left: 18px; }
  .profile-section::after { display: none; }
  .section-head h2, .admin-header h2, .ticket-logs-header h2 { font-size: 19px; }
}
@media (max-width:420px) {
  .oc-site-brand span { font-size: 17px; }
  .oc-site-brand img { width: 44px; height: 44px; }
  .oc-site-topbar { min-height: 68px; gap: 8px; padding-inline: 16px; }
  .oc-site-topbar a.is-panel { padding: 8px; font-size: 10px; }
  .login-wrap { padding-inline: 18px; padding-top: 32px; }
  .brand h1 { font-size: clamp(26px,7.7vw,32px); }
  .login-card { padding: 24px 20px; }
  .login-card h2 { font-size: 20px; }
  .login-card .discord-btn { font-size: 13px; }
  .auth-actions { grid-template-columns: 1fr; }
}
@media (hover:none) {
  :is(.card,.feedback-item,.vacation-card,.approved-card,.srv-card,.srv-btn,.discord-btn,.primary-btn):hover { transform: none; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
