:root{
  --ApplicationBackgroundColor:#ffffff;
  --ApplicationTextColor:#1a1a1a;
  --LinkColor:#000000;
  --AppTitlebarBackgroundColor:#7b001c;
  --AppTitlebarTextColor:#ffffff;
  --AppTitlebarContainerHeight:8vh;
  --AppTitlebarContainerPosition:static;
  --AppTitlebarContainerZIndex:auto;
  --AppTitlebarTextHeight:2vh;
  --AppTitlebarContainerPadding:0vh;
  --AppTitlebarPadding:2vh 0.5vh 0.5vh 0.5vh;

  /* Vanguard Specific */
  --AppTitlebarDisplay:grid;
  --AppTitlebarGridTemplateColumns:6vh 1fr;
  --AppTitlebarAlignItems:center;
  --AppTitlebarJustifyContent:normal;
  --AppTitlebarBackdropFilter:none;
  --AppTitlebarOverflow:hidden;

  --AppBodyContainerHeight:calc(100vh - var(--AppTitlebarContainerHeight) - var(--AppFooterContainerHeight));
  --AppBodyContainerPadding:0vh;
  --AppBodyInstallContainerPadding:0vh;
  --AppFooterContainerPadding:0vh;
  --AppTitlebarBorderColor:transparent;
  --AppTitlebarBorderSize:0vh;
  --AppTitlebarCurve:0vh;
  --AppFooterBorderColor:transparent;
  --AppFooterBorderSize:0vh;
  --AppFooterCurve:0vh;
  --AppFooterBackgroundColor:#5c0015;
  --AppFooterTextColor:#ffffff;
  --AppFooterContainerHeight:5vh;
  --AppFooterTextHeight:1.5vh;

  /* Vanguard Specific */
  --AppFooterDisplay:block;
  --AppFooterAlignItems:normal;
  --AppFooterJustifyContent:normal;
  --AppFooterPadding:0.5vh 0.5vh 1vh 0.5vh;
  --AppFooterLineHeight:1vh;
  --AppFooterFontWeight:normal;
  --AppFooterTextTransform:none;
  --AppFooterOverflow:hidden;

  --MainWindowTitlebarIconPadding:0.25vh;
  --MainCardIconPadding:0.25vh;
  --MainWindowTitlebarIconColor:#ffffff;
  --MainWindowTitlebarIconImageColor:#ffffff;
  --MainCardIconColor:#ffffff;
  --MainCardIconImageColor:#000000;
  --NavLinkColor:#d4af37;
  --HeaderBorderColor:#0000001f;
  --HeaderBorderSize:1px;

  --LogoBackgroundColor:#ffffff;
  --LogoHeight:5.5vh;
  --HeadLineTitleTextHeight:2vh;
  --LogoBorderColor:#a70000;
  --LogoColor:#a70000;
  --LogoBorderSize:0.25vh;
  --LogoBorderSize500:0.125vh;
  --LogoCurve:8px;
  --LogoImage:none;

  --LoaderGroupTextColor:#ffffff;
  --LoaderIconImage:none;
  --SplashLogoImage:none;

  --TextXS:1.25vh;
  --TextS:1.5vh;
  --TextM:1.75vh;
  --TextL:2vh;
  --TextXL:2.25vh;

  --MainWindowBackgroundColor:#ffffff;
  --MainWindowBorderColor:#d4af37;
  --MainWindowBorderSize:0.25vh;
  --MainWindowBorderSize500:0.125vh;
  --MainWindowCurve:0.5vh;
  --MainWindowCurve500:0.3125vh;
  --MainWindowPadding:0vh;
  --MainWindowDisplay:block;
  --MainWindowFlexDirection:column;
  --MainWindowTitlebarLineHeight:var(--MainWindowTitlebarHeight);
  --MainWindowTitlebarFlex:initial;
  --MainWindowTitlebarIconContainerDisplay:block;
  --MainWindowBodyHeight:calc(100% - var(--MainWindowTitlebarHeight) - var(--MainWindowFooterHeight));
  --MainWindowBodyHeight500:calc(100% - var(--MainWindowTitlebarHeight) - var(--MainWindowFooterHeight500));
  --MainWindowBodyMinHeight:auto;
  --MainWindowBodyDisplay:block;
  --MainWindowBodyFlexDirection:column;
  --MainWindowBodyFlex:initial;
  --MainWindowFooterFlex:initial;
  --MainWindowTitlebarHeight:3vh;
  --MainWindowTitlebarBackgroundColor:#650c0c;
  --MainWindowFooterBackgroundColor:#650c0c;
  --MainWindowTitlebarTextColor:#ffffff;
  --MainWindowTitlebarTextHeight:1.75vh;

  /* Vanguard Specific */
  --MainWindowTitlebarPadding:0vh;

  --MainLayerPadding:0.25vh;
  --MainLayerPadding500:0.125vh;
  --MainWindowBodyPadding:0.25vh;
  --MainWindowBodyPadding500:0.125vh;

  /* Vanguard Specific */
  --MainWindowBodyBackgroundColor:transparent;
  --MainWindowBodyBorderColor:transparent;
  --MainWindowBodyBorderSize:0vh;
  --MainWindowBodyCurve:0vh;
  --MainWindowBodyOverflow:hidden;

  --MainWindowFooterHeight:calc(var(--MainWindowCurve) * 0.6);
  --MainWindowFooterHeight500:calc(var(--MainWindowCurve500) * 0.6);

  /* Vanguard Specific */
  --MainWindowFooterPadding:0vh;
  --MainWindowEmptyDisplay:block;

  --MainCardBackgroundColor:#eeeded;
  --MainCardBorderColor:#0000001f;
  --MainCardAccentColor1:var(--MainCardBorderColor);
  --MainCardAccentColor2:var(--MainCardBorderColor);
  --MainCardAccentColor3:var(--MainCardBorderColor);
  --MainCardAccentColor4:var(--MainCardBorderColor);
  --MainCardBorderSize:1px;
  --MainCardPadding:0.5vh;
  --MainCardEmptyHeight:8vh;
  --MainCardHeight:8vh;
  --MainCardLeaderWidth:33%;
  --MainCardLeaderTextAlign:center;
  --MainCardLeaderPadding:0.5vh;
  --MainCardLeaderBackgroundColor:#d7d7d7;

  /* Vanguard Specific */
  --MainCardLeaderCurve:0.25vh;

  --MainCardContentWidth:64%;

  /* Vanguard Specific */
  --MainCardColumnGap:3%;

  --MainCardContentTextAlign:start;
  --MainCardContentPadding:0.5vh;
  --MainCardContentBackgroundColor:none;

  /* Vanguard Specific */
  --MainCardItemAlignItems:center;
  --MainCardArtDisplay:grid;
  --MainCardArtPlaceItems:center;
  --MainCardArtAspectRatio:1;
  --MainCardArtBorderColor:var(--MainCardBorderColor);
  --MainCardArtBorderSize:0.125vh;
  --MainCardArtBackgroundColor:var(--MainCardLeaderBackgroundColor);
  --MainCardArtTextHeight:var(--TextXL);
  --MainCardArtFontWeight:bold;

  /* Vanguard Specific */
  --MainCardCurve:max(0vh, calc(var(--MainWindowCurve) - 0.125vh));
  --MainCardCurve500:max(0vh, calc(var(--MainWindowCurve500) - 0.125vh));
  --BigCardBackgroundColor:var(--MainCardBackgroundColor);
  --BigCardBorderColor:var(--MainCardBorderColor);
  --BigCardAccentBorderSize:0vh;
  --BigCardAccentColor1:var(--BigCardBorderColor);
  --BigCardAccentColor2:var(--BigCardBorderColor);
  --BigCardAccentColor3:var(--BigCardBorderColor);
  --BigCardAccentColor4:var(--BigCardBorderColor);
  --BigCardBorderSize:var(--MainCardBorderSize);
  --BigCardCurve:var(--MainCardCurve);
  --BigCardCurve500:var(--MainCardCurve500);
  --BigCardHeight:100%;
  --BigCardPadding:var(--MainCardPadding);
  --BigCardLeaderWidth:33%;
  --BigCardContentWidth:64%;
  --BigCardGridTemplateColumns:var(--BigCardLeaderWidth) var(--BigCardContentWidth);
  --BigCardColumnGap:3%;
  --BigCardGridTemplateRows:1fr;
  --BigCardRowGap:0vh;
  --BigCardLeaderTextAlign:center;
  --BigCardLeaderPadding:0.5vh;
  --BigCardLeaderBackgroundColor:var(--MainCardLeaderBackgroundColor);
  --BigCardLeaderCurve:0.25vh;
  --BigCardContentTextAlign:start;
  --BigCardContentPadding:0.5vh;
  --BigCardContentBackgroundColor:none;
  --BigCardContentOverflow:auto;
  --BigCardContentAlignSelf:stretch;

  /* Vanguard Specific */
  --BigCardOverflow:visible;
  --BigCardTextColor:var(--ApplicationTextColor);

  --SmallCardBackgroundColor:var(--BigCardBackgroundColor);
  --SmallCardBorderColor:var(--BigCardBorderColor);
  --SmallCardAccentBorderSize:var(--BigCardAccentBorderSize);
  --SmallCardAccentColor1:var(--BigCardAccentColor1);
  --SmallCardAccentColor2:var(--BigCardAccentColor2);
  --SmallCardAccentColor3:var(--BigCardAccentColor3);
  --SmallCardAccentColor4:var(--BigCardAccentColor4);
  --SmallCardBorderSize:var(--BigCardBorderSize);
  --SmallCardCurve:var(--BigCardCurve);
  --SmallCardCurve500:var(--BigCardCurve500);
  --SmallCardHeight:calc(var(--BigCardHeight) * 0.5);
  --SmallCardPadding:calc(var(--BigCardPadding) * 0.5);
  --SmallCardGridTemplateColumns:var(--BigCardGridTemplateColumns);
  --SmallCardGridTemplateRows:var(--BigCardGridTemplateRows);
  --SmallCardColumnGap:var(--BigCardColumnGap);
  --SmallCardRowGap:var(--BigCardRowGap);
  --SmallCardLeaderTextAlign:var(--BigCardLeaderTextAlign);
  --SmallCardLeaderPadding:var(--BigCardLeaderPadding);
  --SmallCardLeaderBackgroundColor:var(--BigCardLeaderBackgroundColor);
  --SmallCardLeaderCurve:var(--BigCardLeaderCurve);
  --SmallCardContentTextAlign:var(--BigCardContentTextAlign);
  --SmallCardContentPadding:var(--BigCardContentPadding);
  --SmallCardContentBackgroundColor:var(--BigCardContentBackgroundColor);
  --SmallCardContentOverflow:var(--BigCardContentOverflow);
  --SmallCardContentAlignSelf:var(--BigCardContentAlignSelf);
  --SmallCardOverflow:var(--BigCardOverflow);
  --SmallCardTextColor:var(--BigCardTextColor);

  --SubWindowBackgroundColor:#ffffff;
  --SubLayerPadding:0.75vh;
  --SubLayerPadding500:0.375vh;
  --SubWindowBorderColor:#d4af37;
  --SubWindowBorderSize:0.25vh;
  --SubWindowBorderSize500:0.125vh;
  --SubWindowCurve:0.5vh;
  --SubWindowCurve500:0.25vh;
  --SubWindowTitlebarBackgroundColor:#9c2020;
  --SubWindowTitlebarTextColor:#ffffff;
  --SubWindowShadowColor:#00000090;
  --SubWindowBodyPadding:0.25vh;
  --SubWindowBodyPadding500:0.125vh;

  --SubWindowTitlebarHeight:3vh;
  --SubWindowFooterHeight:4.5vh;

  --PrivateChatWidth:min(52vh, 94vw);
  --PrivateChatGlowColor:var(--NotificationWindowBorderColor);
  --PrivateChatWindowShadow:0vh 0vh 4px var(--PrivateChatGlowColor);
  --PrivateChatHeight:min(62vh, 88vh);
  --PrivateChatFooterBackgroundColor:var(--NotificationWindowBackgroundColor);
  --PrivateChatFieldBackgroundColor:var(--ApplicationBackgroundColor);
  --PrivateChatFieldTextColor:var(--ApplicationTextColor);
  --PrivateChatFieldBorderColor:var(--InputFieldBorderColor);
  --PrivateChatMessageBorderColor:var(--NotificationWindowBorderColor);
  --PrivateChatMessageBackgroundColor:var(--AlternateRowColor2);
  --PrivateChatOwnMessageBackgroundColor:var(--AlternateRowColor1);
  --PrivateChatAuthorColor:var(--LinkColor);
  --PrivateChatOwnAuthorColor:var(--BrandColor);

  --NotificationOverlayBackgroundColor:#000000bb;
  --NotificationOverlayLightBackgroundColor:#00000022;
  --NotificationWindowBackgroundColor:#ffffff;
  --NotificationWindowBorderColor:#d4af37;
  --NotificationWindowBorderSize:0.25vh;
  --NotificationWindowBorderSize500:0.125vh;
  --NotificationWindowCurve:0.5vh;
  --NotificationWindowCurve500:0.25vh;
  --NotificationTitleBackgroundColor:#650c0c;
  --NotificationTitleTextColor:#ffffff;
  --NotificationTextHeight:1.75vh;
  --NotificationBodyPadding:0.25vh;
  --NotificationBodyPadding500:0.125vh;

  --ImagePreviewBodyBackgroundColor:#111111;
  --ImagePreviewBodyPadding:1vh 0.5vh;

  --FullViewBodyPadding:0.5vh;

  --InlineSectionWidth:100%;
  --InlineSectionHeight:auto;
  --InlineSectionMinHeight:25vh;
  --InlineSectionBorderColor:transparent;
  --InlineSectionBorderSize:0vh;
  --InlineSectionPadding:0vh;
  --InlineSectionCurve:0vh;
  --InlineSectionTitlebarBackgroundColor:#a5372a;
  --InlineSectionTitlebarPadding:0vh;
  --InlineSectionTitlebarTextColor:#ffffff;
  --InlineSectionTitlebarAlign:left;
  --InlineSectionTitlebarHeight:3vh;
  --InlineSectionTitlebarTextHeight:1.75vh;
  --InlineSectionTitlebarActionPadding:0.25vh;
  --InlineSectionTitlebarCurve:0vh;
  --InlineSectionBodyWidth:100%;
  --InlineSectionBodyHeight:calc(100% - var(--InlineSectionTitlebarHeight));
  --InlineSectionBodyPadding:0vh;
  --InlineSectionBodyCurve:0vh;
  --SplitCardHeight:auto;
  --SplitCardFlex:initial;
  --SplitCardDisplay:grid;
  --SplitCardColumns:minmax(0vh, 1fr) minmax(0vh, 1fr);
  --SplitCardRows:auto;
  --SplitCardGap:0vh;
  --SplitCardBorderSize:0vh;
  --SplitCardBorderColor:transparent;
  --SplitCardBackgroundColor:transparent;
  --SplitCardRailPadding:0vh;
  --SplitCardRailOverflow:auto;
  --SplitCardRailBackgroundColor:transparent;
  --SplitCardRailBorderSize:0vh;
  --SplitCardRailBorderColor:transparent;
  --SplitCardRailBottomBorderSize:0vh;
  --SplitCardRailBottomBorderColor:transparent;
  --SplitCardBodyOverflow:hidden;
  --SplitCardBodyDisplay:block;
  --SplitCardBodyFlexDirection:column;
  --SplitCardBodyBackgroundColor:transparent;
  --SplitCardHeaderPadding:0vh;
  --SplitCardHeaderBorderSize:0vh;
  --SplitCardHeaderBorderColor:transparent;
  --SplitCardHeaderActionsGap:0vh;
  --ListCardDisplay:block;
  --ListCardGroupPadding:0vh;
  --ListCardItemPadding:0vh;
  --ListCardItemColor:inherit;
  --ListCardItemBackgroundColor:transparent;
  --ListCardItemActiveColor:inherit;
  --ListCardItemActiveBackgroundColor:transparent;
  --ListCardItemFontWeight:inherit;
  --HeroCardMinHeight:auto;
  --HeroCardColumns:auto minmax(0vh, 1fr) auto;
  --HeroCardGap:0vh;
  --HeroCardPadding:0vh;
  --HeroCardBackgroundColor:transparent;
  --HeroCardBorderSize:0vh;
  --HeroCardBorderColor:transparent;
  --HeroCardAvatarBorderSize:0vh;
  --HeroCardAvatarBorderColor:transparent;
  --HeroCardAvatarFontSize:inherit;
  --HeroCardAvatarFontWeight:inherit;
  --KickerCardAlignItems:center;
  --KickerCardJustifyContent:space-between;
  --KickerCardGap:0vh;
  --KickerCardPadding:0vh;
  --KickerCardKickerPadding:0vh;
  --KickerCardActionsGap:0vh;
  --ContentRoundedTextBackgroundColor:#d4af37;
  --ContentColorTextColor:#650c0c;

  --PositiveButtonBackgroundColor:#2c5e38;
  --NegativeButtonBackgroundColor:#892d23;
  --NeutralButtonBackgroundColor:#505050;
  --InputButtonBackgroundColor:#505050;
  --ButtonTextColor:#ffffff;
  --ButtonBorderColor:#ffffff;
  --ButtonBorderSize:0.25vh;
  --ButtonBorderSize500:0.125vh;
  --ButtonCurve:6px;

  /* Vanguard Specific */
  --ButtonHeight:4vh;
  --ButtonMinHeight:0vh;
  --ButtonPadding:0vh;
  --ButtonPadding500:0vh;
  --ButtonGap:0vh;
  --ButtonDisplay:inline-block;
  --ButtonTextHeight:inherit;
  --ButtonTextWeight:600;
  --ButtonTextTransform:none;
  --ButtonTransition:none;
  --PositiveButtonBorderColor:var(--ButtonBorderColor);
  --NeutralButtonBorderColor:var(--ButtonBorderColor);
  --PositiveButtonHoverFilter:none;
  --PositiveButtonHoverTransform:none;
  --NeutralButtonHoverBorderColor:var(--ButtonBorderColor);
  --NeutralButtonHoverTextColor:var(--ButtonTextColor);
  --ButtonDisabledBackgroundColor:var(--NeutralButtonBackgroundColor);
  --ButtonDisabledTextColor:var(--ButtonTextColor);

  --InputFieldBorderColor:#cccccc;
  --InputFieldBorderSize:1px;
  --InputFieldCurve:6px;

  --AlternateRowColor1:#eeeded;
  --AlternateRowColor2:#ffffff;
  --ScrollableTableHeaderBackgroundColor:#650c0c;
  --ScrollableTableHeaderTextColor:#ffffff;
  --PhotoThumbnailBorderColor:#000000;
  --PhotoThumbnailBorderSize:0.25vh;

  /* Vanguard Specific */
  /* Vanguard Specific */
  --BrandColor:var(--ApplicationTextColor);
  --PrimaryNavHoverColor:var(--LinkColor);
  --PlayNavColor:var(--NavLinkColor);
  --SupportingTextColor:var(--ApplicationTextColor);
  --HeroShadeBackground:none;
  --GameCardRedBackgroundColor:var(--MainCardBackgroundColor);
  --GameCardCyanBackgroundColor:var(--MainCardBackgroundColor);
  --GameCardYellowBackgroundColor:var(--MainCardBackgroundColor);
  --GameArenaBackgroundColor:var(--MainWindowBodyBackgroundColor);
  --GameArenaGridColor:transparent;
  --PulseTargetBackgroundColor:var(--PositiveButtonBackgroundColor);
  --PulseTargetBorderColor:var(--ButtonBorderColor);
}


html{margin:0; padding:0; }
body{width:100%; height:100%; }
a{text-decoration:none; font-weight:800; color:var(--LinkColor); }
*, *::before, *::after{box-sizing:border-box; }

html, body{height:100vh; margin:0; padding:0; overflow:hidden; overscroll-behavior:none; -webkit-overflow-scrolling:auto; }
body{background:var(--ApplicationBackgroundColor); color:var(--ApplicationTextColor); font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji"; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
p{margin:0vh; padding:0vh; }
button, input, select, textarea{font:inherit; }
header{position:sticky; top:0; backdrop-filter:saturate(180%) blur(12px); border-bottom:var(--HeaderBorderSize) solid var(--HeaderBorderColor); padding:12px 16px; display:flex; align-items:center; gap:12px; z-index:10; }
footer{padding:8px 16px; font-size:12px; color:var(--ApplicationTextColor); text-align:center; }

/* ===== BASE CONTAINERS ===== */
div, span{-webkit-user-select:none; -webkit-touch-callout:none; -moz-user-select:none; -ms-user-select:none; user-select:none; }

/* ===== LOADER WRAPPERS ===== */
.Loader{opacity:0; z-index:400; }
.LoaderGroup{position:fixed; top:50%; left:50%; font-weight:bold; color:var(--LoaderGroupTextColor); text-align:center; transform:translate(-50%, -50%); }
.LoaderText{--SEAnimationDuration:2.4s; animation-timing-function:ease-in-out; }
.LoaderIcon{--SEAnimationDuration:3s; width:100px; height:100px; margin:0 auto; background-image:var(--LoaderIconImage); background-size:contain; background-position:center; background-repeat:no-repeat; }

.DisplayNone{display:none; }
.DisplayBlock{display:block; }

.Loader.Show{display:block; --SEAnimationDuration:200ms; }
.Loader.Hide{display:block; --SEAnimationDuration:1.2s; }

/* ===== CURSORS ===== */
.Hand{cursor:pointer; }
.CrosshairCursor{cursor:crosshair; }
.MoveCursor{cursor:move; }
.WaitCursor{cursor:wait; }
.HelpCursor{cursor:help; }
.TextCursor{cursor:text; }
.NotAllowedCursor{cursor:not-allowed; }
.GrabCursor{cursor:grab; }
.GrabbingCursor{cursor:grabbing; }
.ZoomInCursor{cursor:zoom-in; }
.ZoomOutCursor{cursor:zoom-out; }

/* ===== RESPONSIVE FONTS ===== */
.TextXS{font-size:var(--TextXS); }
.TextS{font-size:var(--TextS); }
.TextM{font-size:var(--TextM); }
.TextL{font-size:var(--TextL); }
.TextXL{font-size:var(--TextXL); }

.Height100{height:100%; }
.Width100{width:100%; }

.Center{text-align:center; }
.VCenter{vertical-align:center; }
.Bold{font-weight:bold; }
.Bolder{font-weight:bolder; }
.Italic{font-style:italic; }
.Underline{text-decoration:underline; }
.Overline{text-decoration:overline; }
.Bothline{text-decoration:underline overline; }
.Strikethrough{text-decoration:line-through; }

/* ===== STRIPING ==== */
.AlternateRow tr:nth-child(odd){background-color:var(--AlternateRowColor1); }
.AlternateRow tr:nth-child(even){background-color:var(--AlternateRowColor2); }
.ScrollableTable{width:100%; border-collapse:separate; border-spacing:0; }
.ScrollableTable thead th{position:sticky; top:0vh; z-index:1; background-color:var(--ScrollableTableHeaderBackgroundColor); color:var(--ScrollableTableHeaderTextColor); }

/* ===== CORE LAYOUT ===== */
.Application{width:100vw; height:100vh; background:var(--ApplicationBackgroundColor); color:var(--ApplicationTextColor); }
.AppTitlebarContainer{width:100vw; height:var(--AppTitlebarContainerHeight); position:var(--AppTitlebarContainerPosition); z-index:var(--AppTitlebarContainerZIndex); padding:var(--AppTitlebarContainerPadding); }
.AppTitlebar{display:var(--AppTitlebarDisplay); grid-template-columns:var(--AppTitlebarGridTemplateColumns); align-items:var(--AppTitlebarAlignItems); justify-content:var(--AppTitlebarJustifyContent); width:100%; height:100%; position:relative; line-height:var(--LogoHeight); padding:var(--AppTitlebarPadding); background:var(--AppTitlebarBackgroundColor); color:var(--AppTitlebarTextColor); border-width:var(--AppTitlebarBorderSize); border-style:solid; border-color:var(--AppTitlebarBorderColor); border-radius:var(--AppTitlebarCurve); font-size:var(--AppTitlebarTextHeight); backdrop-filter:var(--AppTitlebarBackdropFilter); overflow:var(--AppTitlebarOverflow); }
.AppBodyContainer{width:100vw; height:var(--AppBodyContainerHeight); padding:var(--AppBodyContainerPadding); }
.AppBody{display:block; width:100%; height:100%; overflow:hidden; }
.AppBodyInstallContainer{width:100%; height:100%; padding:var(--AppBodyInstallContainerPadding); }
.AppFooterContainer{width:100vw; height:var(--AppFooterContainerHeight); padding:var(--AppFooterContainerPadding); }
.AppFooter{display:var(--AppFooterDisplay); align-items:var(--AppFooterAlignItems); justify-content:var(--AppFooterJustifyContent); width:100%; height:100%; line-height:var(--AppFooterLineHeight); font-size:var(--AppFooterTextHeight); font-weight:var(--AppFooterFontWeight); text-transform:var(--AppFooterTextTransform); padding:var(--AppFooterPadding); background:var(--AppFooterBackgroundColor); color:var(--AppFooterTextColor); border-width:var(--AppFooterBorderSize); border-style:solid; border-color:var(--AppFooterBorderColor); border-radius:var(--AppFooterCurve); text-align:center; overflow:var(--AppFooterOverflow); }
.AppFooterNavigation{height:100%; }
.AppFooterLink{width:10vw; height:100%; margin:0 2vw; text-align:center; }
.AppFooterIcon{height:100%; aspect-ratio:1/1; color:var(--AppFooterTextColor); fill:currentColor; }
.AppWindow{max-width:400px; margin:0px auto; }
.ViewPane{display:block; width:100%; height:100%; }

.Logo{width:var(--LogoHeight); height:var(--LogoHeight); background:var(--LogoBackgroundColor); color:var(--LogoColor); border-radius:var(--LogoCurve); border:var(--LogoBorderSize) solid var(--LogoBorderColor); background-image:var(--LogoImage); background-size:contain; }
.HeadLineTitle{height:var(--HeadLineTitleTextHeight); line-height:var(--HeadLineTitleTextHeight); font-size:var(--HeadLineTitleTextHeight); font-weight:bold; position:absolute; left:var(--LogoHeight); bottom:0.5vh; padding:0vh 2vh; }
.NavLink{text-decoration:none; color:var(--NavLinkColor); }

.Component{width:100%; height:100%; min-height:100%; position:relative; }
.Css3D{padding:0; perspective:10000px; }
.Css3DViewport{height:100%; width:100%; transform-style:preserve-3d; perspective-origin:center center; position:relative; overflow:hidden; max-width:calc((100vh - var(--AppTitlebarContainerHeight) - var(--AppFooterContainerHeight)) * 18 / 9); margin:0 auto; }
.Css3DMotionStage{width:100%; height:100%; position:absolute; top:0vh; left:0vh; overflow:hidden; }
.Css3DParallaxStage{width:100%; height:100%; position:absolute; top:0vh; left:0vh; transform-style:preserve-3d; }
.Css3DParallax{width:100%; height:100%; position:absolute; top:0vh; left:0vh; transform-style:preserve-3d; }
.Css3DLayer{will-change:transform; position:absolute; background-size:100% auto; width:calc(100% + var(--LayerHorizontalOverscan, 0vh) + var(--LayerHorizontalOverscan, 0vh)); height:calc(100% + var(--LayerVerticalOverscan, 0vh) + var(--LayerVerticalOverscan, 0vh)); top:calc(0vh - var(--LayerVerticalOverscan, 0vh)); left:calc(0vh - var(--LayerHorizontalOverscan, 0vh)); overflow:hidden; background-repeat:no-repeat; }
.Css3DLeftBorder,[se-border="Css3DLeftBorder"]{width:50%; height:100%; position:absolute; top:0; left:0; background-repeat:no-repeat; }
.Css3DRightBorder,[se-border="Css3DRightBorder"]{width:50%; height:100%; position:absolute; top:0; right:0; background-repeat:no-repeat; }
.Css3DObject{position:absolute; }
.Canvas3DViewport{height:100%; width:100%; position:relative; overflow:hidden; max-width:calc((100vh - var(--AppTitlebarContainerHeight) - var(--AppFooterContainerHeight)) * 18 / 9); margin:0 auto; }
.Canvas3D{padding:0; }
.Canvas3DMotionStage{width:100%; height:100%; position:absolute; top:0vh; left:0vh; overflow:hidden; }
.Canvas3DParallaxStage{width:100%; height:100%; position:absolute; top:0vh; left:0vh; }
.Canvas3DParallax{width:100%; height:100%; position:absolute; top:0vh; left:0vh; transform-style:preserve-3d; }
.Canvas3DLayer{position:absolute; width:calc(100% + var(--LayerHorizontalOverscan, 0vh) + var(--LayerHorizontalOverscan, 0vh)); height:calc(100% + var(--LayerVerticalOverscan, 0vh) + var(--LayerVerticalOverscan, 0vh)); top:calc(0vh - var(--LayerVerticalOverscan, 0vh)); left:calc(0vh - var(--LayerHorizontalOverscan, 0vh)); pointer-events:none; }
.Canvas3DLeftBorder,[se-border="Canvas3DLeftBorder"]{width:50%; height:100%; position:absolute; top:0; left:0; background-repeat:no-repeat; }
.Canvas3DRightBorder,[se-border="Canvas3DRightBorder"]{width:50%; height:100%; position:absolute; top:0; right:0; background-repeat:no-repeat; }
.Canvas3DObject{position:absolute; }
.Canvas3DLayer[se-layer="Layer3"]{pointer-events:auto; }

.SplashScreen{width:100vw; height:100vh; position:absolute; top:0; left:0; padding:0 10vw; overflow:hidden; }
.SplashLogo{width:80vw; height:60vw; max-height:45vh; position:relative; top:50vh; opacity:0; background-image:var(--SplashLogoImage); background-size:contain; background-repeat:no-repeat; background-position:center center; }
.SplashText{width:80vw; position:relative; top:35vh; opacity:0; text-align:center; font-size:1.5vh; font-weight:bold; }

.MainLayer{width:100%; height:100%; position:relative; padding:var(--MainLayerPadding); }
.MainWindow{width:100%; height:100%; display:var(--MainWindowDisplay); flex-direction:var(--MainWindowFlexDirection); padding:var(--MainWindowPadding); border:var(--MainWindowBorderSize) solid var(--MainWindowBorderColor); border-radius:var(--MainWindowCurve); background:var(--MainWindowBackgroundColor); overflow:hidden; }
.MainWindowTitlebar{height:var(--MainWindowTitlebarHeight); width:100%; line-height:var(--MainWindowTitlebarLineHeight); flex:var(--MainWindowTitlebarFlex); background-color:var(--MainWindowTitlebarBackgroundColor); color:var(--MainWindowTitlebarTextColor); border-radius:max(0vh, calc(var(--MainWindowCurve) - var(--MainWindowBorderSize))) max(0vh, calc(var(--MainWindowCurve) - var(--MainWindowBorderSize))) 0vh 0vh; padding:var(--MainWindowTitlebarPadding); font-size:var(--MainWindowTitlebarTextHeight); font-weight:800; }
.MainWindowTitlebarIconContainer{display:var(--MainWindowTitlebarIconContainerDisplay); height:100%; float:right; line-height:calc(var(--MainWindowTitlebarHeight) + 1vh); }
.MainWindowTitlebarIcon{width:3vh; height:3vh; padding:var(--MainWindowTitlebarIconPadding); border:0; color:var(--MainWindowTitlebarIconColor); background-color:transparent; }
.MainWindowTitlebarIconImage{width:100%; height:100%; display:block; color:var(--MainWindowTitlebarIconImageColor); fill:currentColor; object-fit:contain; }
.MainWindowBody{height:var(--MainWindowBodyHeight); min-height:var(--MainWindowBodyMinHeight); display:var(--MainWindowBodyDisplay); flex-direction:var(--MainWindowBodyFlexDirection); flex:var(--MainWindowBodyFlex); padding:var(--MainWindowBodyPadding); overflow:var(--MainWindowBodyOverflow); background:var(--MainWindowBodyBackgroundColor); border:var(--MainWindowBodyBorderSize) solid var(--MainWindowBodyBorderColor); border-radius:var(--MainWindowBodyCurve); }
.MainWindowFooter{height:var(--MainWindowFooterHeight); width:100%; flex:var(--MainWindowFooterFlex); padding:var(--MainWindowFooterPadding); background:var(--MainWindowFooterBackgroundColor); border-radius:0vh 0vh max(0vh, calc(var(--MainWindowCurve) - var(--MainWindowBorderSize))) max(0vh, calc(var(--MainWindowCurve) - var(--MainWindowBorderSize))); }

/* Vanguard Specific */
.MainWindowTitlebar:empty, .MainWindowFooter:empty{display:var(--MainWindowEmptyDisplay); }

.MainWindowStaticControl{width:100%; text-align:center; position:absolute; bottom:0vh; padding:0.25vh 0 0.75vh 0; }
.MainFullPage{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:2vh; }

.MainCardEmpty{width:100%; min-height:var(--MainCardEmptyHeight); text-align:center; padding:var(--MainCardPadding); background-color:var(--MainCardBackgroundColor); border-width:var(--MainCardBorderSize); border-style:solid; border-color:var(--MainCardBorderColor); border-radius:var(--MainCardCurve); }
.MainCard{width:100%; min-height:var(--MainCardHeight); display:grid; grid-template-columns:var(--MainCardLeaderWidth) var(--MainCardContentWidth); column-gap:var(--MainCardColumnGap); position:relative; padding:var(--MainCardPadding); background-color:var(--MainCardBackgroundColor); border-width:var(--MainCardBorderSize); border-style:solid; border-color:var(--MainCardBorderColor); border-radius:var(--MainCardCurve); }
.MainCard:nth-child(4n+1){border-left-color:var(--MainCardAccentColor1); }
.MainCard:nth-child(4n+2){border-left-color:var(--MainCardAccentColor2); }
.MainCard:nth-child(4n+3){border-left-color:var(--MainCardAccentColor3); }
.MainCard:nth-child(4n+4){border-left-color:var(--MainCardAccentColor4); }

/* Vanguard Specific */
.MainCardItem{align-items:var(--MainCardItemAlignItems); }
.MainCardItem[hidden]{display:none; }

.MainCardLeader{text-align:var(--MainCardLeaderTextAlign); padding:var(--MainCardLeaderPadding); background:var(--MainCardLeaderBackgroundColor); border-radius:var(--MainCardLeaderCurve); }

/* Vanguard Specific */
.MainCardArt{display:var(--MainCardArtDisplay); place-items:var(--MainCardArtPlaceItems); aspect-ratio:var(--MainCardArtAspectRatio); border-width:var(--MainCardArtBorderSize); border-style:solid; border-color:var(--MainCardArtBorderColor); background:var(--MainCardArtBackgroundColor); font-size:var(--MainCardArtTextHeight); font-weight:var(--MainCardArtFontWeight); }

.MainCardContent{text-align:var(--MainCardContentTextAlign); padding:var(--MainCardContentPadding); background:var(--MainCardContentBackgroundColor); }
.MainCardIcon{width:3vh; height:3vh; position:absolute; top:0.5vh; right:0.5vh; border:0; text-align:center; padding:var(--MainCardIconPadding); color:var(--MainCardIconColor); background-color:transparent; }
.MainCardIconImage{width:100%; height:100%; display:block; color:var(--MainCardIconImageColor); fill:currentColor; object-fit:contain; }
.BigCard{width:100%; height:var(--BigCardHeight); display:grid; grid-template-columns:var(--BigCardGridTemplateColumns); grid-template-rows:var(--BigCardGridTemplateRows); column-gap:var(--BigCardColumnGap); row-gap:var(--BigCardRowGap); position:relative; padding:var(--BigCardPadding); background-color:var(--BigCardBackgroundColor); border-width:var(--BigCardBorderSize); border-style:solid; border-color:var(--BigCardBorderColor); border-radius:var(--BigCardCurve); overflow:var(--BigCardOverflow); color:var(--BigCardTextColor); }
.BigCard:nth-child(4n+1){border-left-width:var(--BigCardAccentBorderSize); border-left-style:solid; border-left-color:var(--BigCardAccentColor1); }
.BigCard:nth-child(4n+2){border-left-width:var(--BigCardAccentBorderSize); border-left-style:solid; border-left-color:var(--BigCardAccentColor2); }
.BigCard:nth-child(4n+3){border-left-width:var(--BigCardAccentBorderSize); border-left-style:solid; border-left-color:var(--BigCardAccentColor3); }
.BigCard:nth-child(4n+4){border-left-width:var(--BigCardAccentBorderSize); border-left-style:solid; border-left-color:var(--BigCardAccentColor4); }
.BigCardLeader{text-align:var(--BigCardLeaderTextAlign); padding:var(--BigCardLeaderPadding); background:var(--BigCardLeaderBackgroundColor); border-radius:var(--BigCardLeaderCurve); }
.BigCardContent{align-self:var(--BigCardContentAlignSelf); text-align:var(--BigCardContentTextAlign); padding:var(--BigCardContentPadding); overflow-y:var(--BigCardContentOverflow); background:var(--BigCardContentBackgroundColor); }
.BigCardIcon{width:3vh; height:3vh; position:absolute; top:0.5vh; right:0.5vh; border:0; text-align:center; padding:var(--MainCardIconPadding); color:var(--MainCardIconColor); background-color:transparent; }
.BigCardIconImage{width:100%; height:100%; display:block; color:var(--MainCardIconImageColor); fill:currentColor; object-fit:contain; }

.SmallCard{width:100%; height:var(--SmallCardHeight); display:grid; grid-template-columns:var(--SmallCardGridTemplateColumns); grid-template-rows:var(--SmallCardGridTemplateRows); column-gap:var(--SmallCardColumnGap); row-gap:var(--SmallCardRowGap); position:relative; padding:var(--SmallCardPadding); background-color:var(--SmallCardBackgroundColor); border-width:var(--SmallCardBorderSize); border-style:solid; border-color:var(--SmallCardBorderColor); border-radius:var(--SmallCardCurve); overflow:var(--SmallCardOverflow); color:var(--SmallCardTextColor); }
.SmallCard:nth-child(4n+1){border-left-width:var(--SmallCardAccentBorderSize); border-left-style:solid; border-left-color:var(--SmallCardAccentColor1); }
.SmallCard:nth-child(4n+2){border-left-width:var(--SmallCardAccentBorderSize); border-left-style:solid; border-left-color:var(--SmallCardAccentColor2); }
.SmallCard:nth-child(4n+3){border-left-width:var(--SmallCardAccentBorderSize); border-left-style:solid; border-left-color:var(--SmallCardAccentColor3); }
.SmallCard:nth-child(4n+4){border-left-width:var(--SmallCardAccentBorderSize); border-left-style:solid; border-left-color:var(--SmallCardAccentColor4); }
.SmallCardLeader{text-align:var(--SmallCardLeaderTextAlign); padding:var(--SmallCardLeaderPadding); background:var(--SmallCardLeaderBackgroundColor); border-radius:var(--SmallCardLeaderCurve); }
.SmallCardContent{align-self:var(--SmallCardContentAlignSelf); text-align:var(--SmallCardContentTextAlign); padding:var(--SmallCardContentPadding); overflow-y:var(--SmallCardContentOverflow); background:var(--SmallCardContentBackgroundColor); }
.SmallCardThumbnail{width:5vh; height:5vh; background-position:center; background-size:contain; background-repeat:no-repeat; }

.PhotoThumbnail{width:30.5vw; height:30.5vw; float:left; margin:0.25vh; border:var(--PhotoThumbnailBorderSize) solid var(--PhotoThumbnailBorderColor); background-size:cover; background-position:center; background-repeat:no-repeat; cursor:pointer; }
.MainWindowScroll{overflow-y:auto; overscroll-behavior:contain; }
.ContentRoundedText{padding:0.375vh 0.5vh; border-radius:0.75vh; background-color:var(--ContentRoundedTextBackgroundColor); }
.ContentPaddedText{padding:0.375vh 0vh; }
.ContentColorText{font-weight:700; color:var(--ContentColorTextColor); }
.ClearFloat{clear:both; height:0; }

.SubLayer{width:100vw; height:100%; position:absolute; top:0; background-color:var(--NotificationOverlayBackgroundColor); padding:var(--SubLayerPadding); }
.SubLayer.Light{background-color:var(--NotificationOverlayLightBackgroundColor); }
.SubWindow{--SubWindowWidth:calc(100% - var(--SubLayerPadding) - var(--SubLayerPadding)); width:var(--SubWindowWidth); position:absolute; border:var(--SubWindowBorderSize) solid var(--SubWindowBorderColor); border-radius:var(--SubWindowCurve); z-index:100; background-color:var(--SubWindowBackgroundColor); box-shadow:0.125vh 0.125vh 0.625vh var(--SubWindowShadowColor); }
.SubWindowTitlebar{height:var(--SubWindowTitlebarHeight); width:100%; line-height:var(--SubWindowTitlebarHeight); background-color:var(--SubWindowTitlebarBackgroundColor); color:var(--SubWindowTitlebarTextColor); border-radius:max(0vh, calc(var(--SubWindowCurve) - var(--SubWindowBorderSize))) max(0vh, calc(var(--SubWindowCurve) - var(--SubWindowBorderSize))) 0vh 0vh; padding:0vh 0.25vh; font-weight:800; }
.SubWindowBody{padding:var(--SubWindowBodyPadding); }
.SubWindowFooter{min-height:var(--SubWindowFooterHeight); text-align:center; padding:0.5vh 0vh; }

.NotificationOverlay{background-color:var(--NotificationOverlayBackgroundColor); position:fixed; top:0; left:0; bottom:0; right:0; z-index:200; justify-content:center; align-items:center; }
.Notification, .Confirmation, .LogicBranch, .ImagePreview, .FullView{z-index:400; }
.NotificationOverlay{display:none; }
.NotificationFooter{height:var(--SubWindowFooterHeight); padding:0.5vh; line-height:calc(var(--SubWindowFooterHeight) - 1vh); text-align:center; }
.LogicBranchFooter{height:auto; min-height:var(--SubWindowFooterHeight); }
.NotificationFooter button, .SubWindowFooter button{line-height:normal; vertical-align:middle; }
.NotificationWindow{width:98.5vw; min-height:20vh; max-height:350px; max-width:380px; border:var(--NotificationWindowBorderSize) solid var(--NotificationWindowBorderColor); border-radius:var(--NotificationWindowCurve); background:var(--NotificationWindowBackgroundColor); position:fixed; bottom:35vh; margin:0 calc((100vw - min(98.5vw, 380px)) / 2); }
.NotificationTitle{height:var(--SubWindowTitlebarHeight); width:100%; line-height:var(--SubWindowTitlebarHeight); background-color:var(--NotificationTitleBackgroundColor); color:var(--NotificationTitleTextColor); border-radius:max(0vh, calc(var(--NotificationWindowCurve) - var(--NotificationWindowBorderSize))) max(0vh, calc(var(--NotificationWindowCurve) - var(--NotificationWindowBorderSize))) 0vh 0vh; padding:0vh 0.25vh; font-weight:800; }
.NotificationTitleIconContainer{height:100%; float:right; line-height:calc(var(--SubWindowTitlebarHeight) + 1vh); }
.NotificationTitleIcon{width:3vh; height:3vh; padding:var(--MainWindowTitlebarIconPadding); border:0vh; color:var(--NotificationTitleTextColor); background-color:transparent; cursor:pointer; }
.NotificationTitleIconImage{width:100%; height:100%; display:block; color:inherit; fill:currentColor; object-fit:contain; }
.NotificationBody{height:11vh; padding:var(--NotificationBodyPadding); text-align:center; vertical-align:center; font-size:var(--NotificationTextHeight); }
.NotificationMessage{margin:4vh auto 0vh; }
.ImagePreviewWindow{width:94vw; height:72vh; max-width:900px; min-height:0vh; max-height:none; top:50%; bottom:auto; left:50%; margin:0vh; transform:translate(-50%, -50%); overflow:hidden; }
.ImagePreviewBody{height:calc(100% - var(--SubWindowTitlebarHeight) - var(--SubWindowFooterHeight)); padding:var(--ImagePreviewBodyPadding); display:flex; align-items:center; justify-content:center; background:var(--ImagePreviewBodyBackgroundColor); }
.ImagePreviewImage{display:block; max-width:100%; max-height:100%; object-fit:contain; }
.FullViewWindow{width:96vw; height:75vh; max-width:900px; min-height:0vh; max-height:none; top:50%; bottom:auto; left:50%; margin:0vh; transform:translate(-50%, -50%); overflow:hidden; }
.FullViewBody{height:calc(100% - var(--SubWindowTitlebarHeight) - var(--SubWindowFooterHeight)); padding:var(--FullViewBodyPadding); overflow-y:auto; text-align:left; font-size:inherit; }
.FullViewContent{width:100%; height:100%; }
.InlineSection{width:var(--InlineSectionWidth); height:var(--InlineSectionHeight); min-height:var(--InlineSectionMinHeight); padding:var(--InlineSectionPadding); border:var(--InlineSectionBorderSize) solid var(--InlineSectionBorderColor); border-radius:var(--InlineSectionCurve); }
.InlineSectionTitlebar{text-align:var(--InlineSectionTitlebarAlign); height:var(--InlineSectionTitlebarHeight); width:100%; line-height:var(--InlineSectionTitlebarHeight); background-color:var(--InlineSectionTitlebarBackgroundColor); color:var(--InlineSectionTitlebarTextColor); border-radius:var(--InlineSectionTitlebarCurve); padding:0vh 0.25vh; font-weight:800; font-size:var(--InlineSectionTitlebarTextHeight); }
.InlineSectionTitlebarFull{text-align:var(--InlineSectionTitlebarAlign); height:var(--InlineSectionTitlebarHeight); width:100%; line-height:var(--InlineSectionTitlebarHeight); background-color:var(--InlineSectionTitlebarBackgroundColor); color:var(--InlineSectionTitlebarTextColor); border-radius:var(--InlineSectionTitlebarCurve); padding:0vh 0.25vh; font-weight:800; font-size:var(--InlineSectionTitlebarTextHeight); }
.InlineSectionTitlebarColor{background-color:var(--InlineSectionTitlebarBackgroundColor); color:var(--InlineSectionTitlebarTextColor); }
.InlineSectionTitlebarAction{width:var(--InlineSectionTitlebarHeight); height:var(--InlineSectionTitlebarHeight); padding:var(--InlineSectionTitlebarActionPadding); border:0vh; float:right; background:transparent; color:inherit; cursor:pointer; }
.InlineSectionTitlebarActionImage{width:100%; height:100%; display:block; color:inherit; fill:currentColor; object-fit:contain; }
.InlineSectionBody{width:var(--InlineSectionBodyWidth); height:var(--InlineSectionBodyHeight); padding:var(--InlineSectionBodyPadding); border-radius:var(--InlineSectionBodyCurve); }
.InlineSectionBodyFull{width:var(--InlineSectionBodyWidth); height:var(--InlineSectionBodyHeight); padding:var(--InlineSectionBodyFullPadding); border-radius:var(--InlineSectionBodyCurve); }
.SplitCardStack{height:100%; min-height:0vh; display:flex; flex-direction:column; }
.TabBar.ResponsiveSplitCardTabs{display:none; }
.SplitCard{min-height:0vh; height:var(--SplitCardHeight); flex:var(--SplitCardFlex); display:var(--SplitCardDisplay); grid-template-columns:var(--SplitCardColumns); grid-template-rows:var(--SplitCardRows); gap:var(--SplitCardGap); overflow:hidden; border:var(--SplitCardBorderSize) solid var(--SplitCardBorderColor); background:var(--SplitCardBackgroundColor); }
.SplitCardRail{min-width:0vh; padding:var(--SplitCardRailPadding); overflow:var(--SplitCardRailOverflow); border-right:var(--SplitCardRailBorderSize) solid var(--SplitCardRailBorderColor); border-bottom:var(--SplitCardRailBottomBorderSize) solid var(--SplitCardRailBottomBorderColor); background:var(--SplitCardRailBackgroundColor); }
.SplitCardBody{min-width:0vh; min-height:0vh; display:var(--SplitCardBodyDisplay); flex-direction:var(--SplitCardBodyFlexDirection); overflow:var(--SplitCardBodyOverflow); background:var(--SplitCardBodyBackgroundColor); }
.SplitCardHeader{display:flex; align-items:center; justify-content:space-between; padding:var(--SplitCardHeaderPadding); border-bottom:var(--SplitCardHeaderBorderSize) solid var(--SplitCardHeaderBorderColor); }
.SplitCardHeaderActions{display:flex; align-items:center; gap:var(--SplitCardHeaderActionsGap); }
.ListCard{display:var(--ListCardDisplay); }
.ListCardGroup{padding-bottom:var(--ListCardGroupPadding); }
.ListCardGroupTitle{display:block; }
.ListCardItem{width:100%; display:flex; justify-content:space-between; padding:var(--ListCardItemPadding); border:0vh; background:var(--ListCardItemBackgroundColor); color:var(--ListCardItemColor); text-align:left; font-weight:var(--ListCardItemFontWeight); }
.ListCardItem.Active, .ListCardItem:hover{background:var(--ListCardItemActiveBackgroundColor); color:var(--ListCardItemActiveColor); }
.ListCardItemMeta{display:block; }
.ListCardEmpty{display:flex; }
.HeroCard{min-height:var(--HeroCardMinHeight); display:grid; grid-template-columns:var(--HeroCardColumns); align-items:center; gap:var(--HeroCardGap); padding:var(--HeroCardPadding); background:var(--HeroCardBackgroundColor); border-bottom:var(--HeroCardBorderSize) solid var(--HeroCardBorderColor); }
.HeroCardAvatar{--AvatarBorderSize:var(--HeroCardAvatarBorderSize); --AvatarBorderColor:var(--HeroCardAvatarBorderColor); --AvatarFontSize:var(--HeroCardAvatarFontSize); --AvatarFontWeight:var(--HeroCardAvatarFontWeight); }
.Avatar{width:var(--AvatarWidth, auto); height:var(--AvatarHeight, auto); display:grid; place-items:center; aspect-ratio:1; border:var(--AvatarBorderSize, 0vh) solid var(--AvatarBorderColor, transparent); background:var(--AvatarBackgroundColor, transparent); color:var(--AvatarTextColor, inherit); font-size:var(--AvatarFontSize, inherit); font-weight:var(--AvatarFontWeight, 950); }
.StatGrid{display:grid; grid-template-columns:var(--StatGridColumns, repeat(4, 1fr)); border-bottom:var(--StatGridBorderSize, 0vh) solid var(--StatGridBorderColor, transparent); }
.StatItem{padding:var(--StatItemPadding, 0vh); border-right:var(--StatItemBorderSize, 0vh) solid var(--StatItemBorderColor, transparent); }
.StatItemValue{display:block; font-size:var(--StatItemValueTextHeight, inherit); }
.StatItemLabel{display:block; padding-top:var(--StatItemLabelPadding, 0vh); color:var(--StatItemLabelColor, inherit); font-size:var(--StatItemLabelTextHeight, inherit); text-transform:var(--StatItemLabelTextTransform, none); }
.HeroCardContent{min-width:0vh; }
.HeroCardAside{min-width:0vh; }
.HeroCardActions{display:flex; align-items:center; }
.KickerCard{width:100%; display:flex; align-items:var(--KickerCardAlignItems); justify-content:var(--KickerCardJustifyContent); gap:var(--KickerCardGap); padding:var(--KickerCardPadding); }
.KickerCardHeading{min-width:0vh; }
.KickerCard .KickerCardKicker{padding-bottom:var(--KickerCardKickerPadding); }
.KickerCardActions{display:flex; align-items:center; gap:var(--KickerCardActionsGap); }
.StatusIndicator{display:flex; align-items:center; gap:var(--StatusIndicatorGap, 0.75vh); color:var(--StatusIndicatorColor, currentColor); font-size:var(--StatusIndicatorTextHeight, 1.125vh); font-weight:var(--StatusIndicatorTextWeight, 900); }
.StatusIndicator::before{content:""; display:inline-block; width:var(--StatusIndicatorDotSize, 0.875vh); height:var(--StatusIndicatorDotSize, 0.875vh); border-radius:50%; background:currentColor; box-shadow:0vh 0vh var(--StatusIndicatorGlowSize, 1.25vh) currentColor; }
.TabBar{display:flex; gap:var(--TabBarGap, 0.5vh); }
.Tab{width:auto; min-height:var(--TabMinHeight, 4.75vh); padding:var(--TabPadding, 0vh 2.5vh); border:var(--TabBorderSize, 0.125vh) solid var(--TabBorderColor, currentColor); background:var(--TabBackgroundColor, transparent); color:var(--TabTextColor, currentColor); font-size:var(--TabTextHeight, 1.25vh); font-weight:var(--TabTextWeight, 900); text-transform:uppercase; }
.Tab.Active{border-color:var(--TabActiveBorderColor, currentColor); background:var(--TabActiveBackgroundColor, transparent); color:var(--TabActiveTextColor, currentColor); }

.SixGrid{display:grid; grid-template-columns:repeat(6, 1fr); gap:1.75vh; }

@media screen and (max-width:800px){
  .SixGrid{grid-template-columns:1fr; }
  .TabBar.ResponsiveSplitCardTabs{display:flex; flex:none; padding-bottom:var(--ResponsiveSplitCardTabsPadding, 0vh); }
  .ResponsiveSplitCardTabs .Tab{flex:1; }
  .ResponsiveSplitCard{display:block; }
  .ResponsiveSplitCard > .TabPanel{height:100%; }
  .ResponsiveSplitCard > .TabPanel:not(.Active){display:none; }
}
.PositiveButton{width:auto; height:var(--ButtonHeight); min-height:var(--ButtonMinHeight); padding:var(--ButtonPadding); display:var(--ButtonDisplay); align-items:center; justify-content:center; gap:var(--ButtonGap); border-radius:var(--ButtonCurve); color:var(--ButtonTextColor); font-size:var(--ButtonTextHeight); font-weight:var(--ButtonTextWeight); text-transform:var(--ButtonTextTransform); cursor:pointer; border:var(--ButtonBorderSize) solid var(--PositiveButtonBorderColor); background:var(--PositiveButtonBackgroundColor); transition:var(--ButtonTransition); }
.NegativeButton{width:auto; height:var(--ButtonHeight); min-height:var(--ButtonMinHeight); padding:var(--ButtonPadding); display:var(--ButtonDisplay); align-items:center; justify-content:center; gap:var(--ButtonGap); border-radius:var(--ButtonCurve); color:var(--ButtonTextColor); font-size:var(--ButtonTextHeight); font-weight:var(--ButtonTextWeight); text-transform:var(--ButtonTextTransform); cursor:pointer; border:var(--ButtonBorderSize) solid var(--ButtonBorderColor); background:var(--NegativeButtonBackgroundColor); }
.NeutralButton{width:auto; height:var(--ButtonHeight); min-height:var(--ButtonMinHeight); padding:var(--ButtonPadding); display:var(--ButtonDisplay); align-items:center; justify-content:center; gap:var(--ButtonGap); border-radius:var(--ButtonCurve); color:var(--ButtonTextColor); font-size:var(--ButtonTextHeight); font-weight:var(--ButtonTextWeight); text-transform:var(--ButtonTextTransform); cursor:pointer; border:var(--ButtonBorderSize) solid var(--NeutralButtonBorderColor); background:var(--NeutralButtonBackgroundColor); }
.InputButton{width:auto; height:var(--ButtonHeight); min-height:var(--ButtonMinHeight); padding:var(--ButtonPadding); display:var(--ButtonDisplay); align-items:center; justify-content:center; gap:var(--ButtonGap); border-radius:var(--ButtonCurve); color:var(--ButtonTextColor); font-size:var(--ButtonTextHeight); font-weight:var(--ButtonTextWeight); text-transform:var(--ButtonTextTransform); cursor:pointer; border:var(--ButtonBorderSize) solid var(--ButtonBorderColor); background:var(--InputButtonBackgroundColor); }

.PositiveButton:hover{filter:var(--PositiveButtonHoverFilter); transform:var(--PositiveButtonHoverTransform); }
.PositiveButton:disabled{background:var(--ButtonDisabledBackgroundColor); color:var(--ButtonDisabledTextColor); cursor:default; transform:none; }
.NeutralButton:hover{border-color:var(--NeutralButtonHoverBorderColor); color:var(--NeutralButtonHoverTextColor); }
.PositiveButton.L, .NegativeButton.L, .NeutralButton.L, .InputButton.L{width:47%; }
.PositiveButton.XS, .NegativeButton.XS, .NeutralButton.XS{width:9vw; }
.PositiveButton.M, .NegativeButton.M, .NeutralButton.M, .InputButton.M{width:31%; }
.PositiveButton.S, .NegativeButton.S, .NeutralButton.S, .InputButton.S{width:24%; }
.InputButton input[type="text"], .InputButton input[type="date"], .InputButton input[type="number"], .InputButton select{width:90%; }

.InputField{width:100%; padding:0.5vh; border:var(--InputFieldBorderSize) solid var(--InputFieldBorderColor); border-radius:var(--InputFieldCurve); }
.InputField.S input[type="text"], .InputField.S input[type="date"], .InputField.S input[type="number"], .InputField.S select{width:33%; }
.InputField.M input[type="text"], .InputField.M input[type="date"], .InputField.M input[type="number"], .InputField.M select{width:49%; }
.InputField.L input[type="text"], .InputField.L input[type="date"], .InputField.L input[type="number"], .InputField.L select{width:90%; }
.InputField.XL input[type="text"], .InputField.XL input[type="date"], .InputField.XL input[type="number"], .InputField.XL select{width:100%; }

@media screen and (min-width:500px){
  /* ===== 1. CORE STRUCTURAL BASIS OVERRIDES ===== */
  .Logo{border-width:var(--LogoBorderSize500); }
  .MainLayer{padding:var(--MainLayerPadding500); }
  .MainWindow{border-width:var(--MainWindowBorderSize500); border-radius:var(--MainWindowCurve500); }
  .MainWindowTitlebar{border-radius:max(0vh, calc(var(--MainWindowCurve500) - var(--MainWindowBorderSize500))) max(0vh, calc(var(--MainWindowCurve500) - var(--MainWindowBorderSize500))) 0vh 0vh; padding:var(--MainWindowTitlebarPadding); }
  .MainCard{border-radius:var(--MainCardCurve500); }
  .BigCard{border-radius:var(--BigCardCurve500); }
  .SmallCard{border-radius:var(--SmallCardCurve500); }

  /* ===== 2. CONTENT CONTAINER EXTENSIONS ===== */
  .MainWindowBody{height:var(--MainWindowBodyHeight500); padding:var(--MainWindowBodyPadding500); }
  .MainWindowFooter{height:var(--MainWindowFooterHeight500); border-radius:0vh 0vh max(0vh, calc(var(--MainWindowCurve500) - var(--MainWindowBorderSize500))) max(0vh, calc(var(--MainWindowCurve500) - var(--MainWindowBorderSize500))); }
  /* .MainWindowStaticControl{padding:0.125vh 0 0.375vh 0; } */

  /* ===== 3. POPUP MODALS & SUB-WINDOW CLUSTERS ===== */
  .SubLayer{padding:var(--SubLayerPadding500); }
  .SubWindow{--SubWindowWidth:calc(100% - var(--SubLayerPadding500) - var(--SubLayerPadding500)); border-width:var(--SubWindowBorderSize500); border-radius:var(--SubWindowCurve500); box-shadow:0.0625vh 0.0625vh 0.3125vh var(--SubWindowShadowColor); }
  .SubWindowTitlebar{border-radius:max(0vh, calc(var(--SubWindowCurve500) - var(--SubWindowBorderSize500))) max(0vh, calc(var(--SubWindowCurve500) - var(--SubWindowBorderSize500))) 0vh 0vh; padding:0vh 0.125vh; }
  .SubWindowBody{padding:var(--SubWindowBodyPadding500); }
  .CompactSubWindow{--SubWindowWidth:420px; margin:0px calc((100vw - var(--SubWindowWidth)) / 2); }

  /* ===== 4. SYSTEM NOTIFICATION OVERLAYS ===== */
  .NotificationWindow{max-width:400px; border-width:var(--NotificationWindowBorderSize500); border-radius:var(--NotificationWindowCurve500); margin:0 calc((100vw - 400px) / 2); }
  .NotificationTitle{border-radius:max(0vh, calc(var(--NotificationWindowCurve500) - var(--NotificationWindowBorderSize500))) max(0vh, calc(var(--NotificationWindowCurve500) - var(--NotificationWindowBorderSize500))) 0vh 0vh; padding:0vh 0.125vh; }
  .NotificationBody{padding:var(--NotificationBodyPadding500); }

  /* ===== 5. FORM LAYOUT CONTROLS & COMPONENT SIZING ===== */
  .InlineSectionTitlebar{padding:0vh 0.125vh; }
  .PositiveButton, .NegativeButton, .NeutralButton, .InputButton{padding:var(--ButtonPadding500); border-width:var(--ButtonBorderSize500); }
}

.NotificationDesktop{position:fixed; overflow:hidden; pointer-events:none; }
.PrivateChatWindow{position:absolute; top:calc(50% + var(--PrivateChatOffset, 0vh)); bottom:auto; left:calc(50% + var(--PrivateChatOffset, 0vh)); width:var(--PrivateChatWidth); min-height:0vh; height:var(--PrivateChatHeight); max-width:none; max-height:none; margin:0vh; display:grid; grid-template-rows:var(--SubWindowTitlebarHeight) minmax(0vh, 1fr) auto; transform:translate(-50%, -50%); overflow:hidden; pointer-events:auto; color:var(--ApplicationTextColor); box-shadow:var(--PrivateChatWindowShadow); }
.PrivateChatTitlebar{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; cursor:move; }
.PrivateChatMessages{height:auto; min-height:0vh; padding:1vh; overflow:auto; overscroll-behavior:contain; touch-action:pan-y; text-align:left; font-size:inherit; background:var(--NotificationWindowBackgroundColor); }
.PrivateChatMessage{padding:1vh; border-bottom:0.125vh solid var(--PrivateChatMessageBorderColor); background:var(--PrivateChatMessageBackgroundColor); }
.PrivateChatMessage.OwnMessage{background:var(--PrivateChatOwnMessageBackgroundColor); }
.PrivateChatMessageMeta{display:flex; gap:1vh; align-items:center; }
.PrivateChatMessageAuthor{color:var(--PrivateChatAuthorColor); }
.PrivateChatMessage.OwnMessage .PrivateChatMessageAuthor{color:var(--PrivateChatOwnAuthorColor); }
.PrivateChatMessageMeta span{color:var(--SupportingTextColor); font-size:1vh; }
.PrivateChatMessage p{padding-top:0.5vh; overflow-wrap:anywhere; }
.PrivateChatComposer{height:auto; min-height:var(--SubWindowFooterHeight); padding:1vh; line-height:normal; text-align:initial; background:var(--PrivateChatFooterBackgroundColor); }
.PrivateChatForm{display:grid; grid-template-columns:minmax(0vh, 1fr) auto; gap:1vh; }
.PrivateChatField{min-width:0vh; padding:1vh; border:0.125vh solid var(--PrivateChatFieldBorderColor); border-radius:var(--InputFieldCurve); outline:0vh; background:var(--PrivateChatFieldBackgroundColor); color:var(--PrivateChatFieldTextColor); }
.PrivateChatForm .PositiveButton{width:auto; }
.PrivateChatWindow.Minimized{top:auto; right:auto; bottom:0vh; left:calc(var(--PrivateChatMinimizedIndex, 0) * min(30vh, 48vw)); width:min(30vh, 48vw); height:var(--SubWindowTitlebarHeight); display:block; transform:none; }
.PrivateChatWindow.Minimized .PrivateChatMessages, .PrivateChatWindow.Minimized .PrivateChatComposer{display:none; }
.PrivateChatWindow.Minimized .PrivateChatAlign{display:none; }
