:root {
  --t-bg: #070510;
  --t-bg2: #160d2c;
  --t-bg3: #2a174c;
  --t-fg: #faf7ff;
  --t-fg2: #b4a9c9;
  --t-ac: #b86cff;
  --t-ac2: #e47cff;
  --t-ac3: #8257ff;
  --t-bd: #39244f;
  --t-bda: #a367d9;
  --t-gl: #b86cff33;
  --t-gls: #b86cff1a;
  --t-gr: linear-gradient(135deg, #b86cff, #ff5fa7);
  --t-font: Figtree, 'Segoe UI', system-ui, sans-serif;
  --ui-bg: var(--t-bg, #070510);
  --ui-rail: var(--t-bg2, #160d2c);
  --ui-panel: var(--t-bg2, #160d2c);
  --ui-panel-2: var(--t-bg3, #2a174c);
  --ui-panel-3: var(--t-bg3, #2a174c);
  --ui-line: var(--t-bd, #39244f);
  --ui-line-soft: var(--t-bd, #39244f);
  --ui-text: var(--t-fg, #faf7ff);
  --ui-muted: var(--t-fg2, #b4a9c9);
  --ui-faint: var(--t-fg2, #b4a9c9);
  --ui-blue: var(--t-ac, #b86cff);
  --ui-blue-2: var(--t-ac2, #e47cff);
  --ui-green: #8eb99b;
  --ui-red: #ee9685;
  --ui-yellow: #dbc28b;
  --ui-radius: 12px;
  --ui-shadow: 0 18px 50px #0002;
  --design-serif: Figtree, 'Segoe UI', sans-serif;
}
.site-logo { width: 35px; height: 35px; object-fit: contain; border-radius: 8px; flex-shrink: 0; }
html:has(body.mitch-design) { background: var(--t-bg) !important; }
html body.mitch-design {
  --t-bg: inherit !important;
  --t-bg2: inherit !important;
  --t-bg3: inherit !important;
  --t-fg: inherit !important;
  --t-fg2: inherit !important;
  --t-ac: inherit !important;
  --t-ac2: inherit !important;
  --t-ac3: inherit !important;
  --t-bd: inherit !important;
  --t-bda: inherit !important;
  --t-gl: inherit !important;
  --t-gls: inherit !important;
  --t-gr: inherit !important;
  --t-font: inherit !important;
  --t-display: inherit !important;
  margin: 0;
  color: var(--t-fg) !important;
  background-color: var(--t-bg) !important;
  font-family: var(--t-font, Figtree, system-ui, sans-serif) !important;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
html body.mitch-design::before, html body.mitch-design::after { display: none !important; }
body.mitch-design.app-shell { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; padding: 0; }
body.mitch-design #app-topbar { flex-shrink: 0; }
body.mitch-design :is(.page-head, .page-header)::before { display: none !important; }
body.mitch-design :is(.page-head, .page-header) { flex-wrap: wrap; justify-content: space-between; }
body.mitch-design :is(.page-head, .page-header) > div:first-child { margin-right: auto; }
body.mitch-design[data-page=additions] > .card,
body.mitch-design[data-page=report-game] > .card,
body.mitch-design[data-page=web-app] > .card { margin: 60px auto; width: min(680px, calc(100% - 36px)); }
body.mitch-design[data-page=ssh] > :is(.container, .card, #connect-panel) { margin: 48px auto; width: min(680px, calc(100% - 36px)); }
body.mitch-design[data-page=ssh] #connect-card { margin: 48px auto; width: min(560px, calc(100% - 36px)); background: var(--t-bg2); border-color: var(--t-bd); box-shadow: none; }
body.mitch-design[data-page=html-test] { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto 48px minmax(0, 1fr); height: 100dvh; min-height: 0; }
body.mitch-design[data-page=html-test] #app-topbar { grid-column: 1 / -1; }
body.mitch-design[data-page=html-test] #toolbar { grid-row: 2; }
body.mitch-design[data-page=html-test] #left-pane { grid-column: 1; grid-row: 3; }
body.mitch-design[data-page=html-test] iframe { grid-column: 2; grid-row: 3; width: 100%; height: 100%; }
body.mitch-design :is(.enroll-topbar, .enroll-header) { display: none; }
body.mitch-design :is(.legal-shell, .enroll-shell) h1 { color: var(--t-fg) !important; background: none !important; -webkit-text-fill-color: currentColor !important; font-size: clamp(32px, 4vw, 54px); text-transform: none; letter-spacing: -.04em; }
body.mitch-design :is(.legal-shell, .enroll-shell) > img { width: 40px; margin-bottom: 24px; }
body.mitch-design :is(.legal-shell, .enroll-shell) { line-height: 1.75; }
body.mitch-design :is(.legal-shell, .enroll-shell) h2 { margin: 30px 0 14px; }
body.mitch-design :is(.auth-hero, .enroll-intro, .claim-hero) h1,
body.mitch-design :is(.auth-hero, .enroll-intro, .claim-hero) h1 span { color: var(--t-fg) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.mitch-design:is(.admin-page, .moderator-page) { --staff-panel: var(--t-bg2); --staff-panel-strong: var(--t-bg3); --staff-line: var(--t-bd); --staff-text: var(--t-fg); --staff-muted: var(--t-fg2); --staff-violet: var(--t-ac); --staff-magenta: var(--t-ac); }
body.mitch-design:is(.admin-page, .moderator-page) :is(.topbar, .admin-dayboard, .staff-command-center, .staff-card, .staff-hero) { background: var(--t-bg2) !important; color: var(--t-fg) !important; border: 1px solid var(--t-bd) !important; border-radius: 10px !important; box-shadow: none !important; backdrop-filter: none !important; }
body.mitch-design .admin-dayboard::before { display: none; }
body.mitch-design .admin-dayboard :is(small, footer, .admin-calendar-week, time) { color: var(--t-fg2) !important; }
body.mitch-design .admin-calendar-days span { color: var(--t-fg); }
body.mitch-design .admin-calendar-days span.today { color: var(--t-bg); background: var(--t-ac); box-shadow: none; }
body.mitch-design .admin-dayboard :is(button, .admin-bell-summary) { background: var(--t-bg3) !important; border-color: var(--t-bd) !important; color: var(--t-fg) !important; }
body.mitch-design .portal-hero { max-width: none; margin: 0; text-align: left; }
body.mitch-design .portal-hero h1 { font-size: clamp(50px, 6vw, 86px) !important; }
body.mitch-design .portal-eyebrow::before { display: none; }
body.mitch-design .portal-shell .library-grid { padding: 0; }
body.mitch-design .library-copy h2 { font-size: 28px; }
body.mitch-design .feedback-shell .intro { background: transparent; border: 0; padding-left: 0; }
body.mitch-design .feedback-shell .intro h1 { font-weight: 750; font-size: clamp(32px, 4vw, 52px); }
body.mitch-design *, body.mitch-design *::before, body.mitch-design *::after { box-sizing: border-box; }
body.mitch-design ::selection { background: var(--t-ac) !important; color: var(--t-bg) !important; }
body.mitch-design :focus-visible { outline: 2px solid var(--t-ac) !important; outline-offset: 4px; }
body.mitch-design [hidden] { display: none !important; }
body.mitch-design :is(button, a, input, textarea, select) { -webkit-tap-highlight-color: transparent; }
body.mitch-design :is(button, input, textarea, select) { font-family: inherit; }
body.mitch-design :where(button) { color: var(--t-fg); background: var(--t-bg2); border: 1px solid var(--t-bd); border-radius: 7px; padding: 9px 14px; cursor: pointer; }
body.mitch-design :is(h1, h2, h3, h4) { color: var(--t-fg); text-shadow: none !important; }
body.mitch-design :is(h1, .page-title) { letter-spacing: -.055em; line-height: 1.05; }
body.mitch-design :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]), textarea, select) { background: var(--t-bg) !important; border: 1px solid var(--t-bd) !important; border-radius: 8px !important; color: var(--t-fg) !important; min-height: 42px; padding: 10px 13px; box-shadow: none !important; }
body.mitch-design :is(input, textarea)::placeholder { color: var(--t-fg2) !important; opacity: .75; }
body.mitch-design :is(input, textarea, select):focus { border-color: var(--t-ac) !important; }
body.mitch-design input:is([type=checkbox], [type=radio], [type=range]) { accent-color: var(--t-ac); }
body.mitch-design button:disabled { opacity: .42 !important; cursor: not-allowed; }
body.mitch-design :is(.btn-primary, .primary-btn, .btn.primary, button.primary, .submit-btn) { border: 1px solid transparent !important; background: var(--t-ac) !important; color: var(--t-bg) !important; border-radius: 8px !important; min-height: 44px; padding: 11px 20px; font-weight: 700; box-shadow: none !important; }
body.mitch-design :is(.btn-primary, .primary-btn, .btn.primary):hover { background: var(--t-ac2) !important; transform: translateY(-1px); }
body.mitch-design :is(.btn-ghost, .back-btn, .btn-secondary, .filter-btn, .chip, .pill, .tab-btn) { color: var(--t-fg2) !important; border: 1px solid var(--t-bd) !important; background: transparent !important; border-radius: 7px !important; box-shadow: none !important; }
body.mitch-design :is(.chip, .tab-btn, .filter-btn).active { color: var(--t-fg) !important; background: var(--t-bg3) !important; border-color: var(--t-ac) !important; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 2147483647; padding: 12px 20px; background: var(--t-ac); color: var(--t-bg); border-radius: 6px; }
.skip-link:focus { top: 12px; }

body.mitch-design #app-topbar { position: sticky !important; top: 0; z-index: 1200; width: 100% !important; min-height: 74px !important; height: auto !important; margin: 0 !important; padding: 0 clamp(18px, 4vw, 64px) !important; display: flex; align-items: center; gap: 30px !important; border: 0 !important; border-bottom: 1px solid var(--t-bd) !important; border-radius: 0 !important; background: var(--t-bg) !important; box-shadow: none !important; backdrop-filter: none !important; }
body.mitch-design #app-topbar::before { display: none !important; }
body.mitch-design #app-topbar .app-brand { display: flex; align-items: center; gap: 10px; min-width: fit-content; color: var(--t-fg) !important; font-size: 19px; letter-spacing: -.045em; }
body.mitch-design #app-topbar .app-brand b { font: inherit; font-weight: 750; }
body.mitch-design #app-topbar .app-brand b span { color: var(--t-fg2); }
.brand-monogram { display: inline-grid; place-items: center; flex: 0 0 auto; width: 35px; height: 35px; background: var(--t-ac); color: var(--t-bg); font: bold 26px/1 Figtree, sans-serif; letter-spacing: -.09em; border-radius: 9px 9px 9px 2px; padding-right: 2px; }
body.mitch-design #app-topbar .app-nav { display: flex; align-self: stretch; align-items: stretch; flex: 1; gap: 24px; padding: 0; border: 0; background: none; border-radius: 0; overflow-x: auto; scrollbar-width: none; }
body.mitch-design #app-topbar .app-nav a { position: relative; display: inline-flex; align-items: center; min-height: 73px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; color: var(--t-fg2) !important; background: transparent !important; font-size: 13px; font-weight: 750; box-shadow: none !important; white-space: nowrap; }
body.mitch-design #app-topbar .app-nav a:hover, body.mitch-design #app-topbar .app-nav a[aria-current] { color: var(--t-fg) !important; }
body.mitch-design #app-topbar .app-nav a[aria-current]::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--t-ac); }
body.mitch-design #app-topbar .app-account-link { display: inline-flex; align-items: center; gap: 9px; padding: 9px 12px; min-width: fit-content; color: var(--t-fg) !important; background: var(--t-bg2); border: 1px solid var(--t-bd); border-radius: 7px; font-size: 12px; }
.app-account-link svg { width: 17px; height: 17px; stroke: currentColor; stroke-width: 1.6; fill: none; }
body.mitch-design :is(.app-main, main.shell, .legal-shell, .prefs-shell, .enroll-shell, .vms-container, .portal-shell) { width: min(1200px, calc(100% - 64px)) !important; max-width: 1200px; margin-inline: auto !important; padding-top: 48px; padding-bottom: 72px; }
body.mitch-design :is(.page-head, .page-header) { margin: 0 0 32px; padding: 0 0 26px; border: 0; border-bottom: 1px solid var(--t-bd); border-radius: 0; background: none; box-shadow: none; }
body.mitch-design :is(.page-head, .page-header) h1 { margin: 0 0 12px; font-size: clamp(36px, 5vw, 64px) !important; font-weight: 650; }
body.mitch-design :is(.page-head, .page-header) p { margin: 0; max-width: 60ch; color: var(--t-fg2); font-size: 15px; line-height: 1.65; }
body.mitch-design :is(.eyebrow, .kicker, .section-label) { color: var(--t-ac) !important; font-size: 10px; font-weight: 650; letter-spacing: .16em; text-transform: uppercase; }
html body.mitch-design :is(.panel, .card, .glass-card, .cpanel, .pref-section, .stat-card, .mod-card, .rj-card, .action-card, .listing-item, .item-card, .member-card, .friend-card, .notif-card, .plan-card) { color: var(--t-fg) !important; background: var(--t-bg2) !important; border: 1px solid var(--t-bd) !important; border-radius: 12px !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
body.mitch-design :is(.panel, .card, .pref-section)::before { background-image: none !important; box-shadow: none !important; }
body.mitch-design :is(.panel, .card) { padding: clamp(18px, 2.4vw, 30px); }
body.mitch-design :is(.section-title, .panel h2, .card h2) { font-size: 21px; letter-spacing: -.035em; }
body.mitch-design :is(.empty, .empty-state) { color: var(--t-fg2); padding: 32px 20px; line-height: 1.7; }
body.mitch-design :is(table, .data-table) { width: 100%; border-collapse: collapse; font-size: 13px; }
body.mitch-design :is(th, td) { padding: 15px 16px; border-bottom: 1px solid var(--t-bd); text-align: left; }
body.mitch-design th { color: var(--t-fg2); background: var(--t-bg2); font-size: 10px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
body.mitch-design tbody tr:hover { background: var(--t-bg2); }
body.mitch-design :is(.table-wrap, .table-container) { overflow-x: auto; }
body.mitch-design :is(.badge, .tag, .role-tag) { box-shadow: none !important; text-shadow: none !important; border-radius: 5px; }
body.mitch-design :is(.legal-shell, .faq-shell) { max-width: 1040px; }
body.mitch-design :is(.legal-content, .faq-content, .faq-section) { color: var(--t-fg2); line-height: 1.85; }
body.mitch-design :is(.legal-content, .faq-section) h2 { padding-top: 24px; color: var(--t-fg); }
body.mitch-design :is(.legal-nav, .faq-nav, .pref-nav, .prefs-nav) { background: transparent !important; border-color: var(--t-bd) !important; box-shadow: none !important; }
body.mitch-design :is(.pref-section, .settings-section) { padding: 28px; margin-bottom: 20px; }
body.mitch-design :is(.pref-row, .setting-row, .notif-row) { padding-block: 18px; border-color: var(--t-bd); }
body.mitch-design :is(.rank-row, .member-row, .friend-row, .listing-row) { background: var(--t-bg2) !important; border-color: var(--t-bd) !important; border-radius: 8px !important; padding: 16px; box-shadow: none !important; }
body.mitch-design :is(.rank-hero, .rank-overview, .profile-card, .profile-header, .balance-card) { background: var(--t-bg2) !important; color: var(--t-fg) !important; border-color: var(--t-bd) !important; box-shadow: none !important; }
body.mitch-design :is(.rank-position, .balance-value, .stat-value, .stat-number) { color: var(--t-ac) !important; font-variant-numeric: tabular-nums; }
body.mitch-design :is(.avatar, .member-avatar, .profile-avatar) { box-shadow: none !important; border-color: var(--t-bd) !important; }

body.mitch-design:is(.enroll-page, .auth-claim-page) :is(.enroll-main, .claim-layout) { width: min(1140px, calc(100% - 64px)); margin: 64px auto; gap: clamp(32px, 7vw, 100px); }
body.mitch-design :is(.auth-panel, .claim-card, .appeal-panel, .form-panel) { padding: clamp(26px, 4vw, 44px); background: var(--t-bg2) !important; border: 1px solid var(--t-bd) !important; border-radius: 14px !important; box-shadow: none !important; }
body.mitch-design :is(.enroll-hero, .claim-hero, .auth-hero, .story) { background: none !important; border: 0 !important; box-shadow: none !important; }
body.mitch-design :is(.enroll-hero, .claim-hero, .auth-hero, .story) h1 { font-size: clamp(42px, 5vw, 78px); line-height: 1.04; }
body.mitch-design :is(.enroll-hero, .claim-hero) h1 em { font-family: var(--design-serif); color: var(--t-ac) !important; font-weight: 400; }
body.mitch-design :is(.auth-tab-btn, .tab-btn).active { color: var(--t-fg) !important; border-color: var(--t-ac) !important; background: var(--t-bg3) !important; }

body.mitch-design.games-page .games-shell { width: min(1280px, calc(100% - 64px)); margin: auto; padding: 40px 0 80px; }
body.mitch-design :is(.games-hero, .portal-hero) { position: relative; padding: 46px !important; border: 1px solid var(--t-bd) !important; border-radius: 14px !important; background: var(--t-bg2) !important; box-shadow: none !important; overflow: hidden; }
body.mitch-design :is(.games-hero, .portal-hero)::before, body.mitch-design :is(.games-hero, .portal-hero)::after { display: none !important; }
body.mitch-design :is(.games-hero, .portal-hero) h1 { font-size: clamp(58px, 8vw, 112px) !important; line-height: .98 !important; font-weight: 650; letter-spacing: -.075em !important; color: var(--t-fg) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.mitch-design .portal-hero h1 em { color: var(--t-ac); font-family: var(--design-serif); font-weight: 400; }
body.mitch-design :is(.games-hero, .portal-hero) p { color: var(--t-fg2) !important; max-width: 58ch; font-size: 15px; }
body.mitch-design :is(.hero-console, .command-bar, .featured-panel, .content-panel) { background: var(--t-bg2) !important; border-color: var(--t-bd) !important; box-shadow: none !important; backdrop-filter: none !important; }
body.mitch-design .command-bar { top: 84px !important; margin-block: 24px; border-radius: 10px !important; }
body.mitch-design :is(.feature-card, .cat-card, .game-card, .library-card) { background-color: var(--t-bg2) !important; border: 1px solid var(--t-bd) !important; border-radius: 12px !important; box-shadow: none !important; transition: transform .18s ease, border-color .18s ease; }
body.mitch-design :is(.feature-card, .cat-card, .game-card, .library-card):hover { transform: translateY(-3px); border-color: var(--t-ac) !important; }
body.mitch-design :is(.game-title, .library-card h2, .feature-name) { color: var(--t-fg) !important; }
body.mitch-design .library-grid { gap: 24px; margin-top: 28px; }
body.mitch-design .library-card { min-height: 260px; padding: 30px; background-image: none !important; }
body.mitch-design .library-card::before, body.mitch-design .library-card::after { display: none !important; }
body.mitch-design .library-logo { background: var(--t-bg3) !important; color: var(--t-ac) !important; box-shadow: none !important; border: 1px solid var(--t-bd); border-radius: 12px; }
body.mitch-design .library-copy p { color: var(--t-fg2) !important; }
body.mitch-design .card-enter { color: var(--t-ac) !important; }
body.mitch-design .portal-topbar { display: none; }
body.mitch-design .portal-note { color: var(--t-fg2); }
body.mitch-design :is(.hero-btn, .library-card .card-enter i) { color: var(--t-bg) !important; background: var(--t-ac) !important; box-shadow: none !important; border-radius: 7px; }
body.mitch-design:is(.admin-page, .moderator-page) :is(.tool-group, .admin-day-card, .admin-panel, .mod-section, .admin-sidebar) { color: var(--t-fg) !important; background: var(--t-bg2) !important; border-color: var(--t-bd) !important; border-radius: 10px !important; box-shadow: none !important; }
body.mitch-design:is(.admin-page, .moderator-page) :is(.tool-group h2, .admin-day-card h2) { font-size: 21px; }
body.mitch-design:is(.admin-page, .moderator-page) :is(.tool-tabs, .admin-tabs, .filter-row) { background: var(--t-bg) !important; border-color: var(--t-bd) !important; }
body.mitch-design :is(.bell-day-board, .live-tracker, .schedule-card, .period-card, .lunch-selector, .vms-plan, .apply-section) { color: var(--t-fg) !important; background: var(--t-bg2) !important; border-color: var(--t-bd) !important; box-shadow: none !important; border-radius: 12px; }
body.mitch-design :is(.live-tracker, .period-card.active) { border-left: 3px solid var(--t-ac) !important; }
body.mitch-design :is(.plaza-main, .chat-shell) .messages { background: var(--t-bg) !important; }
body.mitch-design :is(.plaza-main, .chat-shell) .input-wrap { background: var(--t-bg2) !important; border-color: var(--t-bd) !important; }
body.mitch-design .loading-orbit { border-radius: 3px; border-color: var(--t-bd); border-top-color: var(--t-ac); }

html body.mitch-design.encrypt-page { height: var(--vvh, 100dvh); min-height: 0 !important; overflow: hidden !important; display: flex; flex-direction: column; padding: 0 !important; }
body.mitch-design.encrypt-page #app-topbar { display: none !important; }
body.mitch-design.encrypt-page #loading { text-transform: none; letter-spacing: 0; opacity: 1; font-size: 15px; }
.chat-signin { max-width: 440px; padding: 30px; text-align: center; }
.chat-signin .brand-monogram { margin: 0 auto 24px; }
.chat-signin h1 { font: 400 44px/1.1 Figtree, sans-serif; color: var(--t-fg); margin: 0 0 20px; }
.chat-signin p { color: var(--t-fg2); margin-bottom: 28px; }
.chat-signin a { display: block; margin-top: 18px; font-size: 13px; }
body.mitch-design.encrypt-page #app.ready { display: grid !important; }
body.mitch-design.encrypt-page { width: 100%; max-width: none !important; }
body.mitch-design.encrypt-page :is(#app, #app-topbar, #chat-main, #msgs, #input-row) { max-width: none !important; }
body.mitch-design.encrypt-page #msgs { width: 100% !important; margin-inline: 0 !important; }
body.mitch-design.encrypt-page .user-entry .user-avatar { position: relative; display: grid; place-items: center; width: 30px !important; height: 30px !important; min-width: 30px; flex: 0 0 30px !important; font-size: 12px; }
body.mitch-design.encrypt-page .user-entry :is(.user-avatar-image, .entry-avatar, .dot) { display: block; width: 30px !important; height: 30px !important; max-width: 30px !important; flex: 0 0 30px !important; object-fit: cover; border-radius: 9px !important; font-size: 12px; }
body.mitch-design.encrypt-page #user-list .user-entry { min-height: 56px; padding: 8px 10px !important; gap: 10px; }
body.mitch-design.encrypt-page #app { flex: 1; width: 100%; min-height: 0; margin: 0 !important; padding: 0 !important; grid-template-columns: 310px minmax(0, 1fr); gap: 0 !important; background: var(--t-bg) !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; overflow: hidden; }
body.mitch-design.encrypt-page #sidebar { width: auto !important; min-width: 0 !important; min-height: 0; height: 100%; display: flex; flex-direction: column; background: var(--t-bg2) !important; border-right: 1px solid var(--t-bd) !important; backdrop-filter: none !important; }
body.mitch-design.encrypt-page #sidebar-top { min-height: 86px; flex-shrink: 0; padding: 18px !important; gap: 10px; background: none !important; border-bottom: 1px solid var(--t-bd) !important; }
body.mitch-design.encrypt-page #sidebar-home { gap: 10px; min-width: 0; }
body.mitch-design.encrypt-page #sidebar-title { display: grid; gap: 4px; }
body.mitch-design.encrypt-page #sidebar-title b { font-size: 17px; letter-spacing: -.03em; }
body.mitch-design.encrypt-page #sidebar-title small { font-size: 10px; color: var(--t-fg2) !important; letter-spacing: 0; text-transform: none; }
body.mitch-design.encrypt-page #sidebar-home-action { display: none !important; }
body.mitch-design.encrypt-page #new-group-btn { width: 34px; min-width: 34px; height: 34px; padding: 0 !important; border-radius: 8px !important; }
body.mitch-design.encrypt-page #new-group-btn em { display: none; }
body.mitch-design.encrypt-page #my-identity { margin: 14px 16px 0; padding: 10px 12px; background: var(--t-bg) !important; border: 1px solid var(--t-bd) !important; border-radius: 8px; box-shadow: none; }
body.mitch-design.encrypt-page #search-wrap { padding: 16px !important; background: none !important; border: 0 !important; }
body.mitch-design.encrypt-page .tabs { display: flex; gap: 18px; padding: 0 0 13px !important; margin-bottom: 10px; border: 0 !important; border-radius: 0 !important; background: none !important; }
body.mitch-design.encrypt-page .tab { flex: 1; padding: 8px 0 !important; min-height: 38px; border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important; background: transparent !important; color: var(--t-fg2) !important; font-size: 12px; box-shadow: none !important; }
body.mitch-design.encrypt-page .tab span { display: none; }
body.mitch-design.encrypt-page .tab.active { color: var(--t-fg) !important; border-bottom-color: var(--t-ac) !important; }
body.mitch-design.encrypt-page #searchInput { width: 100%; font-size: 12px; min-height: 42px; }
body.mitch-design.encrypt-page #user-list { flex: 1; overflow-y: auto; min-height: 0; padding: 0 10px 14px !important; }
body.mitch-design.encrypt-page .user-entry { display: flex; align-items: center; width: 100%; min-height: 74px; gap: 12px; margin: 3px 0; padding: 12px !important; border: 1px solid transparent !important; border-radius: 9px !important; background: transparent !important; color: var(--t-fg) !important; box-shadow: none !important; transform: none !important; text-align: left; }
body.mitch-design.encrypt-page .user-entry:hover { background: var(--t-bg3) !important; }
body.mitch-design.encrypt-page .user-entry.active { background: var(--t-bg3) !important; border-color: var(--t-bd) !important; border-left: 3px solid var(--t-ac) !important; padding-left: 10px !important; }
body.mitch-design.encrypt-page :is(.entry-avatar, .dot) { width: 40px; height: 40px; flex: 0 0 40px; background: var(--t-bg3) !important; color: var(--t-fg) !important; border: 1px solid var(--t-bd) !important; border-radius: 14px !important; box-shadow: none !important; }
body.mitch-design.encrypt-page .dot.on::after { background: #8eb99b !important; box-shadow: none !important; border-color: var(--t-bg2); }
body.mitch-design.encrypt-page .entry-name { font-size: 13px; font-weight: 650; }
body.mitch-design.encrypt-page .entry-sub { color: var(--t-fg2) !important; font-size: 11px; }
body.mitch-design.encrypt-page .unread { background: var(--t-ac) !important; color: var(--t-bg) !important; box-shadow: none !important; border-radius: 5px; }
body.mitch-design.encrypt-page .sidebar-foot { padding: 12px !important; display: flex; gap: 6px; border-top: 1px solid var(--t-bd); background: var(--t-bg2) !important; }
body.mitch-design.encrypt-page :is(.small-btn, .tool-btn) { background: transparent !important; color: var(--t-fg2) !important; border: 1px solid var(--t-bd) !important; border-radius: 7px !important; min-height: 34px; padding: 7px 10px; font-size: 11px; box-shadow: none !important; }
body.mitch-design.encrypt-page :is(.small-btn, .tool-btn):hover { color: var(--t-fg) !important; background: var(--t-bg3) !important; }
body.mitch-design.encrypt-page #chat-main { position: relative; display: flex; flex-direction: column; width: 100%; min-width: 0; min-height: 0; height: 100%; background: var(--t-bg) !important; }
body.mitch-design.encrypt-page #chat-main::before, body.mitch-design.encrypt-page #chat-main::after { display: none !important; }
body.mitch-design.encrypt-page #chat-header { flex-shrink: 0; min-height: 86px; padding: 18px 28px !important; gap: 14px; background: var(--t-bg) !important; border-bottom: 1px solid var(--t-bd) !important; box-shadow: none !important; backdrop-filter: none !important; }
body.mitch-design.encrypt-page #chat-title { font-size: 16px; font-weight: 650; color: var(--t-fg) !important; }
body.mitch-design.encrypt-page #chat-subtitle { font-size: 11px; color: var(--t-fg2) !important; }
body.mitch-design.encrypt-page #chat-home-action { display: none; }
body.mitch-design.encrypt-page .encryption-status { color: var(--t-fg2) !important; border: 0 !important; background: none !important; box-shadow: none !important; font-size: 8px; letter-spacing: .04em; }
body.mitch-design.encrypt-page .encryption-status i { background: #8eb99b !important; box-shadow: none !important; }
body.mitch-design.encrypt-page .header-tools { gap: 6px; }
body.mitch-design.encrypt-page #chat-tools-menu { background: var(--t-bg2) !important; border-color: var(--t-bd) !important; box-shadow: var(--ui-shadow) !important; }
body.mitch-design.encrypt-page #no-chat { position: absolute; inset: 86px 0 92px; width: auto; height: auto; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 32px; gap: 0; background: var(--t-bg) !important; color: var(--t-fg2) !important; text-align: center; }
.chat-empty-art { width: 160px; height: 140px; margin-bottom: 22px; }
.chat-empty-art svg { width: 100%; height: 100%; stroke: var(--t-ac); stroke-width: 1.6; }
.chat-empty-art rect:last-of-type { fill: var(--t-bg2); }
.chat-empty-label { color: var(--t-ac); font: 600 9px/1.5 var(--t-font); letter-spacing: .2em; margin-bottom: 16px; }
body.mitch-design.encrypt-page #no-chat strong { color: var(--t-fg) !important; font-family: var(--design-serif); font-size: clamp(30px, 3.5vw, 48px); font-weight: 400; letter-spacing: -.05em; }
body.mitch-design.encrypt-page #no-chat p { max-width: 300px; margin: 16px 0 24px; color: var(--t-fg2) !important; font-size: 13px; line-height: 1.75; }
body.mitch-design.encrypt-page #no-chat .small-btn { padding-inline: 16px; }
body.mitch-design.encrypt-page #msgs { flex: 1; min-height: 0; padding: 28px clamp(18px, 4vw, 60px) !important; background: none !important; overflow-y: auto; }
body.mitch-design.encrypt-page .msg { max-width: min(76%, 620px); padding: 12px 16px; background: var(--t-bg2) !important; color: var(--t-fg) !important; border: 1px solid var(--t-bd) !important; border-radius: 14px 14px 14px 3px !important; box-shadow: none !important; font-size: 14px; line-height: 1.6; }
body.mitch-design.encrypt-page .msg.mine { background: var(--t-bg3) !important; border-color: var(--t-bda) !important; border-radius: 14px 14px 3px 14px !important; }
body.mitch-design.encrypt-page .msg .meta { color: var(--t-fg2) !important; font-size: 10px; }
body.mitch-design.encrypt-page .day { color: var(--t-fg2) !important; font-size: 10px; letter-spacing: .06em; }
body.mitch-design.encrypt-page #input-row { position: relative; flex-shrink: 0; margin: 0 28px 24px !important; padding: 7px !important; min-height: 58px; border: 1px solid var(--t-bd) !important; border-radius: 12px !important; background: var(--t-bg2) !important; box-shadow: none !important; }
body.mitch-design.encrypt-page #input-row:focus-within { border-color: var(--t-ac) !important; }
body.mitch-design.encrypt-page #msgInput { min-width: 0; min-height: 42px; padding: 10px !important; background: transparent !important; border: 0 !important; color: var(--t-fg) !important; font-size: 14px; box-shadow: none !important; }
body.mitch-design.encrypt-page #attachBtn { flex-shrink: 0; width: 36px; height: 40px; padding: 0 !important; background: transparent !important; color: var(--t-fg2) !important; border: 0 !important; font-size: 24px; box-shadow: none !important; }
body.mitch-design.encrypt-page #sendBtn { min-width: 78px; min-height: 42px; background: var(--t-ac) !important; color: var(--t-bg) !important; border: 0 !important; border-radius: 8px !important; box-shadow: none !important; padding: 10px 15px !important; }
body.mitch-design.encrypt-page :is(#reply-preview, #image-preview) { margin-inline: 28px; background: var(--t-bg2) !important; border-color: var(--t-bd) !important; }
body.mitch-design.encrypt-page #member-profile-panel { display: none !important; background: var(--t-bg2) !important; border-left: 1px solid var(--t-bd) !important; padding: 22px !important; overflow-y: auto; box-shadow: none !important; }
body.mitch-design.encrypt-page.chat-details-open #app { grid-template-columns: 310px minmax(0, 1fr) 270px; }
body.mitch-design.encrypt-page.chat-details-open #member-profile-panel { display: block !important; }
body.mitch-design.encrypt-page :is(.chat-profile-card, .chat-profile-empty) { background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: var(--t-fg) !important; }
body.mitch-design.encrypt-page :is(.chat-profile-avatar, .chat-profile-empty img) { border-radius: 18px; box-shadow: none !important; }
body.mitch-design.encrypt-page :is(.modal-card, #chat-tools-menu, #toast) { background: var(--t-bg2) !important; color: var(--t-fg) !important; border: 1px solid var(--t-bd) !important; border-radius: 12px !important; box-shadow: 0 24px 80px #0005 !important; }
body.mitch-design.encrypt-page .modal-card { padding: 26px; max-width: min(460px, calc(100vw - 32px)); }

body.mitch-design #app-topbar .app-brand { font-size: 19px !important; gap: 10px !important; }
body.mitch-design #app-topbar .app-brand .brand-monogram { color: var(--t-bg) !important; font-size: 26px !important; }
body.mitch-design #app-topbar .app-nav { gap: 26px !important; align-items: stretch !important; justify-content: flex-start !important; max-width: none !important; }
body.mitch-design #app-topbar .app-nav a { font-size: 13px !important; min-height: 73px !important; text-decoration: none !important; }
body.mitch-design #app-topbar .app-brand { flex-shrink: 0; }
body.mitch-design #app-topbar :is(.app-brand, .app-account-link) { text-decoration: none !important; }
body.mitch-design #app-topbar .app-brand::before { display: none !important; }
body.mitch-design.encrypt-page #app.ready { height: var(--vvh, 100dvh) !important; min-height: 0 !important; }
body.mitch-design.encrypt-page #chat-header { display: flex !important; }
body.mitch-design.encrypt-page .chat-title-wrap { flex: 1; }
body.mitch-design.encrypt-page #chat-header .header-tools { width: auto; flex-shrink: 0; }
body.mitch-design.encrypt-page #input-row { width: auto !important; }
body.mitch-design.encrypt-page .msg { padding: 0; border: 0 !important; background: transparent !important; }
body.mitch-design.encrypt-page .msg.mine { border: 0 !important; background: transparent !important; }
body.mitch-design.encrypt-page .msg-bubble { padding: 12px 16px !important; border: 1px solid var(--t-bd) !important; border-radius: 14px 14px 14px 3px !important; background: var(--t-bg2) !important; color: var(--t-fg) !important; box-shadow: none !important; }
body.mitch-design.encrypt-page .msg.mine .msg-bubble { border-color: var(--t-bda) !important; border-radius: 14px 14px 3px 14px !important; background: var(--t-bg3) !important; }
body.mitch-design.encrypt-page .msg-meta { padding: 0 3px 6px; color: var(--t-fg2); }
body.mitch-design.encrypt-page .msg .who { color: var(--t-fg2) !important; font-size: 11px; }
body.mitch-design.encrypt-page .msg .who.me { color: var(--t-ac) !important; }
body.mitch-design.encrypt-page .msg-delivery { color: var(--t-fg2); }
body.mitch-design.encrypt-page #my-identity { color: var(--t-fg2); font-size: 10px; }
body.mitch-design.encrypt-page #my-identity::before { color: var(--t-fg2); }
body.mitch-design.encrypt-page .role-tag { color: var(--t-fg2); }
body.mitch-design.prefs-page .page-head { min-height: 0; padding: 0 0 28px !important; margin: 0 0 28px !important; border-radius: 0 !important; background: transparent !important; backdrop-filter: none; }
body.mitch-design.prefs-page .page-head::before, body.mitch-design.prefs-page .page-head::after { display: none; }
body.mitch-design.prefs-page .page-head h1::before { content: 'MAKE IT YOURS'; }
body.mitch-design.prefs-page .pref-stack { grid-template-columns: 1fr !important; gap: 14px !important; }
body.mitch-design.prefs-page .pref-stack > .pref-section { grid-column: 1 / -1 !important; padding: 22px 26px !important; border-radius: 10px !important; }
body.mitch-design.prefs-page .pref-section h2 { font: 600 21px/1.3 var(--t-font) !important; letter-spacing: -.025em !important; text-align: left !important; justify-content: flex-start; margin: 0; }
body.mitch-design.prefs-page .pref-section h2::before { display: none; }
body.mitch-design.prefs-page .pref-section h2::after { margin-left: auto; }
body.mitch-design.prefs-page .status-pill { border-radius: 8px !important; box-shadow: none !important; backdrop-filter: none; }
body.mitch-design.prefs-page .prefs-jump-nav { top: 84px; border-radius: 8px; background: var(--t-bg); box-shadow: none; backdrop-filter: none; }
body.mitch-design.profile-page { padding: 0 0 60px; }
body.mitch-design.profile-page > .wrap { width: min(700px, calc(100% - 36px)); max-width: 700px; margin: 48px auto; padding: 36px; background-color: var(--t-bg2); border: 1px solid var(--t-bd); border-radius: 12px; box-shadow: none; }
body.mitch-design #mitch-cookie-banner { background: var(--t-bg2); color: var(--t-fg); border: 1px solid var(--t-bd); border-radius: 10px; box-shadow: 0 15px 50px #0003; backdrop-filter: none; }
body.mitch-design .mitch-banner-title { color: var(--t-fg); font-family: var(--t-font); }
body.mitch-design .mitch-banner-text { color: var(--t-fg2); }
body.mitch-design .mitch-banner-text a { color: var(--t-ac); }
body.mitch-design .mitch-banner-btn.accept { background: var(--t-ac); color: var(--t-bg); }
body.mitch-design .mitch-banner-btn.decline { color: var(--t-fg); border-color: var(--t-bd); }

@media (max-width: 1100px) {
  body.mitch-design #app-topbar { gap: 22px !important; padding-inline: 24px !important; }
  body.mitch-design #app-topbar .app-nav { gap: 18px; }
  body.mitch-design #app-topbar .app-account-link span { display: none; }
  body.mitch-design.encrypt-page #app, body.mitch-design.encrypt-page.chat-details-open #app { grid-template-columns: 280px minmax(0, 1fr); }
  body.mitch-design.encrypt-page.chat-details-open #member-profile-panel { position: absolute; right: 0; top: 86px; bottom: 0; z-index: 25; width: 280px; box-shadow: -20px 0 50px #0003 !important; }
  body.mitch-design.encrypt-page .encryption-status { display: none; }
}
@media (max-width: 860px) {
  body.mitch-design[data-page=html-test] { grid-template-columns: 1fr; grid-template-rows: auto 48px minmax(250px, 1fr) minmax(250px, 1fr); height: auto; }
  body.mitch-design[data-page=html-test] #left-pane { grid-column: 1; grid-row: 3; }
  body.mitch-design[data-page=html-test] iframe { grid-column: 1; grid-row: 4; }
  body.mitch-design #app-topbar { flex-wrap: wrap; gap: 0 18px !important; padding: 12px 20px 0 !important; }
  body.mitch-design #app-topbar .app-brand { flex: 1; }
  body.mitch-design #app-topbar .app-account-link { order: 1; }
  body.mitch-design #app-topbar .app-nav { order: 2; flex-basis: 100%; gap: 25px; margin-top: 8px; }
  body.mitch-design #app-topbar .app-nav a { min-height: 44px; }
  body.mitch-design #app-topbar .app-nav a { min-height: 44px !important; }
  body.mitch-design #app-topbar .app-nav { gap: 24px !important; }
  body.mitch-design.prefs-page .prefs-jump-nav { top: 120px; }
  body.mitch-design :is(.app-main, main.shell, .legal-shell, .prefs-shell, .enroll-shell, .vms-container, .portal-shell) { width: calc(100% - 36px) !important; padding-top: 28px; }
  body.mitch-design:is(.enroll-page, .auth-claim-page) :is(.enroll-main, .claim-layout) { width: calc(100% - 36px); grid-template-columns: 1fr; margin-block: 28px; }
  body.mitch-design.games-page .games-shell { width: calc(100% - 36px); }
  body.mitch-design :is(.games-hero, .portal-hero) { padding: 28px !important; }
  body.mitch-design .command-bar { top: 116px !important; }
  body.mitch-design .library-grid { grid-template-columns: 1fr; }
  body.mitch-design.encrypt-page #app, body.mitch-design.encrypt-page.chat-details-open #app {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: var(--vvt, 0px) !important;
    bottom: auto !important;
    height: var(--vvh, 100dvh) !important;
    max-height: var(--vvh, 100dvh) !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.mitch-design.encrypt-page #sidebar { width: 100% !important; min-width: 0 !important; display: flex !important; }
  body.mitch-design.encrypt-page #chat-main { display: none !important; }
  body.mitch-design.encrypt-page #app.chat-active #sidebar { display: none !important; }
  body.mitch-design.encrypt-page #app.chat-active #chat-main { display: flex !important; }
  body.mitch-design.encrypt-page #chat-back-btn { display: inline-flex !important; min-width: 36px; min-height: 40px; justify-content: center; align-items: center; }
  body.mitch-design.encrypt-page #sidebar-home-action { display: inline-flex !important; }
  body.mitch-design.encrypt-page #chat-header { min-height: 114px; padding: max(12px, env(safe-area-inset-top, 0px)) 16px 12px !important; gap: 8px; flex-wrap: wrap; }
  body.mitch-design.encrypt-page #sidebar-top { padding-top: max(18px, env(safe-area-inset-top, 0px)) !important; }
  body.mitch-design.encrypt-page .header-tools { width: 100%; margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
  body.mitch-design.encrypt-page #chat-header .header-tools { width: 100%; }
  body.mitch-design.encrypt-page #chat-search-toggle { display: inline-flex; }
  body.mitch-design.encrypt-page .header-tools .tool-btn { min-height: 34px; }
  body.mitch-design.encrypt-page .chat-title-wrap { flex: 1; }
  body.mitch-design.encrypt-page .msg { max-width: 88%; }
  body.mitch-design.encrypt-page #no-chat { inset-block-start: 114px; }
  /* This rule out-ranks the cellar inset rule (encrypt/index.html) on
     mitch-design pages, so it owns the home-indicator inset: keep env() in
     exactly one place (padding-bottom; body padding is 0 here). Putting it in
     margin-bottom as well stacked the inset ~3x in the iOS PWA, and putting it
     in min-height TOO inflated the row another ~34px with a dead zone under
     the text field — min-height stays a constant 56px. */
  body.mitch-design.encrypt-page #input-row { margin: 0 12px 8px !important; min-height: 56px !important; padding: 6px 6px calc(6px + env(safe-area-inset-bottom, 0px)) !important; }
  body.keyboard-open.mitch-design.encrypt-page #input-row,
  body.keyboard-open #input-row { margin: 0 12px 4px !important; padding-bottom: 6px !important; }
  body.mitch-design.encrypt-page #msgInput { font-size: 16px; }
  body.mitch-design.encrypt-page #sendBtn { min-width: 62px; }
  body.mitch-design.encrypt-page.chat-details-open #member-profile-panel { top: 114px; width: min(310px, 100%); }
  body.mitch-design.encrypt-page #app:not(.chat-active) #member-profile-panel { display: none !important; }
}
@media (max-width: 480px) {
  body.mitch-design #app-topbar { padding-inline: 16px !important; }
  body.mitch-design #app-topbar .app-nav { gap: 23px; }
  body.mitch-design :is(.page-head, .page-header) h1 { font-size: 38px !important; }
  body.mitch-design :is(.panel, .card, .pref-section) { padding: 18px; }
  body.mitch-design .library-card { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  body.mitch-design *, body.mitch-design *::before, body.mitch-design *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
