/* myBudgie v1.1.27: Premium Hero Polish, Premium Entry, Floating Actions & Production Cleanup */

:root{
  --floating-action-dock-height:72px;
  --floating-action-dock-gap:10px;
}

.topbar > div:first-of-type{
  inline-size:min(100%,640px)!important;
  transform:translateY(-6px)!important;
}

.hero-brand-lockup{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:clamp(5px,1.15vw,8px)!important;
  transform:translateY(0)!important;
}

.hero-brand-budgie{
  block-size:clamp(38px,7.8vw,56px)!important;
  max-inline-size:clamp(42px,8.8vw,62px)!important;
  transform:translateY(1px)!important;
  filter:drop-shadow(0 6px 10px rgba(0,0,0,.16))!important;
}

.hero-brand-name,
.topbar .subtitle{
  --brand-base-a:rgba(31,46,58,.95);
  --brand-base-b:rgba(54,72,86,.9);
  --brand-soft:color-mix(in srgb,var(--accent),var(--brand-base-a) 78%);
  --brand-warm:color-mix(in srgb,var(--accent),#9fb0bc 42%);
  --brand-light:color-mix(in srgb,var(--accent),#c6d3db 55%);
  background-repeat:no-repeat!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
}

.hero-brand-name{
  font-size:clamp(33px,8.2vw,58px)!important;
  background-image:
    radial-gradient(118% 88% at 18% 34%, color-mix(in srgb,var(--brand-light),transparent 66%) 0 19%, transparent 47%),
    radial-gradient(96% 80% at 76% 66%, color-mix(in srgb,var(--brand-soft),transparent 58%) 0 18%, transparent 49%),
    radial-gradient(72% 62% at 50% 44%, color-mix(in srgb,var(--brand-warm),transparent 68%) 0 16%, transparent 44%),
    linear-gradient(118deg, var(--brand-base-a) 0%, var(--brand-base-b) 36%, color-mix(in srgb,var(--brand-soft),var(--brand-base-b) 48%) 62%, var(--brand-base-a) 100%)!important;
  background-size:224% 174%, 184% 162%, 154% 136%, 100% 100%!important;
  background-position:18% 42%, 80% 58%, 44% 52%, 0 0!important;
  animation:brandAmbientPrimaryPremium 31s cubic-bezier(.45,.02,.25,1) infinite!important;
  text-shadow:0 1px 2px rgba(255,255,255,.06),0 5px 12px rgba(0,0,0,.14)!important;
}

html[data-theme="dark"] .hero-brand-name,
html[data-theme="light"] .hero-brand-name{
  background-image:
    radial-gradient(118% 88% at 18% 34%, color-mix(in srgb,var(--brand-light),transparent 66%) 0 19%, transparent 47%),
    radial-gradient(96% 80% at 76% 66%, color-mix(in srgb,var(--brand-soft),transparent 58%) 0 18%, transparent 49%),
    radial-gradient(72% 62% at 50% 44%, color-mix(in srgb,var(--brand-warm),transparent 68%) 0 16%, transparent 44%),
    linear-gradient(118deg, var(--brand-base-a) 0%, var(--brand-base-b) 36%, color-mix(in srgb,var(--brand-soft),var(--brand-base-b) 48%) 62%, var(--brand-base-a) 100%)!important;
  background-size:224% 174%, 184% 162%, 154% 136%, 100% 100%!important;
  background-position:18% 42%, 80% 58%, 44% 52%, 0 0!important;
  animation:brandAmbientPrimaryPremium 31s cubic-bezier(.45,.02,.25,1) infinite!important;
}

.topbar .subtitle{
  display:block!important;
  max-inline-size:min(29.5rem,calc(100vw - 48px))!important;
  margin-block-start:clamp(5px,.95vw,8px)!important;
  background-image:
    radial-gradient(138% 94% at 74% 38%, color-mix(in srgb,var(--brand-light),transparent 76%) 0 18%, transparent 52%),
    radial-gradient(114% 90% at 20% 70%, color-mix(in srgb,var(--brand-soft),transparent 72%) 0 16%, transparent 50%),
    radial-gradient(86% 76% at 52% 42%, color-mix(in srgb,var(--brand-warm),transparent 78%) 0 15%, transparent 46%),
    linear-gradient(118deg, var(--brand-base-a) 0%, var(--brand-base-b) 36%, color-mix(in srgb,var(--brand-soft),var(--brand-base-b) 56%) 62%, var(--brand-base-a) 100%)!important;
  background-size:258% 198%, 224% 180%, 182% 154%, 100% 100%!important;
  background-position:76% 42%, 19% 66%, 54% 44%, 0 0!important;
  animation:brandAmbientSubtitlePremium 47s cubic-bezier(.42,.01,.24,1) infinite!important;
  text-shadow:0 1px 2px rgba(255,255,255,.12),0 3px 7px rgba(0,0,0,.11)!important;
}

.topbar>div:first-of-type h1.hero-brand-lockup{
  display:flex!important;
}

html[data-theme="dark"] .topbar .subtitle,
html[data-theme="light"] .topbar .subtitle{
  background-image:
    radial-gradient(138% 94% at 74% 38%, color-mix(in srgb,var(--brand-light),transparent 76%) 0 18%, transparent 52%),
    radial-gradient(114% 90% at 20% 70%, color-mix(in srgb,var(--brand-soft),transparent 72%) 0 16%, transparent 50%),
    radial-gradient(86% 76% at 52% 42%, color-mix(in srgb,var(--brand-warm),transparent 78%) 0 15%, transparent 46%),
    linear-gradient(118deg, var(--brand-base-a) 0%, var(--brand-base-b) 36%, color-mix(in srgb,var(--brand-soft),var(--brand-base-b) 56%) 62%, var(--brand-base-a) 100%)!important;
  background-size:258% 198%, 224% 180%, 182% 154%, 100% 100%!important;
  background-position:76% 42%, 19% 66%, 54% 44%, 0 0!important;
  animation:brandAmbientSubtitlePremium 47s cubic-bezier(.42,.01,.24,1) infinite!important;
}

.topbar .kicker{
  margin-block-start:clamp(5px,.8vw,7px)!important;
  opacity:.68!important;
  font-size:clamp(11px,2.55vw,13px)!important;
  text-shadow:0 1px 4px rgba(0,0,0,.12)!important;
}

html[data-theme="dark"] .hero-brand-name,
html[data-theme="dark"] .topbar .subtitle{
  --brand-base-a:rgba(180,194,205,.88);
  --brand-base-b:rgba(126,144,158,.86);
  --brand-soft:color-mix(in srgb,var(--accent),#9aacb7 42%);
  --brand-warm:color-mix(in srgb,var(--accent),#c4d1d8 34%);
  --brand-light:color-mix(in srgb,var(--accent),#dce7ec 34%);
}

html[data-theme="light"] .hero-brand-name,
html[data-theme="light"] .topbar .subtitle{
  --brand-base-a:rgba(18,34,48,.97);
  --brand-base-b:rgba(45,64,78,.93);
  --brand-soft:color-mix(in srgb,var(--accent),#27475a 48%);
  --brand-warm:color-mix(in srgb,var(--accent),#637d8d 34%);
  --brand-light:color-mix(in srgb,var(--accent),#8fa4b0 24%);
  text-shadow:0 1px 2px rgba(255,255,255,.22),0 3px 7px rgba(0,0,0,.08)!important;
}

@keyframes brandAmbientPrimaryPremium{
  0%{background-position:18% 42%,80% 58%,44% 52%,0 0;background-size:224% 174%,184% 162%,154% 136%,100% 100%}
  13%{background-position:29% 37%,72% 68%,52% 45%,0 0;background-size:232% 180%,190% 154%,148% 144%,100% 100%}
  31%{background-position:22% 62%,84% 48%,38% 60%,0 0;background-size:216% 166%,202% 170%,160% 132%,100% 100%}
  49%{background-position:46% 45%,62% 36%,58% 48%,0 0;background-size:238% 176%,178% 166%,152% 140%,100% 100%}
  71%{background-position:36% 30%,70% 64%,48% 66%,0 0;background-size:220% 184%,196% 158%,166% 130%,100% 100%}
  88%{background-position:24% 52%,86% 42%,62% 38%,0 0;background-size:230% 170%,186% 174%,150% 146%,100% 100%}
  100%{background-position:18% 42%,80% 58%,44% 52%,0 0;background-size:224% 174%,184% 162%,154% 136%,100% 100%}
}

@keyframes brandAmbientSubtitlePremium{
  0%{background-position:76% 42%,19% 66%,54% 44%,0 0;background-size:258% 198%,224% 180%,182% 154%,100% 100%}
  17%{background-position:66% 58%,28% 54%,48% 60%,0 0;background-size:246% 188%,236% 190%,174% 164%,100% 100%}
  39%{background-position:84% 62%,16% 40%,62% 38%,0 0;background-size:266% 204%,214% 170%,190% 148%,100% 100%}
  57%{background-position:70% 34%,34% 68%,42% 52%,0 0;background-size:252% 194%,230% 184%,178% 160%,100% 100%}
  78%{background-position:82% 50%,12% 58%,58% 66%,0 0;background-size:260% 188%,220% 194%,186% 152%,100% 100%}
  100%{background-position:76% 42%,19% 66%,54% 44%,0 0;background-size:258% 198%,224% 180%,182% 154%,100% 100%}
}

.app-launch-screen{
  background:
    radial-gradient(circle at 50% 42%, color-mix(in srgb,var(--accent),transparent 88%), transparent 34%),
    linear-gradient(180deg,#f4f7f8 0%,#e9eef2 100%)!important;
}

html[data-theme="dark"] .app-launch-screen{
  background:
    radial-gradient(circle at 50% 42%, color-mix(in srgb,var(--accent),transparent 84%), transparent 36%),
    linear-gradient(180deg,#0b0f14 0%,#111b24 100%)!important;
}

.launch-card{
  gap:10px!important;
}

.launch-budgie{
  width:clamp(176px,42vw,284px)!important;
  filter:drop-shadow(0 14px 22px rgba(5,12,18,.14))!important;
}

html[data-theme="dark"] .launch-budgie{
  filter:drop-shadow(0 16px 24px rgba(0,0,0,.24))!important;
}

.launch-card i{
  opacity:.48!important;
  animation:launchPulse 1300ms ease-in-out infinite alternate!important;
}

body[data-active-view="home"] main{
  padding-bottom:calc(var(--floating-action-dock-height) + 116px + env(safe-area-inset-bottom))!important;
}

.home-action-group{
  position:fixed!important;
  z-index:70!important;
  inset-inline:clamp(10px,3.5vw,28px)!important;
  inset-block-end:calc(14px + env(safe-area-inset-bottom))!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:var(--floating-action-dock-gap)!important;
  max-inline-size:min(520px,calc(100vw - 20px))!important;
  margin-inline:auto!important;
  margin-block:0!important;
  padding:10px!important;
  border:1px solid color-mix(in srgb,var(--accent),var(--color-border) 62%)!important;
  border-radius:24px!important;
  background:color-mix(in srgb,var(--color-card),transparent 10%)!important;
  box-shadow:0 16px 38px rgba(8,18,30,.18), inset 0 1px 0 rgba(255,255,255,.18)!important;
  backdrop-filter:blur(16px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(16px) saturate(1.08)!important;
}

html[data-theme="dark"] .home-action-group{
  background:color-mix(in srgb,var(--app-card),transparent 14%)!important;
  border-color:color-mix(in srgb,var(--accent),var(--app-border) 56%)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08)!important;
}

.home-action-group .quick-card,
.home-action-group .quick-card.secondary-quick{
  min-height:52px!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-areas:"icon title"!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px 10px!important;
  border-radius:16px!important;
  box-shadow:none!important;
}

.home-action-group .quick-card span{
  width:32px!important;
  height:32px!important;
  font-size:18px!important;
}

.home-action-group .quick-card strong{
  font-size:14px!important;
  line-height:1.1!important;
}

.home-action-group .quick-card small,
.home-action-group .quick-card.secondary-quick::after{
  display:none!important;
}

.home-action-group .quick-card:active{
  transform:none!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 72%)!important;
}

@media (max-width:380px){
  .home-action-group{
    gap:7px!important;
    padding:8px!important;
    border-radius:20px!important;
  }
  .home-action-group .quick-card,
  .home-action-group .quick-card.secondary-quick{
    padding:7px 8px!important;
  }
  .home-action-group .quick-card span{
    width:28px!important;
    height:28px!important;
  }
  .home-action-group .quick-card strong{
    font-size:13px!important;
  }
}

@media (orientation:landscape) and (max-height:540px){
  .topbar > div:first-of-type{
    transform:translateY(-2px)!important;
  }
  body[data-active-view="home"] main{
    padding-bottom:calc(var(--floating-action-dock-height) + 72px + env(safe-area-inset-bottom))!important;
  }
  .home-action-group{
    max-inline-size:460px!important;
    padding:8px!important;
  }
  .home-action-group .quick-card,
  .home-action-group .quick-card.secondary-quick{
    min-height:46px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-brand-name,
  .topbar .subtitle{
    animation:none!important;
  }
  .launch-card i{
    animation:none!important;
  }
}

/* Final Hero correction: right-aligned brand group, lower month navigation, calmer internal lighting. */
.topbar{
  min-block-size:clamp(392px,56vh,520px)!important;
  align-content:start!important;
  padding-block-start:clamp(34px,5.6vh,58px)!important;
}

.topbar > div:first-of-type{
  inline-size:min(640px,calc(100% - 32px))!important;
  justify-items:start!important;
  margin-inline-start:auto!important;
  margin-inline-end:clamp(16px,6vw,72px)!important;
  transform:translateY(-2px)!important;
}

.hero-brand-lockup,
.topbar>div:first-of-type h1.hero-brand-lockup{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:clamp(5px,1.1vw,8px)!important;
  margin-inline-start:0!important;
  margin-inline-end:auto!important;
  justify-self:start!important;
}

.hero-brand-name,
.topbar .subtitle{
  --brand-base-a:rgba(31,46,58,.95);
  --brand-base-b:rgba(54,72,86,.9);
  --brand-soft:color-mix(in srgb,var(--accent),var(--brand-base-a) 84%);
  --brand-warm:color-mix(in srgb,var(--accent),#a8b6c0 54%);
  --brand-light:color-mix(in srgb,var(--accent),#cbd6dd 68%);
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
}

.hero-brand-name,
html[data-theme="dark"] .hero-brand-name,
html[data-theme="light"] .hero-brand-name{
  background-image:
    radial-gradient(118% 88% at 18% 34%, color-mix(in srgb,var(--brand-light),transparent 78%) 0 19%, transparent 49%),
    radial-gradient(96% 80% at 76% 66%, color-mix(in srgb,var(--brand-soft),transparent 70%) 0 18%, transparent 51%),
    radial-gradient(72% 62% at 50% 44%, color-mix(in srgb,var(--brand-warm),transparent 78%) 0 16%, transparent 46%),
    linear-gradient(118deg,var(--brand-base-a) 0%,var(--brand-base-b) 36%,color-mix(in srgb,var(--brand-soft),var(--brand-base-b) 58%) 62%,var(--brand-base-a) 100%)!important;
  background-size:224% 174%,184% 162%,154% 136%,100% 100%!important;
  background-position:18% 42%,80% 58%,44% 52%,0 0!important;
  animation:brandAmbientPrimaryPremium 37s cubic-bezier(.45,.02,.25,1) infinite!important;
  text-shadow:0 1px 2px rgba(255,255,255,.05),0 4px 10px rgba(0,0,0,.12)!important;
}

.topbar .subtitle,
html[data-theme="dark"] .topbar .subtitle,
html[data-theme="light"] .topbar .subtitle{
  display:block!important;
  margin-inline-start:0!important;
  margin-inline-end:auto!important;
  justify-self:start!important;
  text-align:right!important;
  background-image:
    radial-gradient(138% 94% at 74% 38%, color-mix(in srgb,var(--brand-light),transparent 84%) 0 18%, transparent 54%),
    radial-gradient(114% 90% at 20% 70%, color-mix(in srgb,var(--brand-soft),transparent 80%) 0 16%, transparent 52%),
    radial-gradient(86% 76% at 52% 42%, color-mix(in srgb,var(--brand-warm),transparent 86%) 0 15%, transparent 48%),
    linear-gradient(118deg,var(--brand-base-a) 0%,var(--brand-base-b) 36%,color-mix(in srgb,var(--brand-soft),var(--brand-base-b) 66%) 62%,var(--brand-base-a) 100%)!important;
  background-size:258% 198%,224% 180%,182% 154%,100% 100%!important;
  background-position:76% 42%,19% 66%,54% 44%,0 0!important;
  animation:brandAmbientSubtitlePremium 53s cubic-bezier(.42,.01,.24,1) infinite!important;
  text-shadow:0 1px 2px rgba(255,255,255,.1),0 2px 6px rgba(0,0,0,.1)!important;
}

.topbar .kicker{
  justify-self:start!important;
}

html[data-theme="dark"] .hero-brand-name,
html[data-theme="dark"] .topbar .subtitle{
  --brand-base-a:rgba(180,194,205,.88);
  --brand-base-b:rgba(126,144,158,.86);
  --brand-soft:color-mix(in srgb,var(--accent),#a2b1ba 54%);
  --brand-warm:color-mix(in srgb,var(--accent),#c9d4da 48%);
  --brand-light:color-mix(in srgb,var(--accent),#dfe7eb 48%);
}

.topbar-tools{
  margin-block-start:clamp(70px,12vh,126px)!important;
}

@media (max-width:430px){
  .topbar > div:first-of-type{
    inline-size:calc(100% - 28px)!important;
    margin-inline-end:14px!important;
  }
  .hero-brand-name{
    font-size:clamp(29px,9.4vw,38px)!important;
  }
  .hero-brand-budgie{
    block-size:clamp(34px,9.4vw,42px)!important;
    max-inline-size:clamp(36px,10vw,46px)!important;
  }
  .topbar .subtitle{
    max-inline-size:min(20rem,calc(100vw - 54px))!important;
    font-size:clamp(11px,3.15vw,13px)!important;
  }
  .topbar-tools{
    margin-block-start:clamp(72px,13vh,108px)!important;
  }
}

@media (max-width:340px){
  .hero-brand-name{
    font-size:28px!important;
  }
  .hero-brand-budgie{
    block-size:32px!important;
    max-inline-size:36px!important;
  }
  .topbar .subtitle{
    max-inline-size:calc(100vw - 48px)!important;
    font-size:11px!important;
  }
}

@media (orientation:landscape) and (max-height:540px){
  .topbar{
    min-block-size:330px!important;
    padding-block-start:24px!important;
  }
  .topbar-tools{
    margin-block-start:52px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-brand-name,
  html[data-theme="dark"] .hero-brand-name,
  html[data-theme="light"] .hero-brand-name,
  .topbar .subtitle,
  html[data-theme="dark"] .topbar .subtitle,
  html[data-theme="light"] .topbar .subtitle{
    animation:none!important;
  }
}
