@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&family=UnifrakturMaguntia&family=Merriweather:ital,wght@0,400;0,700;1,400&display=swap');

/*
  Este ficheiro é a fonte controlada pelo PostCSS/Tailwind.
  Edite aqui as regras personalizadas e execute `npm run build:css`
  ou `npm run watch:css` para gerar o `public/css/style.css`.
*/

/*
  Define as variáveis de cor padrão para o tema escuro.
*/

:root,
:root[data-admin-theme='dark'],
body[data-admin-theme='dark'],
:root[data-theme='dark'],
body[data-theme='dark'],
:root[data-theme-preset='dark'],
body[data-theme-preset='dark'],
.admin-theme-dark {
  --md-sys-color-primary: 255 0 85;
  --md-sys-color-secondary: 44 44 44;
  --md-sys-color-tertiary: 255 255 255;
  --md-sys-color-surface: 26 26 26;
  --md-sys-color-error: 220 38 38;
  --md-sys-color-on-primary: 255 255 255;
  --md-sys-color-on-secondary: 255 255 255;
  --md-sys-color-outline: 156 163 175;
  --theme-font-sans: 'Montserrat';
  --theme-font-display: 'UnifrakturMaguntia';
  --color-primary: 26 26 26; /* #1a1a1a */
  --color-secondary: 44 44 44; /* #2c2c2c */
  --color-accent: 255 0 85; /* #ff0055 */
  --color-light-text: 224 224 224; /* #e0e0e0 */
  --color-light-text-alpha: 1;
  --color-primary-role: 255 0 85;
  --color-surface: 26 26 26;
  --color-tertiary-text: 224 224 224;
  --color-tertiary-text-alpha: 1;
  --color-error: 220 38 38;
  --color-text-shadow: rgba(255, 0, 85, 0.35);
  --admin-card-surface: 26 26 26;
  --admin-card-border: 55 65 81;
  --admin-muted-text: 156 163 175;
  --selection-bg-rgb: 255 0 85;
  --selection-text-rgb: 255 255 255;
  --selection-bg-alpha: 0.42;
}

:root[data-admin-theme='light'],
body[data-admin-theme='light'],
:root[data-theme='light'],
body[data-theme='light'],
:root[data-theme-preset='light'],
body[data-theme-preset='light'],
.admin-theme-light {
  --md-sys-color-primary: 219 39 119;
  --md-sys-color-secondary: 245 248 252;
  --md-sys-color-tertiary: 51 65 85;
  --md-sys-color-surface: 244 247 249;
  --md-sys-color-error: 239 68 68;
  --md-sys-color-on-primary: 255 255 255;
  --md-sys-color-on-secondary: 51 65 85;
  --md-sys-color-outline: 148 163 184;
  --theme-font-sans: 'Montserrat';
  --theme-font-display: 'UnifrakturMaguntia';
  --color-primary: 244 247 249; /* #f4f7f9 */
  --color-secondary: 245 248 252; /* #f5f8fc */
  --color-accent: 219 39 119; /* #db2777 */
  --color-light-text: 51 65 85; /* #334155 */
  --color-light-text-alpha: 1;
  --color-primary-role: 219 39 119;
  --color-surface: 244 247 249;
  --color-tertiary-text: 51 65 85;
  --color-tertiary-text-alpha: 1;
  --color-error: 239 68 68;
  --color-text-shadow: rgba(15, 23, 42, 0.25);
  --admin-card-surface: 252 253 255;
  --admin-card-border: 203 213 225;
  --admin-muted-text: 100 116 139;
  --selection-bg-rgb: 219 39 119;
  --selection-text-rgb: 255 255 255;
  --selection-bg-alpha: 0.3;
}

:root[data-admin-theme='hello-kitty'],
body[data-admin-theme='hello-kitty'],
:root[data-theme='hello-kitty'],
body[data-theme='hello-kitty'],
:root[data-theme-preset='hello-kitty'],
body[data-theme-preset='hello-kitty'],
.admin-theme-hello-kitty {
  --md-sys-color-primary: 255 105 180;
  --md-sys-color-secondary: 255 240 245;
  --md-sys-color-tertiary: 216 27 96;
  --md-sys-color-surface: 255 255 255;
  --md-sys-color-error: 255 0 0;
  --md-sys-color-on-primary: 255 255 255;
  --md-sys-color-on-secondary: 216 27 96;
  --md-sys-color-outline: 251 182 206;
  --theme-font-sans: 'Sniglet';
  --theme-font-display: 'Sniglet';
  --color-primary: 255 240 245; /* #fff0f5 */
  --color-secondary: 255 228 225; /* #ffe4e1 */
  --color-accent: 255 105 180; /* #ff69b4 */
  --color-light-text: 92 75 81; /* #5c4b51 */
  --color-light-text-alpha: 1;
  --color-primary-role: 255 105 180;
  --color-surface: 255 240 245;
  --color-tertiary-text: 92 75 81;
  --color-tertiary-text-alpha: 1;
  --color-error: 255 0 0;
  --color-text-shadow: rgba(216, 27, 96, 0.35);
  --admin-card-surface: 255 247 250;
  --admin-card-border: 251 182 206;
  --admin-muted-text: 143 95 122;
  --selection-bg-rgb: 255 105 180;
  --selection-text-rgb: 255 255 255;
  --selection-bg-alpha: 0.38;
}

::-moz-selection {
  background: rgb(var(--selection-bg-rgb) / var(--selection-bg-alpha, 0.36));
  color: rgb(var(--selection-text-rgb) / 1);
}

::selection {
  background: rgb(var(--selection-bg-rgb) / var(--selection-bg-alpha, 0.36));
  color: rgb(var(--selection-text-rgb) / 1);
}

::-moz-selection {
  background: rgb(var(--selection-bg-rgb) / var(--selection-bg-alpha, 0.36));
  color: rgb(var(--selection-text-rgb) / 1);
}

body[data-admin-theme='hello-kitty'],
body[data-theme='hello-kitty'],
body[data-theme-preset='hello-kitty'] {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23ff69b4' d='M12 21c-.3 0-.6-.1-.8-.3C4.8 15.2 2 12.7 2 8.9C2 5.9 4.3 4 6.8 4c1.8 0 3.4.9 4.2 2.3C11.8 4.9 13.4 4 15.2 4C17.7 4 20 5.9 20 8.9c0 3.8-2.8 6.3-9.2 11.8-.2.2-.5.3-.8.3z'/%3E%3C/svg%3E") 8 8, auto;
}

body[data-admin-theme='hello-kitty'] button,
body[data-admin-theme='hello-kitty'] input[type='button'],
body[data-admin-theme='hello-kitty'] input[type='submit'],
body[data-admin-theme='hello-kitty'] input[type='reset'],
body[data-theme='hello-kitty'] button,
body[data-theme='hello-kitty'] input[type='button'],
body[data-theme='hello-kitty'] input[type='submit'],
body[data-theme='hello-kitty'] input[type='reset'],
body[data-theme-preset='hello-kitty'] button,
body[data-theme-preset='hello-kitty'] input[type='button'],
body[data-theme-preset='hello-kitty'] input[type='submit'],
body[data-theme-preset='hello-kitty'] input[type='reset'] {
  border-radius: 1rem;
}

body[data-admin-theme='hello-kitty'] .admin-card,
body[data-admin-theme='hello-kitty'] [class*='card'],
body[data-theme='hello-kitty'] [class*='card'],
body[data-theme-preset='hello-kitty'] [class*='card'] {
  box-shadow: 0 8px 0 0 rgba(255, 105, 180, 0.2);
}

body[data-admin-theme='hello-kitty'] #dashboard-screen,
body[data-theme='hello-kitty'] main,
body[data-theme-preset='hello-kitty'] main {
  background-image:
    radial-gradient(circle at 6px 6px, rgba(255, 105, 180, 0.24) 2px, transparent 2.8px),
    radial-gradient(circle at 18px 18px, rgba(255, 182, 193, 0.22) 2px, transparent 2.8px);
  background-size: 24px 24px;
}

#gothic-vine-canvas {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: -1;
  display: none;
}

body.js-disabled main,
body.js-disabled footer,
body.js-disabled #gallery-modal,
body.js-disabled #gothic-vine-canvas,
body.js-disabled [data-js-protected] {
  display: none !important;
}

.anti-capture-active {
  overflow: hidden !important;
}

.age-gate-active {
  overflow: hidden !important;
}

.noscript-warning {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 1rem 1.5rem;
  background: rgb(var(--color-secondary) / 0.95);
  color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.screenshot-alert::before,
body.screenshot-alert::after {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  opacity: 0;
  animation-duration: 2.75s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}

body.screenshot-alert::before {
  content: '';
  background: radial-gradient(circle at center, rgb(var(--color-secondary) / 0.9), rgb(var(--color-primary) / 0.98));
  backdrop-filter: blur(3px);
  animation-name: screenshotAlertBackdrop;
}

body.screenshot-alert::after {
  content: '⚠️ Captura bloqueada';
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
  font-size: clamp(1.1rem, 2vw + 0.5rem, 2.25rem);
  padding: 2rem;
  animation-name: screenshotAlertMessage;
}

body[data-screenshot-message]::after {
  content: attr(data-screenshot-message);
}

.hero-profile-image {
  width: clamp(12em, 24vw, 16em);
  height: clamp(12em, 24vw, 16em);
  max-width: 100%;
}

.home-public-shell {
  padding: 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  backdrop-filter: none;
  box-shadow: none;
}

@media (min-width: 768px) {
  .home-public-shell {
    padding: 0;
    border-radius: 0;
  }
}

.home-theme-decoration {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  transition: opacity 220ms ease;
  z-index: -1;
}

.home-theme-decoration__blob {
  position: absolute;
  border-radius: 9999px;
  background: rgb(var(--color-accent) / 0.2);
  filter: blur(26px);
}

.home-theme-decoration__blob--one {
  width: 7rem;
  height: 7rem;
  top: 2.5rem;
  left: 2.5rem;
}

.home-theme-decoration__blob--two {
  width: 9rem;
  height: 9rem;
  right: 2.5rem;
  bottom: 3.5rem;
}

body[data-theme='hello-kitty'] .home-theme-decoration,
body[data-theme-preset='hello-kitty'] .home-theme-decoration,
:root[data-theme='hello-kitty'] .home-theme-decoration,
:root[data-theme-preset='hello-kitty'] .home-theme-decoration {
  opacity: 1;
}

#layout-effect-preview-container {
  position: relative;
  background: rgb(var(--color-secondary) / 0.4);
  border-radius: 0.75rem;
  overflow: hidden;
  min-height: 12rem;
  aspect-ratio: var(--layout-preview-aspect-ratio, 16 / 9);
  display: flex;
  align-items: center;
  justify-content: center;
}

.layout-effect-preview__canvas {
  position: relative;
  z-index: 10;
  background: transparent;
  display: block;
  width: 100%;
}

.layout-effect-preview__canvas--invisible {
  visibility: hidden;
  pointer-events: none;
}

.layout-effect-preview__background {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  transition: opacity 160ms ease, filter 160ms ease;
  z-index: 5;
  pointer-events: none;
  background-color: rgb(var(--color-secondary) / 0.6);
  --layout-preview-blur: 0px;
}

.layout-effect-preview__background[data-visible='true'] {
  opacity: 1;
}

body[data-admin-theme='light'] .layout-effect-preview__background[data-visible='true'] {
  filter: blur(var(--layout-preview-blur)) saturate(1.05) brightness(0.98);
}

body[data-admin-theme='dark'] .layout-effect-preview__background[data-visible='true'] {
  filter: blur(var(--layout-preview-blur)) saturate(0.95) brightness(0.88);
}

#layout-effect-preview-placeholder,
.layout-effect-preview__placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  text-align: center;
  padding: 1.5rem;
  font-size: 0.95rem;
  font-weight: 500;
  color: #e2e8f0;
  --layout-effect-placeholder-rgb: 15, 23, 42;
  background-color: transparent;
  box-shadow: inset 0 0 0 1px rgba(var(--layout-effect-placeholder-rgb), 0.45);
  text-shadow: 0 1px 3px rgba(15, 23, 42, 0.4);
  pointer-events: none;
  transition: opacity 160ms ease, color 160ms ease, background-color 160ms ease;
  z-index: 8;
}

body[data-admin-theme='light'] #layout-effect-preview-placeholder,
body[data-admin-theme='light'] .layout-effect-preview__placeholder {
  --layout-effect-placeholder-rgb: 226, 232, 240;
  color: #1f2937;
  background-color: transparent;
  box-shadow: inset 0 0 0 1px rgba(var(--layout-effect-placeholder-rgb), 0.55);
  text-shadow: 0 1px 3px rgba(255, 255, 255, 0.65);
}

#layout-effect-preview-container.has-background-image #layout-effect-preview-placeholder {
  backdrop-filter: blur(2px);
  background-color: transparent;
  box-shadow: inset 0 0 0 1px rgba(var(--layout-effect-placeholder-rgb), 0.55);
  color: #f8fafc;
}

/*
  Shell unificado dos editores de texto rico no admin.
  Blog, bio e álbum compartilham a mesma construção visual do DesignPatterns.
*/

.album-editor__surface,
.blog-editor__surface {
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.45);
  border-radius: 0.75rem;
  background-color: rgb(var(--md-sys-color-surface) / 0.42);
  overflow: visible;
}

body[data-admin-theme='light'] .album-editor__surface,
body[data-admin-theme='light'] .blog-editor__surface {
  border-color: rgb(var(--md-sys-color-outline) / 0.55);
  background-color: rgb(var(--md-sys-color-secondary) / 0.72);
}

.album-editor__container,
.blog-editor__container,
.bio-editor__container {
  min-height: 12.5rem;
}

.blog-editor__container {
  min-height: 16rem;
}

.album-editor__preview,
.blog-editor__preview {
  min-height: 12.5rem;
  padding: 1rem;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.4);
  border-radius: 0.75rem;
  background-color: rgb(var(--md-sys-color-secondary) / 0.38);
  overflow-y: auto;
}

.blog-editor__preview {
  min-height: 16rem;
}

body[data-admin-theme='light'] .album-editor__preview,
body[data-admin-theme='light'] .blog-editor__preview {
  background-color: rgb(var(--md-sys-color-secondary) / 0.58);
  border-color: rgb(var(--md-sys-color-outline) / 0.48);
}

.album-editor__tab,
.blog-editor__tab {
  padding: 0.45rem 1rem;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.35);
  border-radius: 0.75rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: rgb(var(--md-sys-color-tertiary) / 0.88);
  background-color: rgb(var(--md-sys-color-secondary) / 0.48);
  transition: transform 150ms ease, background-color 150ms ease, border-color 150ms ease, color 150ms ease, box-shadow 150ms ease;
}

.album-editor__tab:hover,
.album-editor__tab:focus-visible,
.blog-editor__tab:hover,
.blog-editor__tab:focus-visible {
  background-color: rgb(var(--md-sys-color-surface) / 0.84);
  border-color: rgb(var(--md-sys-color-primary) / 0.28);
  color: rgb(var(--md-sys-color-tertiary) / 1);
  outline: 2px solid rgb(var(--md-sys-color-primary) / 0.24);
  outline-offset: 2px;
  transform: translateY(-1px);
}

.album-editor__tab--active,
.blog-editor__tab--active {
  background-color: rgb(var(--md-sys-color-primary) / 0.12);
  border-color: rgb(var(--md-sys-color-primary) / 0.38);
  color: rgb(var(--md-sys-color-primary) / 1);
  box-shadow: inset 0 0 0 1px rgb(var(--md-sys-color-primary) / 0.08);
}

.album-editor__tab:active:not(:disabled),
.blog-editor__tab:active:not(:disabled) {
  transform: translateY(0);
  filter: brightness(0.97);
}

/*
  Ajustes da toolbar do editor rico.
  Garante labels legíveis, dropdowns estáveis e alinhamento consistente.
*/

.bio-editor__toolbar,
.album-editor__toolbar,
.blog-editor__toolbar {
  overflow: visible;
}

.bio-editor__toolbar .ql-picker,
.album-editor__toolbar .ql-toolbar .ql-picker,
.blog-editor__toolbar .ql-toolbar .ql-picker {
  position: relative;
  z-index: 30;
}

.bio-editor__toolbar .ql-picker .ql-picker-options,
.album-editor__toolbar .ql-toolbar .ql-picker .ql-picker-options,
.blog-editor__toolbar .ql-toolbar .ql-picker .ql-picker-options {
  z-index: 40;
}

.bio-editor__toolbar .ql-picker.ql-font,
.album-editor__toolbar .ql-toolbar .ql-picker.ql-font,
.blog-editor__toolbar .ql-toolbar .ql-picker.ql-font {
  width: 11rem;
}

.bio-editor__toolbar .ql-picker.ql-size,
.album-editor__toolbar .ql-toolbar .ql-picker.ql-size,
.blog-editor__toolbar .ql-toolbar .ql-picker.ql-size {
  width: 6.5rem;
}

.bio-editor__toolbar .ql-picker.ql-header,
.album-editor__toolbar .ql-toolbar .ql-picker.ql-header,
.blog-editor__toolbar .ql-toolbar .ql-picker.ql-header {
  width: 7.5rem;
}

.ql-snow .ql-picker.ql-font .ql-picker-label,
.ql-snow .ql-picker.ql-font .ql-picker-item,
.ql-snow .ql-picker.ql-size .ql-picker-label,
.ql-snow .ql-picker.ql-size .ql-picker-item,
.ql-snow .ql-picker.ql-header .ql-picker-label,
.ql-snow .ql-picker.ql-header .ql-picker-item {
  color: transparent;
}

.ql-snow .ql-picker.ql-font .ql-picker-label::before,
.ql-snow .ql-picker.ql-font .ql-picker-item::before,
.ql-snow .ql-picker.ql-size .ql-picker-label::before,
.ql-snow .ql-picker.ql-size .ql-picker-item::before,
.ql-snow .ql-picker.ql-header .ql-picker-label::before,
.ql-snow .ql-picker.ql-header .ql-picker-item::before {
  color: rgb(var(--md-sys-color-tertiary) / 0.94);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: calc(100% - 1rem);
}

.ql-snow .ql-picker.ql-font .ql-picker-label::before,
.ql-snow .ql-picker.ql-font .ql-picker-item::before {
  content: 'Padrão';
}

.ql-snow .ql-picker.ql-font .ql-picker-label[data-value='montserrat']::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value='montserrat']::before {
  content: 'Montserrat';
  font-family: 'Montserrat', sans-serif;
}

.ql-snow .ql-picker.ql-font .ql-picker-label[data-value='merriweather']::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value='merriweather']::before {
  content: 'Merriweather';
  font-family: 'Merriweather', serif;
}

.ql-snow .ql-picker.ql-font .ql-picker-label[data-value='cormorant-garamond']::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value='cormorant-garamond']::before {
  content: 'Cormorant Garamond';
  font-family: 'Cormorant Garamond', serif;
}

.ql-snow .ql-picker.ql-font .ql-picker-label[data-value='unifrakturmaguntia']::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value='unifrakturmaguntia']::before {
  content: 'UnifrakturMaguntia';
  font-family: 'UnifrakturMaguntia', cursive;
}

.ql-snow .ql-picker.ql-size .ql-picker-label::before,
.ql-snow .ql-picker.ql-size .ql-picker-item::before {
  content: 'Normal';
}

.ql-snow .ql-picker.ql-size .ql-picker-label[data-value='small']::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value='small']::before {
  content: 'Pequeno';
}

.ql-snow .ql-picker.ql-size .ql-picker-label[data-value='medium']::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value='medium']::before {
  content: 'Médio';
}

.ql-snow .ql-picker.ql-size .ql-picker-label[data-value='large']::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value='large']::before {
  content: 'Grande';
}

.ql-snow .ql-picker.ql-size .ql-picker-label[data-value='xl']::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value='xl']::before {
  content: 'Extra grande';
}

.ql-snow .ql-picker.ql-size .ql-picker-label[data-value='huge']::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value='huge']::before {
  content: 'Gigante';
}

.ql-snow .ql-picker.ql-header .ql-picker-label::before,
.ql-snow .ql-picker.ql-header .ql-picker-item::before {
  content: 'Texto Normal';
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='1']::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='1']::before {
  content: 'Título 1';
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='2']::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='2']::before {
  content: 'Título 2';
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='3']::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='3']::before {
  content: 'Título 3';
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='4']::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='4']::before {
  content: 'Título 4';
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='5']::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='5']::before {
  content: 'Título 5';
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='6']::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='6']::before {
  content: 'Título 6';
}

.ql-snow .ql-toolbar button.ql-emoji {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.ql-snow .ql-toolbar button.ql-emoji::before {
  content: '😊';
  font-size: 1rem;
  line-height: 1;
  opacity: 0.95;
}

.ql-snow .ql-tooltip {
  z-index: 90;
  left: 0 !important;
  max-width: min(92vw, 28rem);
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.45);
  background-color: rgb(var(--md-sys-color-secondary) / 0.98);
  color: rgb(var(--md-sys-color-tertiary) / 0.96);
  box-shadow: 0 14px 30px -20px rgba(0, 0, 0, 0.6);
}

.ql-snow .ql-tooltip input[type='text'] {
  min-width: 0;
  width: min(62vw, 18rem);
}

.ql-snow .ql-tooltip a.ql-action,
.ql-snow .ql-tooltip a.ql-remove {
  margin-left: 0.5rem;
}

#rich-text-emoji-picker {
  border-color: rgb(var(--md-sys-color-outline) / 0.45);
  background-color: rgb(var(--md-sys-color-secondary) / 0.95);
  color: rgb(var(--md-sys-color-tertiary) / 0.96);
}

#rich-text-emoji-picker button {
  border: 1px solid transparent;
}

#rich-text-emoji-picker button:hover,
#rich-text-emoji-picker button:focus-visible {
  border-color: rgb(var(--md-sys-color-primary) / 0.45);
  background-color: rgb(var(--md-sys-color-primary) / 0.14);
  outline: none;
}

@media (max-width: 768px) {
  .bio-editor__toolbar,
  .album-editor__toolbar .ql-toolbar,
  .blog-editor__toolbar .ql-toolbar {
    gap: 0.15rem;
    padding: 0.35rem;
  }

  .bio-editor__toolbar .ql-picker.ql-font,
  .album-editor__toolbar .ql-toolbar .ql-picker.ql-font,
  .blog-editor__toolbar .ql-toolbar .ql-picker.ql-font {
    width: 8.75rem;
  }

  .bio-editor__toolbar .ql-picker.ql-size,
  .album-editor__toolbar .ql-toolbar .ql-picker.ql-size,
  .blog-editor__toolbar .ql-toolbar .ql-picker.ql-size {
    width: 5.5rem;
  }

  .bio-editor__toolbar .ql-picker.ql-header,
  .album-editor__toolbar .ql-toolbar .ql-picker.ql-header,
  .blog-editor__toolbar .ql-toolbar .ql-picker.ql-header {
    width: 6.25rem;
  }

  .ql-snow .ql-tooltip {
    max-width: calc(100vw - 1.5rem);
  }

  .ql-snow .ql-tooltip input[type='text'] {
    width: min(58vw, 12rem);
  }
}

.bio-editor__toolbar,
.album-editor__toolbar .ql-toolbar,
.blog-editor__toolbar .ql-toolbar {
  border-color: rgb(var(--md-sys-color-outline) / 0.45);
  background-color: rgb(var(--md-sys-color-secondary) / 0.78);
  color: rgb(var(--md-sys-color-tertiary) / 0.94);
  border-radius: 0.75rem;
  padding: 0.35rem 0.5rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
}

.bio-editor__toolbar .ql-formats,
.album-editor__toolbar .ql-toolbar .ql-formats,
.blog-editor__toolbar .ql-toolbar .ql-formats {
  margin-right: 0.25rem;
}

.bio-editor__toolbar,
.album-editor__toolbar .ql-toolbar,
.blog-editor__toolbar .ql-toolbar {
  position: relative;
  z-index: 30;
}

.bio-editor__toolbar button,
.bio-editor__toolbar .ql-picker-label,
.bio-editor__toolbar .ql-picker-item,
.album-editor__toolbar .ql-toolbar button,
.album-editor__toolbar .ql-toolbar .ql-picker-label,
.album-editor__toolbar .ql-toolbar .ql-picker-item,
.blog-editor__toolbar .ql-toolbar button,
.blog-editor__toolbar .ql-toolbar .ql-picker-label,
.blog-editor__toolbar .ql-toolbar .ql-picker-item {
  color: rgb(var(--md-sys-color-tertiary) / 0.94);
}

.bio-editor__toolbar .ql-stroke,
.bio-editor__toolbar .ql-picker-label svg .ql-stroke,
.album-editor__toolbar .ql-toolbar .ql-stroke,
.album-editor__toolbar .ql-toolbar .ql-picker-label svg .ql-stroke,
.blog-editor__toolbar .ql-toolbar .ql-stroke,
.blog-editor__toolbar .ql-toolbar .ql-picker-label svg .ql-stroke {
  stroke: currentColor;
}

.bio-editor__toolbar .ql-fill,
.bio-editor__toolbar .ql-picker-label svg .ql-fill,
.album-editor__toolbar .ql-toolbar .ql-fill,
.album-editor__toolbar .ql-toolbar .ql-picker-label svg .ql-fill,
.blog-editor__toolbar .ql-toolbar .ql-fill,
.blog-editor__toolbar .ql-toolbar .ql-picker-label svg .ql-fill {
  fill: currentColor;
}

.bio-editor__toolbar .ql-picker .ql-picker-options,
.album-editor__toolbar .ql-picker .ql-picker-options,
.blog-editor__toolbar .ql-toolbar .ql-picker .ql-picker-options {
  border-color: rgb(var(--md-sys-color-outline) / 0.6);
  background-color: rgb(var(--md-sys-color-secondary) / 0.96);
  color: rgb(var(--md-sys-color-tertiary) / 0.94);
}

.bio-editor__container .ql-container,
.album-editor__container .ql-container,
.blog-editor__container .ql-container {
  border: none;
  background-color: transparent;
  color: rgb(var(--md-sys-color-tertiary) / 0.94);
}

.bio-editor__container .ql-editor,
.album-editor__container .ql-editor,
.blog-editor__container .ql-editor,
.album-editor__preview,
#bio-preview,
.blog-editor__preview {
  color: rgb(var(--md-sys-color-tertiary) / 0.94);
  background-color: transparent;
}

.bio-editor__container .ql-editor,
.album-editor__container .ql-editor,
.blog-editor__container .ql-editor {
  min-height: inherit;
  padding: 1rem;
  font-size: 1rem;
  line-height: 1.65;
  font-family: var(--theme-font-sans), 'Montserrat', sans-serif;
}

.blog-editor__container .ql-editor {
  min-height: 16rem;
}

.bio-editor__container .ql-editor img,
.album-editor__container .ql-editor img,
.blog-editor__container .ql-editor img {
  max-width: 100%;
  height: auto;
  cursor: grab;
  transition: box-shadow 150ms ease, outline-color 150ms ease;
}

.bio-editor__container .ql-editor img.is-active,
.album-editor__container .ql-editor img.is-active,
.blog-editor__container .ql-editor img.is-active {
  outline: 2px solid rgb(var(--md-sys-color-primary) / 0.65);
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgb(var(--md-sys-color-primary) / 0.15);
}

.bio-editor__container .ql-editor img.is-resizing,
.album-editor__container .ql-editor img.is-resizing,
.blog-editor__container .ql-editor img.is-resizing {
  cursor: nwse-resize;
}

.bio-editor__toolbar .ql-toolbar,
.album-editor__toolbar .ql-toolbar,
.blog-editor__toolbar .ql-toolbar {
  border: none;
}

.album-editor__preview a,
.blog-editor__preview a {
  color: rgb(var(--md-sys-color-primary) / 1);
  text-decoration: underline;
}

.album-editor__preview,
.blog-editor__preview,
#bio-preview {
  font-family: var(--theme-font-sans), 'Montserrat', sans-serif;
}

body[data-admin-theme='hello-kitty'] .bio-editor__container .ql-editor,
body[data-admin-theme='hello-kitty'] .album-editor__container .ql-editor,
body[data-admin-theme='hello-kitty'] .blog-editor__container .ql-editor,
body[data-admin-theme='hello-kitty'] .album-editor__preview,
body[data-admin-theme='hello-kitty'] .blog-editor__preview,
body[data-admin-theme='hello-kitty'] #bio-preview {
  font-family: 'Sniglet', 'Montserrat', sans-serif;
}

.bio-editor__toolbar .bio-toolbar-emoji {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.bio-editor__toolbar .bio-toolbar-emoji__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0.375rem;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background-color: rgba(30, 41, 59, 0.35);
  color: inherit;
  font-size: 1.125rem;
  line-height: 1;
  cursor: pointer;
  transition: background-color 150ms ease, border-color 150ms ease, transform 150ms ease, box-shadow 150ms ease;
}

.bio-editor__toolbar .bio-toolbar-emoji__button:hover {
  background-color: rgba(59, 130, 246, 0.12);
  border-color: rgba(59, 130, 246, 0.45);
}

.bio-editor__toolbar .bio-toolbar-emoji__button:focus-visible {
  outline: 2px solid rgba(59, 130, 246, 0.8);
  outline-offset: 2px;
  box-shadow: 0 0 0 2px rgba(15, 23, 42, 0.85);
}

.bio-editor__toolbar .bio-toolbar-emoji__button:active {
  transform: scale(0.96);
}

/*
  Estilos de tamanho/fonte para o editor de bio.
  Alinhados com .ql-render para paridade visual bio/post.
  Os seletores de #bio e .album-editor__preview são cobertos por .ql-render (ver abaixo).
*/

.bio-editor__container .ql-editor .ql-size-small {
  font-size: 0.875em;
}

.bio-editor__container .ql-editor .ql-size-medium {
  font-size: 1em;
}

.bio-editor__container .ql-editor .ql-size-large {
  font-size: 1.5em;
}

.bio-editor__container .ql-editor .ql-size-xl {
  font-size: 2em;
}

.bio-editor__container .ql-editor .ql-size-huge {
  font-size: 2.5em;
}

/* Fallback de fonte para o picker do Quill e áreas sem .ql-render */

.ql-editor .ql-font-montserrat {
  font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}

.ql-editor .ql-font-merriweather {
  font-family: 'Merriweather', Georgia, 'Times New Roman', serif;
}

.ql-editor .ql-font-cormorant-garamond {
  font-family: 'Cormorant Garamond', 'Times New Roman', serif;
}

.ql-editor .ql-font-unifrakturmaguntia {
  font-family: 'UnifrakturMaguntia', 'Cormorant Garamond', cursive;
}

body[data-admin-theme='light'] .bio-editor__toolbar .bio-toolbar-emoji__button {
  border-color: rgba(148, 163, 184, 0.4);
  background-color: rgba(226, 232, 240, 0.7);
}

body[data-admin-theme='light'] .bio-editor__toolbar .bio-toolbar-emoji__button:hover {
  background-color: rgba(59, 130, 246, 0.18);
  border-color: rgba(59, 130, 246, 0.55);
}

body[data-admin-theme='light'] .bio-editor__toolbar .bio-toolbar-emoji__button:focus-visible {
  box-shadow: 0 0 0 2px rgba(248, 250, 252, 0.9);
}

/*
  Classe de renderização unificada para conteúdo HTML gerado pelo editor Quill.
  Aplicada em: #post-content (post público), previews do admin (blog/bio/álbum),
  e raiz do editor Quill (.ql-editor) para paridade WYSIWYG.
*/

.ql-render {
  --ql-indent-step: 1.75rem;
  word-break: break-word;
}

.ql-render > :first-child {
  margin-top: 0;
}

.ql-render p,
.ql-render ul,
.ql-render ol,
.ql-render blockquote,
.ql-render figure,
.ql-render pre,
.ql-render table {
  margin: 0 0 1rem;
}

.ql-render ul,
.ql-render ol {
  padding-left: 1.5rem;
}

.ql-render ul {
  list-style: disc;
}

.ql-render ol {
  list-style: decimal;
}

.ql-render li + li {
  margin-top: 0.35rem;
}

.ql-render h1,
.ql-render h2,
.ql-render h3,
.ql-render h4,
.ql-render h5,
.ql-render h6 {
  margin: 1.5rem 0 1rem;
  line-height: 1.15;
  color: rgb(var(--md-sys-color-tertiary) / 1);
}

.ql-render h1 {
  font-family: var(--theme-font-display), 'UnifrakturMaguntia', cursive;
  font-size: clamp(2.25rem, 4vw, 3.75rem);
}

.ql-render h2 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.ql-render h3 {
  font-size: clamp(1.4rem, 2.2vw, 1.875rem);
}

.ql-render a {
  color: rgb(var(--md-sys-color-primary) / 1);
  font-weight: 600;
  text-decoration-line: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

.ql-render a:hover,
.ql-render a:focus-visible {
  color: rgb(var(--color-accent) / 1);
}

.ql-render a:focus-visible {
  outline: 2px solid rgb(var(--md-sys-color-primary) / 0.45);
  outline-offset: 3px;
  border-radius: 0.25rem;
}

.ql-render .ql-align-center {
  text-align: center;
}

.ql-render .ql-align-right {
  text-align: right;
}

.ql-render .ql-align-justify {
  text-align: justify;
}

.ql-render .ql-direction-rtl {
  direction: rtl;
  text-align: inherit;
}

.ql-render .ql-indent-1 {
  padding-left: calc(var(--ql-indent-step) * 1);
}

.ql-render .ql-indent-2 {
  padding-left: calc(var(--ql-indent-step) * 2);
}

.ql-render .ql-indent-3 {
  padding-left: calc(var(--ql-indent-step) * 3);
}

.ql-render .ql-indent-4 {
  padding-left: calc(var(--ql-indent-step) * 4);
}

.ql-render .ql-indent-5 {
  padding-left: calc(var(--ql-indent-step) * 5);
}

.ql-render .ql-indent-6 {
  padding-left: calc(var(--ql-indent-step) * 6);
}

.ql-render .ql-indent-7 {
  padding-left: calc(var(--ql-indent-step) * 7);
}

.ql-render .ql-indent-8 {
  padding-left: calc(var(--ql-indent-step) * 8);
}

.ql-render .ql-indent-9 {
  padding-left: calc(var(--ql-indent-step) * 9);
}

.ql-render .ql-size-small {
  font-size: 0.875em;
}

.ql-render .ql-size-medium {
  font-size: 1em;
}

.ql-render .ql-size-large {
  font-size: 1.5em;
}

.ql-render .ql-size-xl {
  font-size: 2em;
}

.ql-render .ql-size-huge {
  font-size: 2.5em;
}

.ql-render .ql-font-serif {
  font-family: 'Merriweather', Georgia, 'Times New Roman', serif;
}

.ql-render .ql-font-sans,
.ql-render .ql-font-montserrat {
  font-family: 'Montserrat', 'Inter', 'Helvetica Neue', Arial, sans-serif;
}

.ql-render .ql-font-merriweather {
  font-family: 'Merriweather', Georgia, 'Times New Roman', serif;
}

.ql-render .ql-font-cormorant-garamond {
  font-family: 'Cormorant Garamond', 'Times New Roman', serif;
}

.ql-render .ql-font-unifrakturmaguntia {
  font-family: 'UnifrakturMaguntia', 'Cormorant Garamond', cursive;
}

.ql-render .ql-font-monospace {
  font-family: 'Fira Code', 'Cascadia Code', Menlo, Consolas, 'Liberation Mono', monospace;
}

.ql-render .ql-color-white {
  color: #fff;
}

.ql-render .ql-color-black {
  color: #000;
}

.ql-render .ql-color-red {
  color: #e60000;
}

.ql-render .ql-color-orange {
  color: #f90;
}

.ql-render .ql-color-yellow {
  color: #ff0;
}

.ql-render .ql-color-green {
  color: #008a00;
}

.ql-render .ql-color-blue {
  color: #0066cc;
}

.ql-render .ql-color-purple {
  color: #9933ff;
}

.ql-render .ql-color-pink {
  color: #e6007a;
}

.ql-render .ql-bg-white {
  background-color: #fff;
}

.ql-render .ql-bg-black {
  background-color: #000;
}

.ql-render .ql-bg-red {
  background-color: #e60000;
}

.ql-render .ql-bg-orange {
  background-color: #f90;
}

.ql-render .ql-bg-yellow {
  background-color: #ff0;
}

.ql-render .ql-bg-green {
  background-color: #008a00;
}

.ql-render .ql-bg-blue {
  background-color: #0066cc;
}

.ql-render .ql-bg-purple {
  background-color: #9933ff;
}

.ql-render .ql-bg-pink {
  background-color: #e6007a;
}

body[data-admin-theme='light'] #layout-effect-preview-container.has-background-image #layout-effect-preview-placeholder {
  --layout-effect-placeholder-rgb: 248, 250, 252;
  background-color: transparent;
  box-shadow: inset 0 0 0 1px rgba(var(--layout-effect-placeholder-rgb), 0.5);
  color: #1f2937;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.55);
}

@media (max-width: 480px) {
  .hero-profile-image {
    width: 12em;
    height: 12em;
  }
}

@keyframes screenshotAlertBackdrop {
  0% {
    opacity: 0;
  }
  12% {
    opacity: 1;
  }
  75% {
    opacity: 0.92;
  }
  100% {
    opacity: 0;
  }
}

@keyframes screenshotAlertMessage {
  0% {
    opacity: 0;
    transform: translateY(16px) scale(0.98);
  }
  18% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  70% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateY(-12px) scale(0.98);
  }
}

/*
  As diretivas do Tailwind continuam aqui.
*/

*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/*
  ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: var(--theme-font-sans), Montserrat, sans-serif; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

.\!container{
  width: 100% !important;
}

.container{
  width: 100%;
}

@media (min-width: 640px){

  .\!container{
    max-width: 640px !important;
  }

  .container{
    max-width: 640px;
  }
}

@media (min-width: 768px){

  .\!container{
    max-width: 768px !important;
  }

  .container{
    max-width: 768px;
  }
}

@media (min-width: 1024px){

  .\!container{
    max-width: 1024px !important;
  }

  .container{
    max-width: 1024px;
  }
}

@media (min-width: 1280px){

  .\!container{
    max-width: 1280px !important;
  }

  .container{
    max-width: 1280px;
  }
}

@media (min-width: 1536px){

  .\!container{
    max-width: 1536px !important;
  }

  .container{
    max-width: 1536px;
  }
}

/* Adicionado para corrigir o stacking context do dropdown de fontes */

#settings-form-geral {
    position: relative;
    z-index: 20;
  }

.type-display{
  font-family: var(--theme-font-display), UnifrakturMaguntia, cursive;
  font-size: 3.5rem;
  line-height: 1.1;
}

.type-h1{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: 800;
  letter-spacing: -0.025em;
}

.type-h2{
  font-family: Cormorant Garamond, serif;
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
}

.type-h3{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
}

.type-body{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  line-height: 1.625;
}

.type-body-serif{
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  line-height: 2;
}

.type-label{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.type-caption{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 500;
  opacity: 0.7;
}

.field-outlined-wrap{
  position: relative;
}

.field-outlined{
  width: 100%;
  border-radius: 0.5rem;
  border-width: 1px;
  border-color: rgb(var(--md-sys-color-outline) / 0.4);
  background-color: transparent;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1.25rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
    color: rgb(var(--md-sys-color-tertiary) / 0.95);
}

.field-outlined::-moz-placeholder {
    color: transparent;
  }

.field-outlined::placeholder {
    color: transparent;
  }

.field-outlined:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
    border-color: rgb(var(--md-sys-color-primary) / 1);
    --tw-ring-color: rgb(var(--md-sys-color-primary) / 1);
}

.field-outlined-label{
  pointer-events: none;
  position: absolute;
  left: 1rem;
  top: 0.875rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0em;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
    color: rgb(var(--md-sys-color-tertiary) / 0.6);
}

.field-outlined:not(:-moz-placeholder) + .field-outlined-label{
  top: 0.375rem;
  font-size: 0.75rem;
  line-height: 1rem;
    color: rgb(var(--md-sys-color-primary) / 1);
}

.field-outlined:focus + .field-outlined-label,
  .field-outlined:not(:placeholder-shown) + .field-outlined-label{
  top: 0.375rem;
  font-size: 0.75rem;
  line-height: 1rem;
    color: rgb(var(--md-sys-color-primary) / 1);
}

.field-outlined-helper{
  margin-top: 0.25rem;
  font-size: 0.75rem;
  line-height: 1rem;
  opacity: 0.6;
}

.field-outlined.field-outlined--error{
  border-color: rgb(var(--md-sys-color-error) / 0.7);
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--md-sys-color-error) / var(--tw-ring-opacity, 1));
}

.field-outlined.field-outlined--error + .field-outlined-label {
    color: rgb(var(--md-sys-color-error) / 0.92);
  }

.admin-select-md3{
  width: 100%;
  border-radius: 0.5rem;
  border-width: 1px;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
    border-color: rgb(var(--md-sys-color-outline) / 0.4);
    background-color: rgb(var(--md-sys-color-secondary) / 0.75);
    color: rgb(var(--md-sys-color-tertiary) / 0.95);
}

.admin-select-md3:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--color-primary) / var(--tw-ring-opacity, 1));
    border-color: rgb(var(--md-sys-color-primary) / 1);
}

.admin-select-md3 option {
    background-color: rgb(var(--md-sys-color-surface) / 1);
    color: rgb(var(--md-sys-color-tertiary) / 1);
  }

.md3-switch__native {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    overflow: hidden;
    white-space: nowrap;
  }

.md3-switch-control{
  display: inline-flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.profile-bio-card .flex.md3-switch-control.justify-between {
  margin-bottom: 0.75rem;
}

.md3-switch-label{
  flex: 1 1 0%;
  line-height: 1.375;
}

.md3-switch{
  position: relative;
  display: inline-flex;
  height: 1.5rem;
  width: 2.75rem;
  flex-shrink: 0;
  cursor: pointer;
  align-items: center;
  border-radius: 9999px;
  border-width: 1px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.profile-bio-card .flex.md3-switch.justify-between {
  margin-bottom: 0.75rem;
}

.md3-switch {
    border-color: rgb(var(--md-sys-color-outline) / 0.55);
    background-color: rgb(var(--md-sys-color-outline) / 0.4);
  }

.md3-switch__thumb{
  display: block;
  height: 1.25rem;
  width: 1.25rem;
  border-radius: 9999px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    margin-left: 0.125rem;
    background-color: rgb(var(--md-sys-color-tertiary) / 0.96);
    transform: translateX(0);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.3);
}

.md3-switch[aria-checked='true'] {
    border-color: rgb(var(--color-primary) / 0.9);
    background-color: rgb(var(--color-primary) / 0.9);
  }

.md3-switch[aria-checked='true'] .md3-switch__thumb {
    background-color: rgb(var(--md-sys-color-on-primary) / 1);
    transform: translateX(1.25rem);
  }

.md3-switch:focus-visible{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-primary) / 0.6);
  --tw-ring-offset-width: 2px;
    ring-offset-color: rgb(var(--md-sys-color-surface) / 1);
}

.md3-switch[aria-disabled='true']{
  cursor: not-allowed;
  opacity: 0.5;
}

.md3-slider-row{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

#blog-list-view > .md3-slider-row:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .md3-slider-row:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .md3-slider-row:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .md3-slider-row:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .md3-slider-row:first-child,
.blog-admin-shell > [data-blog-view="list"] > .md3-slider-row:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .md3-slider-row:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .md3-slider-row.items-center.justify-between {
  margin-bottom: 0.75rem;
}

@media (min-width: 640px){

  .md3-slider-row{
    flex-direction: row;
    align-items: center;
  }
}

.md3-color-picker{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  border-radius: 0.75rem;
  border-width: 1px;
  padding: 1rem;
  text-align: left;
}

#blog-list-view > .md3-color-picker:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .md3-color-picker:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .md3-color-picker:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .md3-color-picker:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .md3-color-picker:first-child,
.blog-admin-shell > [data-blog-view="list"] > .md3-color-picker:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .md3-color-picker:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .md3-color-picker.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.md3-color-picker {
    border-color: rgb(var(--md-sys-color-outline) / 0.2);
    background-color: rgb(var(--md-sys-color-secondary) / 0.3);
  }

.md3-color-picker__label{
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0em;
    color: rgb(var(--md-sys-color-tertiary) / 0.8);
}

.md3-color-picker__body{
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

#blog-list-view > .md3-color-picker__body:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .md3-color-picker__body:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .md3-color-picker__body:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .md3-color-picker__body:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .md3-color-picker__body:first-child,
.blog-admin-shell > [data-blog-view="list"] > .md3-color-picker__body:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .md3-color-picker__body:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .md3-color-picker__body.items-center.justify-between {
  margin-bottom: 0.75rem;
}

@media (min-width: 640px){

  .md3-color-picker__body{
    flex-direction: row;
    align-items: center;
  }
}

.md3-color-picker__swatch{
  height: 3rem;
  width: 3rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    border-color: rgb(var(--md-sys-color-outline) / 0.4);
}

.md3-color-picker__native{
  height: 100%;
  width: 100%;
  cursor: pointer;
  border-width: 0px;
  background-color: transparent;
  padding: 0px;
}

.md3-color-picker__native::-webkit-color-swatch-wrapper {
    padding: 0;
  }

.md3-color-picker__native::-webkit-color-swatch {
    border: 0;
  }

.md3-color-picker__native::-moz-color-swatch {
    border: 0;
  }

.md3-color-picker__alpha{
  width: 100%;
}

.md3-color-picker__alpha > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.md3-color-picker__alpha{
  text-align: left;
}


.profile-bio-card .md3-color-picker__alpha,
.profile-photo-card .md3-color-picker__alpha {
  margin-bottom: 0;
}

@media (min-width: 640px){

  .md3-color-picker__alpha{
    max-width: 20rem;
  }
}

.md3-color-picker__text{
  width: 100%;
  border-radius: 0.5rem;
  border-width: 1px;
  background-color: transparent;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
    border-color: rgb(var(--md-sys-color-outline) / 0.4);
    color: rgb(var(--md-sys-color-tertiary) / 0.95);
}

.md3-color-picker__text:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--color-primary) / var(--tw-ring-opacity, 1));
    border-color: rgb(var(--md-sys-color-primary) / 1);
}

.md3-color-picker--alpha > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

#photo-upload-form > .md3-color-picker--alpha {
  display: contents;
}

.admin-blog-filters{
  border-radius: 0.75rem;
  border-width: 1px;
  padding: 0.75rem;
    border-color: rgb(var(--md-sys-color-outline) / 0.18);
    background-color: rgb(var(--md-sys-color-secondary) / 0.28);
}

.admin-blog-filters__select > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}


.profile-bio-card .admin-blog-filters__select,
.profile-photo-card .admin-blog-filters__select {
  margin-bottom: 0;
}

#dashboard-screen .admin-section input:not([type='hidden']):not([type='checkbox']):not([type='radio']):not([type='color']):not([type='range']):not(.field-outlined),
  #dashboard-screen .admin-section textarea:not(.field-outlined){
  width: 100%;
  border-radius: 0.5rem;
  border-width: 1px;
  border-color: rgb(var(--md-sys-color-outline) / 0.4);
  background-color: transparent;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: transparent;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
    color: rgb(var(--md-sys-color-tertiary) / 0.95);
}

#dashboard-screen .admin-section input:not([type='hidden']):not([type='checkbox']):not([type='radio']):not([type='color']):not([type='range']):not(.field-outlined):focus,
  #dashboard-screen .admin-section textarea:not(.field-outlined):focus {
    border-color: rgb(var(--md-sys-color-primary) / 1);
    --tw-ring-color: rgb(var(--md-sys-color-primary) / 1);
  }

#dashboard-screen .admin-section input:not(.field-outlined)::-moz-placeholder, #dashboard-screen .admin-section textarea:not(.field-outlined)::-moz-placeholder {
    color: rgb(var(--md-sys-color-tertiary) / 0.55);
  }

#dashboard-screen .admin-section input:not(.field-outlined)::placeholder,
  #dashboard-screen .admin-section textarea:not(.field-outlined)::placeholder {
    color: rgb(var(--md-sys-color-tertiary) / 0.55);
  }

#dashboard-screen .admin-section select:not(.ql-size):not(.ql-font):not(.admin-select-md3),
  #dashboard-screen .admin-sidebar select.admin-sidebar__language-switcher{
  border-radius: 0.5rem;
  border-width: 1px;
  border-color: rgb(var(--md-sys-color-outline) / 0.4);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: 2px solid transparent;
  outline-offset: 2px;
}

#dashboard-screen .admin-section select:not(.ql-size):not(.ql-font):not(.admin-select-md3):focus,
  #dashboard-screen .admin-sidebar select.admin-sidebar__language-switcher:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--color-primary) / var(--tw-ring-opacity, 1));
}

#dashboard-screen .admin-section select:not(.ql-size):not(.ql-font):not(.admin-select-md3),
  #dashboard-screen .admin-sidebar select.admin-sidebar__language-switcher {
    color: rgb(var(--md-sys-color-tertiary) / 0.95);
  }

#dashboard-screen .admin-section input[type='range']{
  accent-color: rgb(var(--color-primary) / 1);
}

#login-screen label:not(.sr-only),
  #dashboard-screen .admin-section label:not(.sr-only),
  #dashboard-screen .admin-sidebar__footer-label{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}


#dashboard-screen #login-screen label:not(.sr-only),
#dashboard-screen 
  #dashboard-screen .admin-section label:not(.sr-only),
#dashboard-screen 
  #dashboard-screen .admin-sidebar__footer-label {
  color: rgb(var(--admin-muted) / 1);
  letter-spacing: 0;
  text-transform: none;
}

html[data-app-context='post'] .public-post-info-card #login-screen label:not(.sr-only),html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-section label:not(.sr-only),html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-sidebar__footer-label {
  color: #e8447a;
  letter-spacing: 0;
}

#login-screen .btn-pill,
  #login-screen .btn-link,
  #dashboard-screen .admin-main__action-btn,
  #dashboard-screen .admin-sidebar__nav-button,
  #dashboard-screen .admin-sidebar__logout,
  #dashboard-screen .admin-section .btn-pill,
  #dashboard-screen .admin-section .btn-link{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}


#dashboard-screen #login-screen .btn-pill,
#dashboard-screen 
  #login-screen .btn-link,
#dashboard-screen 
  #dashboard-screen .admin-main__action-btn,
#dashboard-screen 
  #dashboard-screen .admin-sidebar__nav-button,
#dashboard-screen 
  #dashboard-screen .admin-sidebar__logout,
#dashboard-screen 
  #dashboard-screen .admin-section .btn-pill,
#dashboard-screen 
  #dashboard-screen .admin-section .btn-link {
  color: rgb(var(--admin-muted) / 1);
  letter-spacing: 0;
  text-transform: none;
}

html[data-app-context='post'] .public-post-info-card #login-screen .btn-pill,html[data-app-context='post'] .public-post-info-card 
  #login-screen .btn-link,html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-main__action-btn,html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-sidebar__nav-button,html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-sidebar__logout,html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-section .btn-pill,html[data-app-context='post'] .public-post-info-card 
  #dashboard-screen .admin-section .btn-link {
  color: #e8447a;
  letter-spacing: 0;
}

.btn-pill{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.profile-bio-card .flex.btn-pill.justify-between {
  margin-bottom: 0.75rem;
}

.btn-pill:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.btn-pill:focus-visible{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-accent) / 0.7);
}

.btn-glow{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    box-shadow: 0 12px 28px -14px rgba(15, 23, 42, 0.55);
}

.btn-glow:hover,
  .btn-glow:focus-visible{
  --tw-translate-y: -0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    box-shadow: 0 18px 36px -12px rgba(255, 0, 85, 0.45);
}

.btn-glow--accent{
  border-width: 1px;
  border-color: rgb(255 255 255 / 0.2);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    background-image: linear-gradient(135deg, rgba(255, 0, 85, 0.95), rgba(236, 72, 153, 0.9));
    box-shadow: 0 16px 42px -18px rgba(255, 0, 85, 0.6);
}

.btn-glow--accent:hover,
  .btn-glow--accent:focus-visible {
    background-image: linear-gradient(135deg, rgba(236, 72, 153, 0.98), rgba(244, 114, 182, 0.95));
    box-shadow: 0 22px 50px -18px rgba(236, 72, 153, 0.65);
  }

body[data-admin-theme='light'] .btn-glow--accent {
    background-image: linear-gradient(135deg, rgba(244, 114, 182, 0.95), rgba(236, 72, 153, 0.9));
    box-shadow: 0 14px 38px -16px rgba(236, 72, 153, 0.55);
  }

.btn-glow--neutral {
    box-shadow: 0 16px 40px -18px rgba(148, 163, 184, 0.45);
  }

.btn-glow--neutral:hover,
  .btn-glow--neutral:focus-visible {
    box-shadow: 0 22px 48px -18px rgba(148, 163, 184, 0.5);
  }

.home-link-primary,
  .home-link-secondary{
  transform: translate3d(var(--tw-translate-x), var(--tw-translate-y), 0) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  border-radius: 0.75rem;
  text-align: center;
  font-family: Merriweather, serif;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.home-link-primary:focus-visible,
  .home-link-secondary:focus-visible{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-primary) / 0.6);
}

.home-link-primary{
  border-width: 1px;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 700;
    background:
      linear-gradient(135deg, rgb(var(--md-sys-color-primary) / 0.92), rgb(var(--color-accent) / 0.36) 48%, rgb(var(--md-sys-color-surface) / 0.84)),
      rgb(var(--md-sys-color-secondary) / 0.76);
    border-color: rgb(var(--md-sys-color-primary) / 0.48);
    color: rgb(var(--md-sys-color-on-primary) / 1);
    box-shadow:
      0 0 0 1px rgb(255 255 255 / 0.08) inset,
      0 14px 30px -22px rgb(var(--color-accent) / 0.78),
      0 0 30px -18px rgb(var(--color-accent) / 0.9);
}

.home-link-secondary{
  border-width: 1px;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-weight: 600;
    background-color: rgb(var(--md-sys-color-secondary) / 0.68);
    border-color: rgb(var(--md-sys-color-outline) / 0.16);
    color: rgb(var(--md-sys-color-tertiary) / 0.95);
    box-shadow:
      0 0 0 1px rgb(255 255 255 / 0.04) inset,
      0 12px 28px -24px rgb(0 0 0 / 0.72);
}

.home-link-primary:hover,
  .home-link-primary:focus-visible,
  .home-link-secondary:hover,
  .home-link-secondary:focus-visible {
    transform: translateY(-2px) scale(1.02);
  }

.home-link-primary:hover,
  .home-link-primary:focus-visible {
    border-color: rgb(var(--md-sys-color-primary) / 0.7);
    filter: none;
    box-shadow:
      0 0 0 1px rgb(255 255 255 / 0.12) inset,
      0 18px 42px -20px rgb(var(--color-accent) / 0.9),
      0 0 42px -12px rgb(var(--color-accent) / 0.86);
  }

.home-link-secondary:hover,
  .home-link-secondary:focus-visible {
    background-color: rgb(var(--md-sys-color-secondary) / 0.84);
    border-color: rgb(var(--md-sys-color-primary) / 0.36);
    box-shadow:
      0 0 0 1px rgb(255 255 255 / 0.08) inset,
      0 18px 38px -26px rgb(var(--color-accent) / 0.58),
      0 0 30px -18px rgb(var(--color-accent) / 0.62);
  }

.home-link-card{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

#blog-list-view > .home-link-card:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .home-link-card:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .home-link-card:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .home-link-card:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .home-link-card:first-child,
.blog-admin-shell > [data-blog-view="list"] > .home-link-card:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .home-link-card:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .home-link-card.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.home-link-card {
    animation: home-link-enter 520ms cubic-bezier(0.22, 1, 0.36, 1) both;
    animation-delay: calc(var(--home-link-index, 0) * 70ms);
  }

.home-link-anchor {
    display: flex;
    min-height: 4.5rem;
    align-items: center;
    gap: 1rem;
    text-align: left;
    text-decoration: none;
    backdrop-filter: blur(12px);
    will-change: transform, box-shadow;
  }

.home-link-anchor .link-icon {
    display: inline-flex;
    width: 2.75rem;
    height: 2.75rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 0.875rem;
    background: linear-gradient(135deg, rgb(var(--md-sys-color-primary) / 0.98), rgb(var(--color-accent) / 0.74));
    color: rgb(var(--md-sys-color-on-primary) / 1);
    line-height: 0;
    box-shadow: 0 10px 24px -16px rgb(var(--color-accent) / 0.7);
  }

.home-link-anchor .link-icon svg {
    width: 1.25rem;
    height: 1.25rem;
  }

.home-link-anchor .link-text {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
    line-height: 1.25;
  }

.public-language-switcher {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
  }

.public-language-switcher.hidden {
    display: none !important;
  }

.public-language-switcher > .text-xl {
    display: none;
  }

.public-language-switcher__buttons {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem;
    border: 1px solid rgb(var(--md-sys-color-outline) / 0.18);
    border-radius: 999px;
    background: rgb(var(--md-sys-color-secondary) / 0.68);
    box-shadow:
      0 14px 34px -26px rgb(0 0 0 / 0.8),
      0 0 26px -20px rgb(var(--color-accent) / 0.64);
    backdrop-filter: blur(16px);
  }

.public-language-switcher__button {
    min-width: 3.25rem;
    border-radius: 999px;
    padding: 0.5rem 0.75rem;
    color: rgb(var(--md-sys-color-tertiary) / 0.72);
    font-family: Montserrat, sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
  }

.public-language-switcher__button:hover,
  .public-language-switcher__button:focus-visible {
    color: rgb(var(--md-sys-color-tertiary) / 1);
    transform: translateY(-1px);
    outline: none;
  }

.public-language-switcher__button--active {
    color: rgb(var(--md-sys-color-on-primary) / 1);
    background: linear-gradient(135deg, rgb(var(--md-sys-color-primary) / 0.96), rgb(var(--color-accent) / 0.56));
    box-shadow:
      0 8px 22px -14px rgb(var(--color-accent) / 0.86),
      0 0 24px -14px rgb(var(--color-accent) / 0.88);
  }

@keyframes home-link-enter {
    from {
      transform: translateY(12px) scale(0.985);
    }
    to {
      transform: translateY(0) scale(1);
    }
  }

@media (prefers-reduced-motion: reduce) {
    .home-link-card {
      animation: none;
    }

    .home-link-anchor,
    .public-language-switcher__button {
      transition: none;
    }
  }

.home-album-card{
  margin-bottom: 2.5rem;
  overflow: hidden;
  border-radius: 1rem;
  border-width: 1px;
  padding: 0px;
    background-color: rgb(var(--md-sys-color-secondary) / 0.72);
    border-color: rgb(var(--md-sys-color-outline) / 0.12);
    backdrop-filter: blur(12px);
    box-shadow: 0 18px 48px -34px rgb(var(--color-accent) / 0.45);
}

.home-album-card__title{
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1.25rem;
  font-family: var(--theme-font-display), UnifrakturMaguntia, cursive;
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
    color: rgb(var(--md-sys-color-tertiary) / 1);
}

.home-album-card__description{
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.5rem;
  font-family: Merriweather, serif;
    color: rgb(var(--md-sys-color-tertiary) / 0.72);
}

.home-album-grid{
  margin-top: 1.25rem;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.25rem;
  padding: 0.25rem;
}

#coverage-dashboard-card .home-album-grid > div,
#seo-central-card .home-album-grid > div,
#core-web-vitals-card .home-album-grid > div {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
}


.blog-editor-settings-panel .home-album-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
}

#settings-form-site [data-settings-panel~='api'] > .home-album-grid {
  width: 100%;
  min-width: 0;
}

.home-album-tile{
  position: relative;
  width: 100%;
  cursor: pointer;
  overflow: hidden;
  border-width: 0px;
  padding: 0px;
  text-align: left;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.home-album-tile:focus-visible{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-primary) / 0.7);
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: rgb(var(--color-primary) / 1);
}

.home-album-tile {
    aspect-ratio: 2 / 3;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-color: rgb(var(--color-secondary) / 0.72);
    border-radius: 0.375rem;
    box-shadow: 0 12px 28px -24px rgb(0 0 0 / 0.62);
  }

.home-album-tile:hover,
  .home-album-tile:focus-visible {
    border-color: rgb(var(--md-sys-color-primary) / 0.34);
    box-shadow: 0 18px 38px -28px rgb(var(--color-accent) / 0.55);
  }

.home-album-tile__image{
  pointer-events: none;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 500ms;
  will-change: transform;
    background-color: rgb(var(--color-secondary) / 0.85);
}

.home-album-tile:hover .home-album-tile__image,
  .home-album-tile:focus-visible .home-album-tile__image {
    transform: scale(1.1);
  }

.home-album-tile__overlay{
  pointer-events: none;
  position: absolute;
  inset: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

#blog-list-view > .home-album-tile__overlay:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .home-album-tile__overlay:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .home-album-tile__overlay:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .home-album-tile__overlay:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .home-album-tile__overlay:first-child,
.blog-admin-shell > [data-blog-view="list"] > .home-album-tile__overlay:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .home-album-tile__overlay:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .home-album-tile__overlay.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.home-album-tile__overlay.justify-between {
  margin-bottom: 0.75rem;
}

.home-album-tile__overlay {
    background-color: rgb(var(--md-sys-color-primary) / 0);
  }

.home-album-tile:hover .home-album-tile__overlay,
  .home-album-tile:focus-visible .home-album-tile__overlay {
    background-color: rgb(var(--md-sys-color-primary) / 0.2);
  }

.home-album-tile__icon{
  height: 2.5rem;
  width: 2.5rem;
  opacity: 0;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
    color: rgb(var(--md-sys-color-on-primary) / 1);
    filter: drop-shadow(0 2px 8px rgb(0 0 0 / 0.55));
}

.home-album-tile:hover .home-album-tile__icon,
  .home-album-tile:focus-visible .home-album-tile__icon {
    opacity: 1;
  }

.home-poll-card {
    padding: 1.5rem;
    border: 1px solid rgb(var(--md-sys-color-primary) / 0.16);
    border-radius: 1.5rem;
    background-color: rgb(var(--md-sys-color-secondary) / 0.64);
    color: rgb(var(--md-sys-color-tertiary) / 1);
    backdrop-filter: blur(12px);
    box-shadow: 0 18px 46px -34px rgb(var(--color-accent) / 0.48);
  }

@media (min-width: 768px) {
    .home-poll-card {
      padding: 2rem;
    }
  }

.home-poll-card__question {
    margin: 0;
    font-family: var(--theme-font-display, UnifrakturMaguntia), cursive;
    font-size: clamp(2rem, 8vw, 2.75rem);
    line-height: 1.05;
    text-align: center;
    text-wrap: balance;
  }

.home-poll-card__options {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 1.5rem;
  }

.home-poll-option {
    position: relative;
    width: 100%;
    overflow: hidden;
    border: 1px solid rgb(var(--md-sys-color-outline) / 0.14);
    border-radius: 1rem;
    background-color: rgb(0 0 0 / 0.22);
    color: inherit;
    transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
  }

.home-poll-option--active {
    cursor: pointer;
  }

.home-poll-option--active:hover,
  .home-poll-option--active:focus-visible {
    border-color: rgb(var(--md-sys-color-primary) / 0.42);
    background-color: rgb(var(--md-sys-color-primary) / 0.08);
    outline: 2px solid rgb(var(--md-sys-color-primary) / 0.24);
    outline-offset: 2px;
    transform: translateY(-1px);
  }

.home-poll-option--voted {
    cursor: default;
  }

.home-poll-option__bar {
    position: absolute;
    inset-block: 0;
    left: 0;
    border-radius: inherit;
    background: linear-gradient(90deg, rgb(var(--md-sys-color-primary) / 0.32), rgb(var(--md-sys-color-primary) / 0.12));
    transition: width 1000ms ease;
  }

.home-poll-option__row {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
  }

.home-poll-option__text {
    font-family: Merriweather, serif;
    font-weight: 700;
    line-height: 1.35;
    text-align: left;
  }

.home-poll-option__result {
    color: rgb(var(--md-sys-color-primary) / 0.95);
    font-family: Montserrat, sans-serif;
    font-size: 0.85rem;
    font-weight: 800;
  }

.home-poll-option__vote-label {
    color: rgb(var(--md-sys-color-primary) / 1);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0;
    transition: opacity 180ms ease;
  }

.home-poll-option:hover .home-poll-option__vote-label,
  .home-poll-option:focus-visible .home-poll-option__vote-label {
    opacity: 1;
  }

.home-poll-card__footer {
    margin-top: 1.5rem;
    color: rgb(var(--md-sys-color-tertiary) / 0.48);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
  }

.home-poll-card--complete {
    text-align: center;
  }

.home-poll-card__complete-message {
    color: rgb(var(--md-sys-color-tertiary) / 0.92);
    font-size: 1rem;
    line-height: 1.7;
  }

.admin-modal-backdrop{
  position: fixed;
  inset: 0px;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgb(0 0 0 / 0.7);
  padding-left: 1rem;
  padding-right: 1rem;
  --tw-backdrop-blur: blur(4px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

#blog-list-view > .admin-modal-backdrop:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-modal-backdrop:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-modal-backdrop:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-modal-backdrop:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-modal-backdrop:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-modal-backdrop:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-modal-backdrop:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-modal-backdrop.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-modal-backdrop.justify-between {
  margin-bottom: 0.75rem;
}

.admin-modal-backdrop {
    isolation: isolate;
  }

.admin-modal-content{
  width: 100%;
  max-width: 28rem;
}

.admin-modal-content > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.admin-modal-content{
  padding: 1.5rem;
}

#photo-upload-form > .admin-modal-content {
  display: contents;
}

.admin-modal-content {
    border: 1px solid rgb(var(--admin-primary) / 0.2);
    border-radius: 1rem;
    background:
      linear-gradient(145deg, rgb(var(--admin-primary) / 0.07), transparent 42%),
      rgb(var(--admin-panel) / 0.98);
    box-shadow:
      0 32px 90px -34px rgb(0 0 0 / 0.88),
      0 0 0 1px rgb(255 255 255 / 0.025) inset;
  }

.admin-modal-content--wide {
    max-width: 40rem;
  }

.admin-modal-content--gallery {
    max-width: 56rem;
  }

.admin-modal-title {
    color: rgb(var(--admin-fg) / 1);
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: -0.015em;
    line-height: 1.25;
  }

.link-card__stats{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-size: 0.75rem;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}


#dashboard-screen .link-card__stats {
  color: rgb(var(--admin-muted) / 1);
  letter-spacing: 0;
  text-transform: none;
}

#blog-list-view > .link-card__stats:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card__stats:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card__stats:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card__stats:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .link-card__stats:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card__stats:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card__stats:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .link-card__stats.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.link-card__stats.justify-between {
  margin-bottom: 0.75rem;
}

.md3-badge{
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  border-width: 1px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 500;
}

.profile-bio-card .flex.md3-badge.justify-between {
  margin-bottom: 0.75rem;
}

.md3-badge {
    line-height: 1.2;
    white-space: nowrap;
  }

.md3-badge--neutral {
    border-color: rgb(var(--md-sys-color-outline) / 0.4);
    background-color: transparent;
    color: rgb(var(--md-sys-color-tertiary) / 0.92);
  }

.md3-badge--primary {
    border-color: transparent;
    background-color: rgb(var(--color-primary) / 0.92);
    color: rgb(var(--md-sys-color-on-primary) / 1);
  }

.md3-badge--error {
    border-color: rgb(var(--md-sys-color-error) / 0.45);
    background-color: rgb(var(--md-sys-color-error) / 0.1);
    color: rgb(var(--md-sys-color-error) / 1);
  }

body[data-admin-theme='light'] .link-card__stats{
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.link-card__stats-count{
  font-weight: 600;
  letter-spacing: 0.025em;
}

.admin-modal-description {
    margin-top: 0.5rem;
    color: rgb(var(--admin-muted) / 0.94);
    font-size: 0.875rem;
    line-height: 1.6;
  }

.admin-modal-actions{
  display: flex;
  flex-direction: column-reverse;
  gap: 0.75rem;
}

#blog-list-view > .admin-modal-actions:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-modal-actions:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-modal-actions:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-modal-actions:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-modal-actions:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-modal-actions:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-modal-actions:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-modal-actions.items-center.justify-between {
  margin-bottom: 0.75rem;
}

@media (min-width: 640px){

  .admin-modal-actions{
    flex-direction: row;
    justify-content: flex-end;
  }
}

.admin-modal-actions {
    border-top: 1px solid rgb(var(--admin-border-soft) / 0.14);
    padding-top: 1rem;
  }

.admin-modal-cancel{
  width: 100%;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 640px){

  .admin-modal-cancel{
    width: auto;
  }
}

.admin-modal-confirm{
  width: 100%;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 640px){

  .admin-modal-confirm{
    width: auto;
  }
}

.admin-modal-confirm.btn-surface--destructive {
    border-color: transparent !important;
    background: rgb(var(--admin-danger) / 1) !important;
    color: #fff !important;
  }

.admin-modal-confirm.btn-surface--destructive:hover:not(:disabled),
  .admin-modal-confirm.btn-surface--destructive:focus-visible {
    background: rgb(var(--admin-danger) / 0.86) !important;
  }

.admin-dashboard{
  position: relative;
  min-height: 100vh;
}

@media (min-width: 1024px){

  .admin-dashboard{
    display: flex;
  }
}

.admin-dashboard {
    background-color: rgb(var(--color-primary) / 1);
    color: rgb(var(--color-light-text) / calc(var(--color-light-text-alpha, 1) * 0.95));
  }

.admin-sidebar{
  position: fixed;
  top: 0px;
  bottom: 0px;
  left: 0px;
  z-index: 40;
  display: flex;
  width: 280px;
  max-width: 100%;
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  flex-direction: column;
  gap: 1.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  --tw-backdrop-blur: blur(16px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  transition-property: transform;
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

#blog-list-view > .admin-sidebar:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-sidebar:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-sidebar:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-sidebar:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-sidebar:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-sidebar.items-center.justify-between {
  margin-bottom: 0.75rem;
}

@media (min-width: 1024px){

  .admin-sidebar{
    position: static;
    width: 280px;
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
}

.admin-sidebar {
    border-right: 1px solid rgb(var(--admin-card-border) / 0.65);
    background-color: rgb(var(--admin-card-surface) / 0.92);
    box-shadow: 0 25px 60px -25px rgb(15 23 42 / 0.45);
  }

.admin-sidebar--open{
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.admin-sidebar__backdrop{
  position: fixed;
  inset: 0px;
  z-index: 30;
  background-color: rgb(0 0 0 / 0.6);
  --tw-backdrop-blur: blur(4px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  transition-property: opacity;
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

@media (min-width: 1024px){

  .admin-sidebar__backdrop.public-language-switcher {
    display: none;
  }

  .admin-sidebar__backdrop.admin-main__actions {
    display: none;
  }

  .admin-sidebar__backdrop{
    display: none;
  }
}

.admin-sidebar__brand{
  display: flex;
  align-items: center;
  gap: 0.75rem;
  border-radius: 0.75rem;
  border-width: 1px;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

#blog-list-view > .admin-sidebar__brand:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-sidebar__brand:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-sidebar__brand:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-sidebar__brand:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-sidebar__brand:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__brand:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__brand:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-sidebar__brand.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-sidebar__brand.justify-between {
  margin-bottom: 0.75rem;
}

.admin-sidebar__brand {
    border-color: rgb(var(--admin-card-border) / 0.5);
    background-color: rgb(var(--color-secondary) / 0.55);
  }

.admin-sidebar__brand-accent{
  font-size: 1.125rem;
  line-height: 1.75rem;
  --tw-text-opacity: 1;
  color: rgb(var(--color-accent) / var(--tw-text-opacity, 1));
}

.admin-sidebar__brand-label{
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
    letter-spacing: 0.2em;
    color: rgb(var(--admin-muted-text) / 0.9);
}

.admin-sidebar__brand-subtitle{
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 700;
    color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
}

.admin-sidebar__nav{
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  overflow-y: auto;
  padding-right: 0.5rem;
}

#blog-list-view > .admin-sidebar__nav:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-sidebar__nav:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-sidebar__nav:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-sidebar__nav:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-sidebar__nav:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__nav:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__nav:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-sidebar__nav.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.admin-sidebar__nav-button{
  display: inline-flex;
  width: 100%;
  align-items: center;
  gap: 0.75rem;
  border-radius: 0.5rem;
  border-right-width: 2px;
  border-right-color: transparent;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: left;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.profile-bio-card .flex.admin-sidebar__nav-button.justify-between {
  margin-bottom: 0.75rem;
}

.admin-sidebar__nav-button:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.admin-sidebar__nav-button:focus-visible{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-accent) / 0.7);
}

.admin-sidebar__nav-button {
    color: rgb(var(--md-sys-color-tertiary) / 0.8);
    background-color: transparent;
  }

.admin-sidebar__nav-button-icon{
  display: block;
  height: 1.25rem;
  width: 1.25rem;
  flex-shrink: 0;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    color: currentColor;
    fill: none;
    stroke: currentColor;
}

.admin-sidebar__nav-button-icon use {
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

.admin-sidebar__nav-button:hover {
    background-color: rgb(var(--md-sys-color-surface) / 1);
    color: rgb(var(--md-sys-color-primary) / 1);
  }

.admin-sidebar__nav-button:hover .admin-sidebar__nav-button-icon,
  .admin-sidebar__nav-button[aria-current="page"] .admin-sidebar__nav-button-icon{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.admin-sidebar__nav-button[aria-current="page"] {
    background-color: rgb(var(--md-sys-color-primary) / 0.1);
    border-right-color: rgb(var(--md-sys-color-primary) / 1);
    color: rgb(var(--md-sys-color-primary) / 1);
  }

.admin-sidebar__footer{
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  border-radius: 0.75rem;
  border-width: 1px;
  padding: 1rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

#blog-list-view > .admin-sidebar__footer:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-sidebar__footer:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-sidebar__footer:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-sidebar__footer:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-sidebar__footer:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__footer:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__footer:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-sidebar__footer.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.admin-sidebar__footer {
    border-color: rgb(var(--admin-card-border) / 0.55);
    background-color: rgb(var(--admin-card-surface) / 0.65);
  }

.admin-sidebar__footer-label{
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
    color: rgb(var(--admin-muted-text) / 0.9);
}

.admin-sidebar__language-wrapper{
  margin-top: 0.75rem;
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 0.5rem;
}

#blog-list-view > .admin-sidebar__language-wrapper:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-sidebar__language-wrapper:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-sidebar__language-wrapper:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-sidebar__language-wrapper:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-sidebar__language-wrapper:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__language-wrapper:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-sidebar__language-wrapper:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-sidebar__language-wrapper.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.admin-sidebar__language-switcher{
  width: 100%;
  border-radius: 0.375rem;
  border-width: 1px;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.admin-sidebar__language-switcher:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-accent) / 0.7);
}

.admin-sidebar__language-switcher {
    border-color: rgb(var(--admin-card-border) / 0.55);
    background-color: rgb(var(--color-secondary) / 1);
    color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
  }

.admin-sidebar__logout{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.profile-bio-card .flex.admin-sidebar__logout.justify-between {
  margin-bottom: 0.75rem;
}

.admin-sidebar__logout:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
}

.admin-sidebar__logout:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.admin-sidebar__logout:focus-visible{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1));
}

.admin-main{
  flex: 1 1 0%;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2.5rem;
  padding-top: 1.5rem;
}

@media (min-width: 640px){

  .admin-main{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

@media (min-width: 1024px){

  .admin-main{
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

.admin-main {
    background-color: rgb(var(--color-secondary) / 0.9);
  }

.admin-main__header{
  position: sticky;
  top: 0px;
  z-index: 30;
  margin-bottom: 2rem;
  display: flex;
  height: 4rem;
  align-items: center;
  gap: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
}

#blog-list-view > .admin-main__header:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-main__header:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-main__header:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-main__header:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-main__header:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-main__header:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-main__header:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-main__header.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-main__header.justify-between {
  margin-bottom: 0.75rem;
}

.admin-main__header {
    background-color: rgb(var(--md-sys-color-surface) / 0.8);
    border-bottom: 1px solid rgb(var(--md-sys-color-outline) / 0.2);
    backdrop-filter: blur(10px);
  }

.admin-main__header-group{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 1rem;
}

#blog-list-view > .admin-main__header-group:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-main__header-group:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-main__header-group:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-main__header-group:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-main__header-group:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-main__header-group:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-main__header-group:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-main__header-group.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-main__header-group.justify-between {
  margin-bottom: 0.75rem;
}

.admin-main__theme-group{
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#blog-list-view > .admin-main__theme-group:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-main__theme-group:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-main__theme-group:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-main__theme-group:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-main__theme-group:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-main__theme-group:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-main__theme-group:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-main__theme-group.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-main__theme-group.justify-between {
  margin-bottom: 0.75rem;
}

.admin-main__theme-label{
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
    color: rgb(var(--admin-muted-text) / 0.9);
}

.admin-main__theme-select{
  min-width: 11rem;
  border-radius: 0.5rem;
  border-width: 1px;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.admin-main__theme-select:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.admin-main__theme-select {
    border-color: rgb(var(--md-sys-color-outline) / 0.4);
    background-color: rgb(var(--md-sys-color-secondary) / 1);
    color: rgb(var(--md-sys-color-tertiary) / 1);
  }

.admin-main__theme-select:focus {
    --tw-ring-color: rgb(var(--md-sys-color-primary) / 1);
  }

.admin-main__actions{
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

#blog-list-view > .admin-main__actions:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-main__actions:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-main__actions:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-main__actions:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-main__actions:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-main__actions:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-main__actions:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-main__actions.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-main__actions.justify-between {
  margin-bottom: 0.75rem;
}

.admin-main__actions.hidden {
    display: none;
  }

.admin-login__brand{
  margin-bottom: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  text-align: center;
}

html[data-app-context='public'] #blog-posts-section > .admin-login__brand {
  margin-bottom: 1.5rem;
}

#blog-list-view > .admin-login__brand:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-login__brand:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-login__brand:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-login__brand:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-login__brand:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-login__brand:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-login__brand:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-login__brand.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-login__brand.justify-between {
  margin-bottom: 0.75rem;
}

.admin-login__brand-logo{
  display: flex;
  height: 10rem;
  width: 10rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(244 114 182 / 0.4);
}

#blog-list-view > .admin-login__brand-logo:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-login__brand-logo:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-login__brand-logo:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-login__brand-logo:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-login__brand-logo:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-login__brand-logo:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-login__brand-logo:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-login__brand-logo.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.admin-login__brand-logo.justify-between {
  margin-bottom: 0.75rem;
}

body[data-admin-theme='light'] .admin-login__brand-logo{
  --tw-ring-color: rgb(236 72 153 / 0.3);
}

.admin-login__brand-logo-image{
  height: 3.5rem;
  width: 3.5rem;
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.admin-login__brand-caption{
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.32em;
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}


#dashboard-screen .admin-login__brand-caption {
  color: rgb(var(--admin-muted) / 1);
  letter-spacing: 0;
  text-transform: none;
}

body[data-admin-theme='light'] .admin-login__brand-caption{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.admin-main__action-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  font-weight: 600;
}

.profile-bio-card .flex.admin-main__action-btn.justify-between {
  margin-bottom: 0.75rem;
}

.admin-main__action-btn--success{
  position: relative;
}

.admin-main__action-btn-check{
  display: inline-flex;
  height: 1.25rem;
  width: 1.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
}

.profile-bio-card .flex.admin-main__action-btn-check.justify-between {
  margin-bottom: 0.75rem;
}

.admin-main__action-btn-check {
    background-color: rgba(255, 255, 255, 0.22);
    color: rgba(255, 255, 255, 0.98);
  }

body[data-admin-theme='light'] .admin-main__action-btn-check {
    background-color: rgba(15, 23, 42, 0.1);
    color: rgba(15, 23, 42, 0.82);
  }

.admin-main__action-btn-check-icon{
  height: 0.875rem;
  width: 0.875rem;
}

.admin-sidebar__toggle{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  border-width: 1px;
  padding: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(var(--color-light-text) / var(--tw-text-opacity, 1));
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.profile-bio-card .flex.admin-sidebar__toggle.justify-between {
  margin-bottom: 0.75rem;
}

@media (min-width: 1024px){

  .admin-sidebar__toggle.public-language-switcher {
    display: none;
  }

  .admin-sidebar__toggle.admin-main__actions {
    display: none;
  }
}

.admin-sidebar__toggle:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.admin-sidebar__toggle:focus-visible{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--color-accent) / var(--tw-ring-opacity, 1));
}

@media (min-width: 1024px){

  .admin-sidebar__toggle{
    display: none;
  }
}

.admin-sidebar__toggle {
    border-color: rgb(var(--admin-card-border) / 0.6);
    background-color: rgb(var(--color-primary) / 0.9);
  }

.admin-sidebar__toggle:hover {
    background-color: rgb(var(--color-primary) / 1);
  }

.admin-sidebar__toggle:focus-visible {
    --tw-ring-color: rgb(var(--color-accent) / 1);
  }

.admin-sidebar__toggle-icon{
  height: 1.75rem;
  width: 1.75rem;
}

.admin-main__title{
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
    color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
}

.admin-main__content{
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  padding-bottom: 2.5rem;
}

#blog-list-view > .admin-main__content:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .admin-main__content:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .admin-main__content:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .admin-main__content:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .admin-main__content:first-child,
.blog-admin-shell > [data-blog-view="list"] > .admin-main__content:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .admin-main__content:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .admin-main__content.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.admin-album__archive-icon{
  height: 1.1rem;
  width: 1.1rem;
}

.admin-section > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

#section-profile-appearance > .admin-section,
#section-site-settings > .admin-section,
#section-themes > .admin-section {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}


.settings-admin-shell[data-active-settings-tab='adult'] [data-settings-panel~='adult'] > .admin-section > :not([data-settings-adult-fields]) {
  display: none;
}


#section-themes > .admin-section {
  width: 100%;
  max-width: none;
}


#section-themes > .admin-section > #section-themes-title {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

@media (min-width: 1024px){

  .admin-section > :not([hidden]) ~ :not([hidden]){
    --tw-space-y-reverse: 0;
    margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(2rem * var(--tw-space-y-reverse));
  }
}

.admin-section__title{
  margin-bottom: 1.5rem;
}

html[data-app-context='public'] #blog-posts-section > .admin-section__title {
  margin-bottom: 1.5rem;
}

.admin-section__title:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.admin-section__title {
    color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
  }

.admin-card{
  border-radius: 1rem;
  border-width: 1px;
  border-color: rgb(var(--md-sys-color-outline) / 0.2);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.admin-card--panel{
  border-radius: 0.5rem;
  border-color: rgb(var(--md-sys-color-outline) / 0.5);
    background-color: rgb(var(--admin-card-surface) / 0.62);
    border-color: rgb(var(--admin-card-border) / 0.58);
}

.admin-card--muted{
  border-radius: 0.5rem;
  border-width: 1px;
    background-color: rgb(var(--admin-card-surface) / 0.42);
    border-color: rgb(var(--admin-card-border) / 0.52);
}

.admin-card--tile{
  border-radius: 0.375rem;
  border-width: 1px;
    background-color: rgb(var(--admin-card-surface) / 0.74);
    border-color: rgb(var(--admin-card-border) / 0.58);
}

.admin-card--table{
  overflow: hidden;
  border-radius: 0.75rem;
  border-width: 1px;
    background-color: rgb(var(--admin-card-surface) / 0.62);
    border-color: rgb(var(--admin-card-border) / 0.58);
}

.admin-card--pad-none {
    padding: 0;
  }

.admin-card--pad-xs {
    padding: 0.75rem;
  }

.admin-card--pad-sm {
    padding: 1rem;
  }

.admin-card--pad-md {
    padding: 1.25rem;
  }

body[data-admin-theme='hello-kitty'] .admin-card{
  border-radius: 1.5rem;
  border-width: 2px;
  border-color: rgb(var(--color-primary) / 0.3);
    box-shadow: 0 8px 0 0 rgba(255, 105, 180, 0.2);
}

body[data-admin-theme='hello-kitty'] .admin-card--panel,
  body[data-admin-theme='hello-kitty'] .admin-card--muted,
  body[data-admin-theme='hello-kitty'] .admin-card--tile,
  body[data-admin-theme='hello-kitty'] .admin-card--table{
  border-radius: 1rem;
}

.link-card{
  display: flex;
  height: 100%;
  flex-direction: column;
  gap: 1.5rem;
  border-radius: 0.75rem;
  border-width: 1px;
  padding: 1.25rem;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

#blog-list-view > .link-card:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .link-card:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .link-card.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.link-card {
    border-color: rgba(55, 65, 81, 0.7);
    background-color: rgb(var(--color-secondary) / 0.65);
    box-shadow: 0 24px 48px -24px rgba(15, 23, 42, 0.55);
  }

body[data-admin-theme='light'] .link-card {
    border-color: rgba(203, 213, 225, 0.75);
    background-color: rgba(255, 255, 255, 0.85);
    box-shadow: 0 20px 42px -22px rgba(148, 163, 184, 0.55);
  }

.link-card__header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom-width: 1px;
  padding-bottom: 1rem;
}

#section-profile-appearance .link-card__header,
#section-site-settings .link-card__header,
#section-themes .link-card__header {
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
  border-bottom-color: rgb(232 68 122 / 0.14);
}

#section-themes #layout-effects-card > .link-card__header {
  border-color: rgb(var(--admin-border-soft) / 0.14);
}

#blog-list-view > .link-card__header:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card__header:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card__header:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card__header:first-child > .flex {
    width: 100%;
  }
}

#section-site-settings .link-card__header,
#section-security .link-card__header {
  border-color: rgb(232 68 122 / 0.14);
}

.settings-admin-shell[data-active-settings-tab='adult'] [data-settings-panel~='adult'] > .link-card__header {
  display: none;
}

.links-admin-shell > .link-card__header:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card__header:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card__header:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-identity-card > .link-card__header,
.profile-theme-card > .link-card__header {
  border-color: rgb(232 68 122 / 0.14);
}

.profile-theme-card > .link-card__header {
  margin-bottom: 1.35rem;
  padding-bottom: 1rem;
  border-bottom-color: rgb(232 68 122 / 0.12);
}

.profile-theme-card > .link-card__header p {
  color: rgb(190 174 218 / 0.76);
  font-size: 0.82rem;
}

.profile-bio-card .link-card__header.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.link-card__header.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.items-center.link-card__header {
  margin-bottom: 0.75rem;
}

.link-card__header {
    border-color: rgba(55, 65, 81, 0.6);
  }

body[data-admin-theme='light'] .link-card__header {
    border-color: rgba(203, 213, 225, 0.6);
  }

.link-card__body{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  gap: 1.5rem;
}

#blog-list-view > .link-card__body:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card__body:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card__body:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card__body:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .link-card__body:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card__body:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card__body:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .link-card__body.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.link-card__fields{
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1rem;
}

#coverage-dashboard-card .link-card__fields > div,
#seo-central-card .link-card__fields > div,
#core-web-vitals-card .link-card__fields > div {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
}


.blog-editor-settings-panel .link-card__fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
}

#settings-form-site [data-settings-panel~='api'] > .link-card__fields {
  width: 100%;
  min-width: 0;
}

@media (min-width: 768px){

  .link-card__fields{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.link-card__controls{
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1rem;
}

#coverage-dashboard-card .link-card__controls > div,
#seo-central-card .link-card__controls > div,
#core-web-vitals-card .link-card__controls > div {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
}


.blog-editor-settings-panel .link-card__controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
}

#settings-form-site [data-settings-panel~='api'] > .link-card__controls {
  width: 100%;
  min-width: 0;
}

@media (min-width: 768px){

  .link-card__controls{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.link-card__actions{
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#blog-list-view > .link-card__actions:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card__actions:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card__actions:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card__actions:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .link-card__actions:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card__actions:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card__actions:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .link-card__actions.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.profile-bio-card .flex.link-card__actions.justify-between {
  margin-bottom: 0.75rem;
}

.link-card__language{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

#blog-list-view > .link-card__language:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card__language:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card__language:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card__language:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .link-card__language:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card__language:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card__language:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .link-card__language.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.sr-only{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.pointer-events-none{
  pointer-events: none;
}

.pointer-events-auto{
  pointer-events: auto;
}

.\!visible{
  visibility: visible !important;
}

.visible{
  visibility: visible;
}

.collapse{
  visibility: collapse;
}

.static{
  position: static;
}

.fixed{
  position: fixed;
}

.absolute{
  position: absolute;
}

.relative{
  position: relative;
}

.sticky{
  position: sticky;
}

.inset-0{
  inset: 0px;
}

.inset-y-0{
  top: 0px;
  bottom: 0px;
}

.bottom-0{
  bottom: 0px;
}

.bottom-4{
  bottom: 1rem;
}

.bottom-8{
  bottom: 2rem;
}

.left-0{
  left: 0px;
}

.left-4{
  left: 1rem;
}

.right-3{
  right: 0.75rem;
}

.right-4{
  right: 1rem;
}

.right-6{
  right: 1.5rem;
}

.right-8{
  right: 2rem;
}

.top-6{
  top: 1.5rem;
}

.isolate{
  isolation: isolate;
}

.z-10{
  z-index: 10;
}

.z-50{
  z-index: 50;
}

.z-\[10000\]{
  z-index: 10000;
}

.z-\[100\]{
  z-index: 100;
}

.z-\[9999\]{
  z-index: 9999;
}

.col-span-2{
  grid-column: span 2 / span 2;
}

.m-0{
  margin: 0px;
}

.mx-auto{
  margin-left: auto;
  margin-right: auto;
}

.my-10{
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

.my-12{
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.my-4{
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.-ml-1{
  margin-left: -0.25rem;
}

.-mt-28{
  margin-top: -7rem;
}

.mb-0\.5{
  margin-bottom: 0.125rem;
}

.mb-1{
  margin-bottom: 0.25rem;
}

.mb-2{
  margin-bottom: 0.5rem;
}

.mb-3{
  margin-bottom: 0.75rem;
}

.mb-4{
  margin-bottom: 1rem;
}

.mb-6{
  margin-bottom: 1.5rem;
}

.mb-8{
  margin-bottom: 2rem;
}

.ml-1{
  margin-left: 0.25rem;
}

.ml-2{
  margin-left: 0.5rem;
}

.mr-2{
  margin-right: 0.5rem;
}

.mt-1{
  margin-top: 0.25rem;
}

.mt-10{
  margin-top: 2.5rem;
}

.mt-12{
  margin-top: 3rem;
}

.mt-2{
  margin-top: 0.5rem;
}

.mt-3{
  margin-top: 0.75rem;
}

.mt-4{
  margin-top: 1rem;
}

.mt-5{
  margin-top: 1.25rem;
}

.mt-6{
  margin-top: 1.5rem;
}

.mt-8{
  margin-top: 2rem;
}

.block{
  display: block;
}

.inline-block{
  display: inline-block;
}

.inline{
  display: inline;
}

.flex{
  display: flex;
}

.inline-flex{
  display: inline-flex;
}

.table{
  display: table;
}

.\!grid{
  display: grid !important;
}

.grid{
  display: grid;
}

.hidden{
  display: none;
}

.aspect-square{
  aspect-ratio: 1 / 1;
}

.aspect-video{
  aspect-ratio: 16 / 9;
}

.h-1{
  height: 0.25rem;
}

.h-10{
  height: 2.5rem;
}

.h-16{
  height: 4rem;
}

.h-24{
  height: 6rem;
}

.h-3{
  height: 0.75rem;
}

.h-3\.5{
  height: 0.875rem;
}

.h-4{
  height: 1rem;
}

.h-5{
  height: 1.25rem;
}

.h-6{
  height: 1.5rem;
}

.h-8{
  height: 2rem;
}

.h-auto{
  height: auto;
}

.h-full{
  height: 100%;
}

.max-h-\[40vh\]{
  max-height: 40vh;
}

.max-h-\[90vh\]{
  max-height: 90vh;
}

.max-h-full{
  max-height: 100%;
}

.min-h-8{
  min-height: 2rem;
}

.min-h-\[120px\]{
  min-height: 120px;
}

.min-h-screen{
  min-height: 100vh;
}

.w-1\/3{
  width: 33.333333%;
}

.w-11\/12{
  width: 91.666667%;
}

.w-12{
  width: 3rem;
}

.w-16{
  width: 4rem;
}

.w-2\/3{
  width: 66.666667%;
}

.w-20{
  width: 5rem;
}

.w-24{
  width: 6rem;
}

.w-3\.5{
  width: 0.875rem;
}

.w-3\/4{
  width: 75%;
}

.w-4{
  width: 1rem;
}

.w-5{
  width: 1.25rem;
}

.w-5\/6{
  width: 83.333333%;
}

.w-6{
  width: 1.5rem;
}

.w-8{
  width: 2rem;
}

.w-full{
  width: 100%;
}

.w-max{
  width: -moz-max-content;
  width: max-content;
}

.min-w-0{
  min-width: 0px;
}

.min-w-full{
  min-width: 100%;
}

.max-w-2xl{
  max-width: 42rem;
}

.max-w-3xl{
  max-width: 48rem;
}

.max-w-full{
  max-width: 100%;
}

.max-w-md{
  max-width: 28rem;
}

.max-w-none{
  max-width: none;
}

.max-w-prose{
  max-width: 65ch;
}

.max-w-sm{
  max-width: 24rem;
}

.max-w-xl{
  max-width: 36rem;
}

.max-w-xs{
  max-width: 20rem;
}

.flex-1{
  flex: 1 1 0%;
}

.flex-shrink-0{
  flex-shrink: 0;
}

.shrink-0{
  flex-shrink: 0;
}

.translate-y-0{
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-4{
  --tw-translate-y: 1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-6{
  --tw-translate-y: 1.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes pulse{

  50%{
    opacity: .5;
  }
}

.animate-pulse{
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes spin{

  to{
    transform: rotate(360deg);
  }
}

.animate-spin{
  animation: spin 1s linear infinite;
}

.cursor-help{
  cursor: help;
}

.cursor-pointer{
  cursor: pointer;
}

.select-none{
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.resize-none{
  resize: none;
}

.resize-y{
  resize: vertical;
}

.resize{
  resize: both;
}

.list-disc{
  list-style-type: disc;
}

.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.flex-col{
  flex-direction: column;
}

.flex-wrap{
  flex-wrap: wrap;
}

.items-start{
  align-items: flex-start;
}

.items-center{
  align-items: center;
}

.items-stretch{
  align-items: stretch;
}

.justify-start{
  justify-content: flex-start;
}

.justify-end{
  justify-content: flex-end;
}

.justify-center{
  justify-content: center;
}

.justify-between{
  justify-content: space-between;
}

.gap-1{
  gap: 0.25rem;
}

.gap-16{
  gap: 4rem;
}

.gap-2{
  gap: 0.5rem;
}

.gap-3{
  gap: 0.75rem;
}

.gap-4{
  gap: 1rem;
}

.gap-5{
  gap: 1.25rem;
}

.gap-6{
  gap: 1.5rem;
}

.gap-8{
  gap: 2rem;
}

.space-x-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-y-1 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}

.space-y-10 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2.5rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-8 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}

.divide-y > :not([hidden]) ~ :not([hidden]){
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-gray-800 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity: 1;
  border-color: rgb(31 41 55 / var(--tw-divide-opacity, 1));
}

.divide-outline\/30 > :not([hidden]) ~ :not([hidden]){
  border-color: rgb(var(--md-sys-color-outline) / 0.3);
}

.overflow-auto{
  overflow: auto;
}

.overflow-hidden{
  overflow: hidden;
}

.overflow-x-auto{
  overflow-x: auto;
}

.whitespace-nowrap{
  white-space: nowrap;
}

.break-words{
  overflow-wrap: break-word;
}

.break-all{
  word-break: break-all;
}

.rounded{
  border-radius: 0.25rem;
}

.rounded-2xl{
  border-radius: 1rem;
}

.rounded-3xl{
  border-radius: 1.5rem;
}

.rounded-full{
  border-radius: 9999px;
}

.rounded-lg{
  border-radius: 0.5rem;
}

.rounded-md{
  border-radius: 0.375rem;
}

.rounded-xl{
  border-radius: 0.75rem;
}

.border{
  border-width: 1px;
}

.border-2{
  border-width: 2px;
}

.border-4{
  border-width: 4px;
}

.border-b{
  border-bottom-width: 1px;
}

.border-l-4{
  border-left-width: 4px;
}

.border-t{
  border-top-width: 1px;
}

.border-dashed{
  border-style: dashed;
}

.border-accent{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-accent) / var(--tw-border-opacity, 1));
}

.border-emerald-400\/40{
  border-color: rgb(52 211 153 / 0.4);
}

.border-error{
  --tw-border-opacity: 1;
  border-color: rgb(var(--md-sys-color-error) / var(--tw-border-opacity, 1));
}

.border-error\/50{
  border-color: rgb(var(--md-sys-color-error) / 0.5);
}

.border-gray-600{
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
}

.border-gray-700{
  --tw-border-opacity: 1;
  border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}

.border-gray-700\/20{
  border-color: rgb(55 65 81 / 0.2);
}

.border-gray-700\/30{
  border-color: rgb(55 65 81 / 0.3);
}

.border-gray-700\/60{
  border-color: rgb(55 65 81 / 0.6);
}

.border-outline\/10{
  border-color: rgb(var(--md-sys-color-outline) / 0.1);
}

.border-outline\/20{
  border-color: rgb(var(--md-sys-color-outline) / 0.2);
}

.border-outline\/40{
  border-color: rgb(var(--md-sys-color-outline) / 0.4);
}

.border-outline\/50{
  border-color: rgb(var(--md-sys-color-outline) / 0.5);
}

.border-outline\/60{
  border-color: rgb(var(--md-sys-color-outline) / 0.6);
}

.border-primary{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.border-secondary\/40{
  border-color: rgb(var(--color-secondary) / 0.4);
}

.border-slate-600\/40{
  border-color: rgb(71 85 105 / 0.4);
}

.border-white{
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.bg-accent{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-accent) / var(--tw-bg-opacity, 1));
}

.bg-black{
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.bg-black\/80{
  background-color: rgb(0 0 0 / 0.8);
}

.bg-black\/90{
  background-color: rgb(0 0 0 / 0.9);
}

.bg-black\/95{
  background-color: rgb(0 0 0 / 0.95);
}

.bg-emerald-500\/15{
  background-color: rgb(16 185 129 / 0.15);
}

.bg-error{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--md-sys-color-error) / var(--tw-bg-opacity, 1));
}

.bg-primary{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.bg-primary\/10{
  background-color: rgb(var(--color-primary) / 0.1);
}

.bg-primary\/15{
  background-color: rgb(var(--color-primary) / 0.15);
}

.bg-primary\/20{
  background-color: rgb(var(--color-primary) / 0.2);
}

.bg-primary\/40{
  background-color: rgb(var(--color-primary) / 0.4);
}

.bg-primary\/50{
  background-color: rgb(var(--color-primary) / 0.5);
}

.bg-primary\/60{
  background-color: rgb(var(--color-primary) / 0.6);
}

.bg-red-500\/15{
  background-color: rgb(239 68 68 / 0.15);
}

.bg-red-600{
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
}

.bg-secondary{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.bg-secondary\/10{
  background-color: rgb(var(--color-secondary) / 0.1);
}

.bg-secondary\/20{
  background-color: rgb(var(--color-secondary) / 0.2);
}

.bg-secondary\/30{
  background-color: rgb(var(--color-secondary) / 0.3);
}

.bg-secondary\/40{
  background-color: rgb(var(--color-secondary) / 0.4);
}

.bg-secondary\/50{
  background-color: rgb(var(--color-secondary) / 0.5);
}

.bg-secondary\/60{
  background-color: rgb(var(--color-secondary) / 0.6);
}

.bg-secondary\/70{
  background-color: rgb(var(--color-secondary) / 0.7);
}

.bg-slate-900\/40{
  background-color: rgb(15 23 42 / 0.4);
}

.bg-surface{
  --tw-bg-opacity: 1;
  background-color: rgb(var(--md-sys-color-surface) / var(--tw-bg-opacity, 1));
}

.bg-white\/10{
  background-color: rgb(255 255 255 / 0.1);
}

.bg-opacity-50{
  --tw-bg-opacity: 0.5;
}

.object-contain{
  -o-object-fit: contain;
     object-fit: contain;
}

.object-cover{
  -o-object-fit: cover;
     object-fit: cover;
}

.p-0{
  padding: 0px;
}

.p-1{
  padding: 0.25rem;
}

.p-10{
  padding: 2.5rem;
}

.p-2{
  padding: 0.5rem;
}

.p-3{
  padding: 0.75rem;
}

.p-4{
  padding: 1rem;
}

.p-5{
  padding: 1.25rem;
}

.p-6{
  padding: 1.5rem;
}

.p-8{
  padding: 2rem;
}

.px-2{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-3{
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4{
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-6{
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.py-0\.5{
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.py-1{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-12{
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-2{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-2\.5{
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.py-24{
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.py-3{
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-4{
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-6{
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8{
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.pb-12{
  padding-bottom: 3rem;
}

.pb-2{
  padding-bottom: 0.5rem;
}

.pb-4{
  padding-bottom: 1rem;
}

.pb-6{
  padding-bottom: 1.5rem;
}

.pl-5{
  padding-left: 1.25rem;
}

.pr-10{
  padding-right: 2.5rem;
}

.pt-2{
  padding-top: 0.5rem;
}

.text-left{
  text-align: left;
}

.text-center{
  text-align: center;
}

.text-right{
  text-align: right;
}

.align-top{
  vertical-align: top;
}

.font-body{
  font-family: Merriweather, serif;
}

.font-display{
  font-family: var(--theme-font-display), UnifrakturMaguntia, cursive;
}

.font-heading{
  font-family: Cormorant Garamond, serif;
}

.font-mono{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.font-sans{
  font-family: var(--theme-font-sans), Montserrat, sans-serif;
}

.text-2xl{
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-3xl{
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-4xl{
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.text-5xl{
  font-size: 3rem;
  line-height: 1;
}

.text-7xl{
  font-size: 4.5rem;
  line-height: 1;
}

.text-\[0\.65rem\]{
  font-size: 0.65rem;
}

.text-\[11px\]{
  font-size: 11px;
}

.text-base{
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg{
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-sm{
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-xl{
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xs{
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-bold{
  font-weight: 700;
}

.font-medium{
  font-weight: 500;
}

.font-semibold{
  font-weight: 600;
}

.uppercase{
  text-transform: uppercase;
}

.italic{
  font-style: italic;
}

.tabular-nums{
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}

.leading-5{
  line-height: 1.25rem;
}

.leading-6{
  line-height: 1.5rem;
}

.leading-relaxed{
  line-height: 1.625;
}

.leading-tight{
  line-height: 1.25;
}

.tracking-wide{
  letter-spacing: 0.025em;
}

.text-current{
  color: currentColor;
}

.text-dark-text{
  color: rgb(var(--color-light-text) / var(--color-light-text-alpha, 1));
}

.text-emerald-300{
  --tw-text-opacity: 1;
  color: rgb(110 231 183 / var(--tw-text-opacity, 1));
}

.text-emerald-400{
  --tw-text-opacity: 1;
  color: rgb(52 211 153 / var(--tw-text-opacity, 1));
}

.text-error{
  --tw-text-opacity: 1;
  color: rgb(var(--md-sys-color-error) / var(--tw-text-opacity, 1));
}

.text-gray-100{
  --tw-text-opacity: 1;
  color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}

.text-gray-200{
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}

.text-gray-300{
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}

.text-gray-400{
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.text-gray-500{
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-green-400{
  --tw-text-opacity: 1;
  color: rgb(74 222 128 / var(--tw-text-opacity, 1));
}

.text-inherit{
  color: inherit;
}

.text-light-text{
  --tw-text-opacity: 1;
  color: rgb(var(--color-light-text) / var(--tw-text-opacity, 1));
}

.text-primary{
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity, 1));
}

.text-red-300{
  --tw-text-opacity: 1;
  color: rgb(252 165 165 / var(--tw-text-opacity, 1));
}

.text-red-400{
  --tw-text-opacity: 1;
  color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}

.text-red-500{
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.text-tertiary{
  --tw-text-opacity: 1;
  color: rgb(var(--md-sys-color-tertiary) / var(--tw-text-opacity, 1));
}

.text-tertiary\/50{
  color: rgb(var(--md-sys-color-tertiary) / 0.5);
}

.text-tertiary\/60{
  color: rgb(var(--md-sys-color-tertiary) / 0.6);
}

.text-tertiary\/70{
  color: rgb(var(--md-sys-color-tertiary) / 0.7);
}

.text-tertiary\/80{
  color: rgb(var(--md-sys-color-tertiary) / 0.8);
}

.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-white\/60{
  color: rgb(255 255 255 / 0.6);
}

.underline{
  text-decoration-line: underline;
}

.antialiased{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.accent-primary{
  accent-color: rgb(var(--color-primary) / 1);
}

.opacity-0{
  opacity: 0;
}

.opacity-100{
  opacity: 1;
}

.opacity-25{
  opacity: 0.25;
}

.opacity-30{
  opacity: 0.3;
}

.opacity-60{
  opacity: 0.6;
}

.opacity-70{
  opacity: 0.7;
}

.opacity-75{
  opacity: 0.75;
}

.opacity-80{
  opacity: 0.8;
}

.opacity-90{
  opacity: 0.9;
}

.shadow{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-2xl{
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-inner{
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm{
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-xl{
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-accent{
  --tw-shadow-color: rgb(var(--color-accent) / 1);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-primary\/20{
  --tw-shadow-color: rgb(var(--color-primary) / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.outline-none{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.outline{
  outline-style: solid;
}

.blur{
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.drop-shadow-lg{
  --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.drop-shadow-sm{
  --tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / 0.05));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.grayscale{
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.\!filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}

.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-blur-md{
  --tw-backdrop-blur: blur(12px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-sm{
  --tw-backdrop-blur: blur(4px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-filter{
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.transition{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-all{
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-colors{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-opacity{
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-transform{
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.duration-300{
  transition-duration: 300ms;
}

.duration-500{
  transition-duration: 500ms;
}

.ease-linear{
  transition-timing-function: linear;
}

.ease-out{
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

/* ─── Blog Post V3.0 ──────────────────────────────────────────────────────────
     The featured-image is full-width at the top of the card. The .post-hero-title-wrap
     overlaps the image bottom via a negative margin.
     When heroFigure has the Tailwind "hidden" class (display:none), the figure
     contributes zero height -- the negative margin would push the title above the
     card boundary. This rule resets the margin and restores normal top padding so
     the title always renders inside the card even when there is no cover image.
     JS compatibility: all element IDs (post-hero, post-hero-figure, post-title,
     post-meta-bar, post-excerpt, post-body, post-error, post-breadcrumbs) are
     preserved and manipulated only via classList/textContent/src in post.js.
  */

.public-blog-shell {
    max-width: 48rem;
    margin-inline: auto;
    padding: 1rem;
    border: 1px solid rgb(var(--md-sys-color-outline) / 0.2);
    border-radius: 1.5rem;
    background-color: rgb(var(--color-primary) / 0.05);
  }

@media (min-width: 768px) {
    .public-blog-shell {
      padding: 2rem;
    }
  }

.public-blog-card {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid rgb(var(--md-sys-color-outline) / 0.1);
    border-radius: 1rem;
    text-decoration: none;
    touch-action: manipulation;
    backdrop-filter: blur(12px);
    transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
  }

.public-blog-card--archive {
    background-color: rgb(var(--md-sys-color-surface) / 0.84);
    box-shadow: 0 12px 30px -26px rgb(0 0 0 / 0.52);
  }

.public-blog-card--home {
    background-color: rgb(var(--md-sys-color-secondary) / 0.68);
  }

.public-blog-card:hover,
  .public-blog-card:focus-visible {
    border-color: rgb(var(--md-sys-color-primary) / 0.34);
    background-color: rgb(var(--md-sys-color-secondary) / 0.78);
    box-shadow: 0 18px 38px -30px rgb(var(--color-accent) / 0.55);
    outline: 2px solid transparent;
    outline-offset: 4px;
    transform: translateY(-1px);
  }

.public-blog-card:focus-visible {
    outline-color: rgb(var(--md-sys-color-primary) / 0.82);
  }

.public-blog-card:active {
    transform: scale(0.99);
  }

.public-blog-card__media {
    position: relative;
    display: block;
    flex-shrink: 0;
    width: 7rem;
    min-height: 6.875rem;
    align-self: stretch;
    overflow: hidden;
    border-radius: 0.75rem;
    background-color: rgb(var(--md-sys-color-primary) / 0.1);
  }

.public-blog-card__media--archive {
    width: 6rem;
    height: 6rem;
  }

@media (min-width: 768px) {
    .public-blog-card__media--archive {
      width: 8rem;
      height: 8rem;
    }
  }

.public-blog-card__image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 0.75rem;
    transition: transform 500ms ease;
  }

.public-blog-card:hover .public-blog-card__image,
  .public-blog-card:focus-visible .public-blog-card__image {
    transform: scale(1.05);
  }

.public-blog-card__content {
    flex: 1 1 0%;
    min-width: 0;
  }

.public-blog-card__title {
    font-family: Merriweather, Georgia, serif;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.4;
    color: rgb(var(--md-sys-color-tertiary) / 1);
    transition: color 180ms ease;
    text-wrap: balance;
  }

.public-blog-card:hover .public-blog-card__title,
  .public-blog-card:focus-visible .public-blog-card__title {
    color: rgb(var(--md-sys-color-primary) / 1);
  }

.public-blog-card__meta {
    display: block;
    margin-top: 0.35rem;
    color: rgb(var(--md-sys-color-tertiary) / 0.6);
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

.public-blog-card__excerpt {
    display: -webkit-box;
    margin-top: 0.35rem;
    overflow: hidden;
    color: rgb(var(--md-sys-color-tertiary) / 0.8);
    font-size: 0.875rem;
    line-height: 1.6;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

/*
    NewDesignTemplate parity for public home. These values intentionally mirror
    newdesigntemplate/src/app/components/PublicPage.tsx.
  */

html[data-app-context='public'] {
    --template-bg: rgb(var(--color-surface));
    --template-foreground: rgb(var(--color-tertiary-text) / var(--color-tertiary-text-alpha, 1));
    --template-card: rgb(var(--color-secondary));
    --template-secondary: color-mix(in srgb, rgb(var(--color-secondary)) 82%, rgb(var(--color-surface)));
    --template-muted: rgb(var(--color-tertiary-text) / 0.64);
    --template-primary: rgb(var(--color-accent));
    --template-purple: color-mix(in srgb, rgb(var(--color-accent)) 74%, rgb(var(--color-tertiary-text)));
    --template-wine: color-mix(in srgb, rgb(var(--color-accent)) 52%, rgb(var(--color-surface)));
    --template-border: rgb(var(--color-accent) / 0.2);
  }

html[data-app-context='public'] body {
    background: var(--template-bg);
    color: var(--template-foreground);
    font-family: 'DM Sans', Montserrat, sans-serif;
  }

html[data-app-context='public'] .home-section-title {
    margin: 0;
    font-family: UnifrakturMaguntia, cursive;
    font-size: 2.5rem;
    font-weight: 400;
    line-height: 1.1;
    color: var(--template-foreground);
    text-shadow: 0 0 40px rgba(232, 68, 122, 0.24);
  }

html[data-app-context='public'] .home-section-title--center {
    margin-bottom: 2rem;
    text-align: center;
  }

html[data-app-context='public'] .public-language-switcher {
    top: 0.5rem;
    right: 0.5rem;
    z-index: 70;
  }

html[data-app-context='public'] .public-language-switcher__buttons {
    gap: 0.25rem;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
  }

html[data-app-context='public'] .public-language-switcher__button {
    min-width: 0;
    border: 1px solid var(--template-border);
    border-radius: 999px;
    padding: 0.25rem 0.75rem;
    background: rgba(22, 18, 31, 0.8);
    color: var(--template-muted);
    font-family: 'DM Sans', Montserrat, sans-serif;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.5;
    text-transform: none;
    backdrop-filter: blur(8px);
    transition: background-color 200ms ease, border-color 200ms ease, color 200ms ease, transform 200ms ease, box-shadow 200ms ease;
  }

html[data-app-context='public'] .public-language-switcher__button:hover,
  html[data-app-context='public'] .public-language-switcher__button:focus-visible {
    color: var(--template-foreground);
    border-color: rgba(232, 68, 122, 0.32);
    transform: translateY(-1px);
    outline: none;
  }

html[data-app-context='public'] .public-language-switcher__button--active {
    background: var(--template-primary);
    color: #fff;
    border-color: var(--template-border);
    box-shadow: none;
  }

html[data-app-context='public'] .home-link-card {
    animation: home-link-enter 400ms ease both;
    animation-delay: calc(200ms + var(--home-link-index, 0) * 70ms);
  }

html[data-app-context='public'] .home-link-anchor {
    min-height: auto;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 1rem;
    font-family: 'DM Sans', Montserrat, sans-serif;
    text-align: left;
    backdrop-filter: blur(8px);
    transition: transform 220ms cubic-bezier(0.22, 1, 0.36, 1), border-color 200ms ease, box-shadow 220ms ease, background-color 200ms ease;
  }

html[data-app-context='public'] .home-link-primary {
    border: 1px solid rgba(232, 68, 122, 0.55);
    background: linear-gradient(135deg, rgba(87, 0, 29, 0.9) 0%, rgba(232, 68, 122, 0.25) 50%, rgba(87, 0, 29, 0.9) 100%);
    color: var(--template-foreground);
    box-shadow: none;
  }

html[data-app-context='public'] .home-link-secondary {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(22, 18, 31, 0.75);
    color: var(--template-foreground);
    box-shadow: none;
  }

html[data-app-context='public'] .home-link-primary:hover,
  html[data-app-context='public'] .home-link-primary:focus-visible,
  html[data-app-context='public'] .home-link-secondary:hover,
  html[data-app-context='public'] .home-link-secondary:focus-visible {
    border-color: rgba(232, 68, 122, 0.6);
    box-shadow: 0 0 32px rgba(232, 68, 122, 0.5), 0 0 8px rgba(232, 68, 122, 0.5);
    outline: none;
    transform: translateY(-2px) scale(1.02);
  }

html[data-app-context='public'] .home-link-secondary[data-link-type='privacy']:hover,
  html[data-app-context='public'] .home-link-secondary[data-link-type='privacy']:focus-visible {
    box-shadow: 0 0 32px rgba(156, 95, 199, 0.45), 0 0 8px rgba(156, 95, 199, 0.45);
  }

html[data-app-context='public'] .home-link-anchor:active {
    transform: scale(0.99);
  }

html[data-app-context='public'] .home-link-anchor .link-icon {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, #e8447a, #c22f62);
    color: #fff;
    box-shadow: none;
  }

html[data-app-context='public'] .home-link-secondary[data-link-type='privacy'] .link-icon {
    background: linear-gradient(135deg, #9c5fc7, #7b3fa8);
  }

html[data-app-context='public'] .home-link-anchor[data-link-type='instagram'] .link-icon {
    background: linear-gradient(135deg, #e8447a, #f06292);
  }

html[data-app-context='public'] .home-link-content {
    display: flex;
    min-width: 0;
    flex: 1 1 0%;
    flex-direction: column;
    gap: 0.125rem;
  }

html[data-app-context='public'] .home-link-anchor .link-text {
    color: var(--template-foreground);
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.3;
  }

html[data-app-context='public'] .home-link-primary .link-text {
    font-weight: 600;
  }

html[data-app-context='public'] .home-link-sublabel {
    color: rgba(191, 191, 191, 0.6);
    font-size: 0.75rem;
    line-height: 1.25;
  }

html[data-app-context='public'] .home-link-premium {
    flex-shrink: 0;
    color: var(--template-primary);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
  }

html[data-app-context='public'] .public-blog-card {
    align-items: stretch;
    gap: 1rem;
    overflow: hidden;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1rem;
    background: rgba(22, 18, 31, 0.75);
    backdrop-filter: blur(8px);
    transition: transform 220ms cubic-bezier(0.22, 1, 0.36, 1), border-color 200ms ease, box-shadow 220ms ease;
  }

html[data-app-context='public'] .public-blog-card:hover,
  html[data-app-context='public'] .public-blog-card:focus-visible {
    border-color: rgba(232, 68, 122, 0.35);
    background: rgba(22, 18, 31, 0.75);
    box-shadow: 0 4px 24px rgba(232, 68, 122, 0.12);
    transform: translateY(-2px) scale(1.01);
  }

html[data-app-context='public'] .public-blog-card__media {
    width: 7rem;
    min-height: 6.875rem;
    border-radius: 0;
    background: rgba(232, 68, 122, 0.1);
  }

@media (min-width: 768px) {
    html[data-app-context='public'] .public-blog-card__media {
      width: 10rem;
    }
  }

html[data-app-context='public'] .public-blog-card__image {
    border-radius: 0;
    transition: transform 500ms ease;
  }

html[data-app-context='public'] .public-blog-card__content {
    display: flex;
    flex: 1 1 0%;
    flex-direction: column;
    justify-content: center;
    gap: 0.375rem;
    padding: 1rem 1.25rem 1rem 0;
  }

html[data-app-context='public'] .public-blog-card__title {
    color: var(--template-foreground);
    font-family: Merriweather, Georgia, serif;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.4;
  }

html[data-app-context='public'] .public-blog-card:hover .public-blog-card__title,
  html[data-app-context='public'] .public-blog-card:focus-visible .public-blog-card__title {
    color: var(--template-foreground);
  }

html[data-app-context='public'] .public-blog-card__meta {
    margin-top: 0;
    color: var(--template-muted);
    font-family: 'DM Sans', Montserrat, sans-serif;
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
  }

html[data-app-context='public'] .public-blog-card__excerpt {
    margin-top: 0;
    color: rgba(191, 191, 191, 0.65);
    font-family: 'DM Sans', Montserrat, sans-serif;
    font-size: 0.78rem;
    line-height: 1.65;
  }

html[data-app-context='public'] .home-album-card {
    margin-bottom: 2rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1rem;
    background: rgba(22, 18, 31, 0.75);
    backdrop-filter: blur(8px);
    box-shadow: none;
  }

html[data-app-context='public'] .home-album-card__title {
    padding: 1.25rem 1.25rem 0.25rem;
    color: var(--template-foreground);
    font-family: UnifrakturMaguntia, cursive;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.2;
  }

html[data-app-context='public'] .home-album-card__description {
    padding: 0 1.25rem 0.75rem;
    color: var(--template-muted);
    font-family: Merriweather, Georgia, serif;
    font-size: 0.8rem;
    line-height: 1.6;
  }

html[data-app-context='public'] .home-album-grid {
    margin-top: 0;
    gap: 0.25rem;
    padding: 0.25rem;
  }

html[data-app-context='public'] .home-album-tile {
    border-radius: 0.375rem;
    background: transparent;
    box-shadow: none;
  }

html[data-app-context='public'] .home-album-tile:hover,
  html[data-app-context='public'] .home-album-tile:focus-visible {
    box-shadow: none;
  }

html[data-app-context='public'] .home-album-tile__overlay {
    background: rgba(0, 0, 0, 0);
    opacity: 0;
    transition: opacity 250ms ease;
  }

html[data-app-context='public'] .home-album-tile:hover .home-album-tile__overlay,
  html[data-app-context='public'] .home-album-tile:focus-visible .home-album-tile__overlay {
    background: rgba(0, 0, 0, 0.5);
    opacity: 1;
  }

html[data-app-context='public'] .home-album-tile__icon {
    width: 1.375rem;
    height: 1.375rem;
    color: #fff;
    opacity: 1;
  }

html[data-app-context='public'] #gallery-modal {
    background: rgba(0, 0, 0, 0.96);
    backdrop-filter: blur(8px);
  }

html[data-app-context='public'] #gallery-close-btn,
  html[data-app-context='public'] .swiper-button-prev,
  html[data-app-context='public'] .swiper-button-next {
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    box-shadow: none;
    backdrop-filter: none;
  }

html[data-app-context='public'] .swiper-button-prev,
  html[data-app-context='public'] .swiper-button-next {
    width: 2.25rem;
    height: 2.25rem;
  }

html[data-app-context='public'] .swiper {
    width: 100%;
    max-width: 37.5rem;
    max-height: 80vh;
  }

html[data-app-context='public'] .swiper-slide img {
    max-height: 78vh;
    max-width: 100%;
    border-radius: 0.75rem;
  }

html[data-app-context='public'] #gallery-photo-description,
  html[data-app-context='public'] #gallery-photo-counter {
    height: auto;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.73rem;
    font-weight: 400;
    line-height: 1.4;
  }

#post-hero-figure.hidden ~ .post-hero-title-wrap {
    margin-top: 2rem;
  }

.public-post-shell {
    overflow: hidden;
    margin-top: 2rem;
    margin-bottom: 2rem;
    border: 0;
    border-radius: 2.5rem;
    background:
      linear-gradient(180deg, rgb(var(--md-sys-color-secondary) / 0.54), rgb(var(--md-sys-color-surface) / 0.24)),
      rgb(var(--md-sys-color-secondary) / 0.28);
    box-shadow: 0 28px 80px -46px rgb(0 0 0 / 0.8);
  }

.public-post-hero__figure {
    background: rgb(var(--md-sys-color-secondary) / 0.82);
  }

.public-post-hero__figure img {
    transform: scale(1.01);
    filter: saturate(1.08) contrast(1.02);
  }

.public-post-hero__scrim {
    background:
      linear-gradient(180deg, rgb(0 0 0 / 0.08) 0%, rgb(0 0 0 / 0.2) 38%, rgb(var(--md-sys-color-secondary) / 0.92) 100%),
      radial-gradient(circle at 18% 18%, rgb(var(--color-accent) / 0.26), transparent 34%);
  }

.public-post-title {
    max-width: 11ch;
    text-wrap: balance;
  }

.public-post-meta__badge {
    border: 0;
    border-radius: 9999px;
    background: rgb(0 0 0 / 0.34);
    padding: 0.375rem 1rem;
    color: rgb(255 255 255 / 0.92);
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
    backdrop-filter: blur(14px);
  }

.public-post-body {
    border-top: 1px solid rgb(var(--md-sys-color-outline) / 0.1);
    border-radius: 1.75rem 1.75rem 0 0;
    background:
      linear-gradient(180deg, rgb(var(--color-primary) / 0.86), rgb(var(--md-sys-color-surface) / 0.9)),
      rgb(var(--color-primary) / 1);
  }

.public-post-breadcrumbs a {
    border-radius: 9999px;
    padding: 0.125rem 0.25rem;
  }

.public-post-breadcrumbs a:focus-visible {
    outline: 2px solid rgb(var(--color-accent) / 0.9);
    outline-offset: 3px;
  }

.public-post-lead {
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgb(var(--md-sys-color-outline) / 0.14);
    text-wrap: pretty;
  }

.public-post-content {
    font-size: 1.0625rem;
  }

.public-post-content h2,
  .public-post-content h3 {
    color: rgb(var(--color-accent) / 1);
    text-wrap: balance;
  }

.public-post-content h2 {
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgb(var(--md-sys-color-outline) / 0.2);
  }

.public-post-content iframe,
  .public-post-content video,
  .public-post-content .ql-video {
    aspect-ratio: 16 / 9;
    min-height: auto;
  }

.public-post-content img {
    width: 100%;
    box-shadow: 0 18px 46px -28px rgb(0 0 0 / 0.7);
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
  }

.public-post-content img:hover {
    border-color: rgb(var(--color-accent) / 0.36);
    box-shadow: 0 24px 60px -32px rgb(0 0 0 / 0.86);
    transform: translateY(-2px);
  }

.public-post-content blockquote {
    margin: 2rem 0;
    border-left-width: 4px;
    padding: 0.5rem 0 0.5rem 1.5rem;
    color: rgb(var(--md-sys-color-tertiary) / 0.82);
    font-size: 1.25rem;
  }

.public-post-info-card {
    border: 1px solid rgb(var(--md-sys-color-outline) / 0.16);
    background: rgb(var(--md-sys-color-secondary) / 0.72);
    box-shadow: 0 14px 36px -28px rgb(0 0 0 / 0.7);
  }

.public-post-tags {
    row-gap: 0.75rem;
  }

.public-post-tag {
    border: 1px solid rgb(var(--color-accent) / 0.26);
    background: rgb(var(--color-accent) / 0.12);
    color: rgb(var(--color-accent) / 1);
    font-weight: 700;
  }

.public-post-cta {
    margin-right: -2.5rem;
    margin-left: -2.5rem;
    border: 0;
    border-radius: 0;
    background: rgb(var(--color-primary) / 1);
    color: rgb(var(--md-sys-color-on-primary) / 1);
    box-shadow: 0 24px 56px -32px rgb(var(--color-accent) / 0.78);
  }

@media (max-width: 420px) {
    .public-blog-card {
      gap: 0.75rem;
      padding: 0.75rem;
    }

    .public-blog-card__media {
      width: 5.75rem;
      min-height: 6.25rem;
    }
  }

.public-post-cta h2,
  .public-post-cta p {
    color: currentColor;
  }

.public-post-cta .btn-public-primary {
    background: rgb(255 255 255 / 0.94);
    color: rgb(var(--color-accent) / 1);
    box-shadow: 0 16px 42px -24px rgb(0 0 0 / 0.72);
  }

.public-post-cta .btn-public-primary:hover {
    background: rgb(255 255 255 / 1);
  }

@media (max-width: 767px) {
    .public-post-shell {
      margin-top: 0.75rem;
      margin-bottom: 0.75rem;
      border-radius: 1.75rem;
    }

    .public-post-hero__content {
      margin-top: -5.5rem;
    }

    .public-post-title {
      max-width: 100%;
      font-size: 2.5rem;
    }

    .public-post-body {
      border-radius: 1.25rem 1.25rem 0 0;
    }

    .public-post-cta {
      margin-right: -1.5rem;
      margin-left: -1.5rem;
    }
  }

/* ─── Public Toast Notification ──────────────────────────────────────────────
     The #public-toast-notification element is created dynamically by
     showPublicToast() in main.js and appended to <body>.
     Safelist: bg-secondary, text-tertiary, rounded-xl, shadow-2xl, px-6, py-4,
     flex, items-center, gap-4, z-[200] are already in style.css from other uses.
  */

#public-toast-notification {
    pointer-events: none;
    right: max(1rem, env(safe-area-inset-right));
    bottom: max(1rem, env(safe-area-inset-bottom));
    max-width: min(92vw, 28rem);
    z-index: 11000;
  }

/* ─── Rich Content V3.0 — Estilos de embed/mídia (ql-render) ─────────────── */

.ql-render figure {
  display: block;
}

.ql-render figcaption {
  margin-top: 0.5rem;
  color: rgb(var(--md-sys-color-tertiary) / 0.72);
  font-size: 0.875rem;
  line-height: 1.5;
  text-align: center;
}

.ql-render iframe,
.ql-render video,
.ql-render .ql-video {
  display: block;
  width: 100%;
  min-height: 260px;
  border-radius: 1.5rem;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.2);
  background: #000;
  box-shadow: 0 16px 40px -24px rgba(0, 0, 0, 0.5);
}

@media (min-width: 768px) {
  .ql-render iframe,
  .ql-render video,
  .ql-render .ql-video {
    min-height: 360px;
  }
}

.ql-render img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 1rem;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.15);
}

.blog-embed {
  margin: 2rem 0;
}

.blog-embed__wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border-radius: 1.5rem;
  background: rgb(0 0 0 / 0.8);
  box-shadow: 0 18px 46px -28px rgba(0, 0, 0, 0.75);
}

.blog-embed--social .blog-embed__wrapper {
  max-width: min(100%, 34rem);
  margin-inline: auto;
  aspect-ratio: 4 / 6.2;
}

.blog-embed--portrait .blog-embed__wrapper {
  aspect-ratio: 9 / 16;
  max-width: min(100%, 28rem);
  margin-inline: auto;
}

.blog-embed--tiktok .blog-embed__wrapper {
  max-width: min(100%, 22rem);
  aspect-ratio: 325 / 739;
}

.blog-embed__wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 0;
}

.ql-render img.blog-media-align-left {
  margin-right: auto;
  margin-left: 0;
}

.ql-render .ql-align-left > img,
.ql-render .ql-align-left img {
  margin-right: auto;
  margin-left: 0;
}

.ql-render img.blog-media-align-center {
  margin-right: auto;
  margin-left: auto;
}

.ql-render .ql-align-center > img,
.ql-render .ql-align-center img {
  margin-right: auto;
  margin-left: auto;
}

.ql-render img.blog-media-align-right {
  margin-right: 0;
  margin-left: auto;
}

.ql-render .ql-align-right > img,
.ql-render .ql-align-right img {
  margin-right: 0;
  margin-left: auto;
}

.ql-render blockquote {
  border-left: 4px solid rgb(var(--color-primary) / 1);
  padding-left: 1rem;
  font-style: italic;
  color: rgb(var(--md-sys-color-tertiary) / 0.85);
}

/* Rich Content V3.1 — blocos MD3 seguros portados do DesignPatterns */

.ql-render .md3-feature-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin: 2rem 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 768px) {
  .ql-render .md3-feature-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.ql-render .md3-feature-card {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  min-width: 0;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.16);
  border-radius: 1rem;
  background: rgb(var(--md-sys-color-surface) / 0.42);
  padding: 1rem;
}

.ql-render .md3-feature-index {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 9999px;
  background: rgb(var(--color-primary) / 0.16);
  color: rgb(var(--color-primary) / 1);
  font-weight: 700;
}

.ql-render .md3-feature-body {
  min-width: 0;
}

.ql-render .md3-feature-title {
  display: block;
  color: rgb(var(--color-primary) / 1);
}

.ql-render .md3-feature-text {
  display: block;
  margin-top: 0.25rem;
  color: rgb(var(--md-sys-color-tertiary) / 0.72);
  font-size: 0.875rem;
  line-height: 1.5;
}

.ql-render .md3-reel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

@media (min-width: 768px) {
  .ql-render .md3-reel-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.ql-render .md3-reel-card {
  position: relative;
  overflow: hidden;
  aspect-ratio: 9 / 16;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.22);
  border-radius: 1rem;
  background: #000;
}

.ql-render .md3-reel-card--active {
  outline: 3px solid rgb(var(--color-primary) / 1);
  outline-offset: 2px;
}

.ql-render .md3-reel-media {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 0;
  border-radius: 0;
}

.ql-render .md3-reel-badge {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.75rem;
  min-height: 1.75rem;
  border-radius: 9999px;
  background: rgb(0 0 0 / 0.44);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
}

.ql-render .md3-reel-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 1rem;
  background: rgb(0 0 0 / 0.62);
  text-align: center;
}

.ql-render .md3-reel-spinner {
  width: 3rem;
  height: 3rem;
  border: 2px solid rgb(var(--color-primary) / 1);
  border-top-color: transparent;
  border-radius: 9999px;
  animation: spin 1s linear infinite;
}

.ql-render .md3-reel-label {
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}

.ql-render .md3-rich-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 3rem;
}

.ql-render .md3-rich-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 9999px;
  background: rgb(var(--color-primary) / 0.1);
  color: rgb(var(--color-primary) / 1);
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 700;
}

@media (min-width: 768px) {
  .admin-sidebar {
    position: static;
    position: sticky;
    top: 0px;
    bottom: auto;
    width: 280px;
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    height: 100vh;
    align-self: flex-start;
    overflow: hidden;
  }
}

@media (min-width: 1024px) {

  .admin-sidebar__nav {
    flex: 1 1 auto;
    padding-right: 0.75rem;
  }
}

.admin-album__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  border-width: 1px;
  border-style: solid;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
    border-color: rgb(var(--md-sys-color-error) / 0.45);
    background-color: rgb(var(--md-sys-color-error) / 0.1);
    color: rgb(var(--md-sys-color-error) / 1);
}

.admin-album__archive-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border-radius: 9999px;
  border-width: 1px;
  border-style: solid;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    border-color: rgb(var(--admin-card-border) / 0.6);
    background-color: rgb(var(--admin-card-surface) / 0.7);
    color: rgb(var(--color-light-text) / calc(var(--color-light-text-alpha, 1) * 0.95));
    min-width: 9rem;
    flex-shrink: 0;
}

.admin-album__archive-icon {
  width: 1.1rem;
  height: 1.1rem;
}

.admin-album__archive-label {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  justify-content: center;
  flex: 1 1 auto;
  white-space: nowrap;
  text-align: center;
}

.admin-album__archive-btn:hover {
    background-color: rgb(var(--admin-card-surface) / 0.85);
}

.admin-album__archive-btn:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.admin-album__archive-btn:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-accent) / 0.6);
}

.admin-album__archive-btn--archive {
    border-color: rgb(250 204 21 / 0.45);
    background-color: rgb(250 204 21 / 0.18);
    color: rgb(253 224 71 / 0.95);
}

.admin-album__archive-btn--archive:hover {
    background-color: rgb(250 204 21 / 0.28);
}

.admin-album__archive-btn--restore {
    border-color: rgb(74 222 128 / 0.45);
    background-color: rgb(34 197 94 / 0.2);
    color: rgb(134 239 172 / 0.95);
}

.admin-album__archive-btn--restore:hover {
    background-color: rgb(34 197 94 / 0.3);
}

.admin-main__header {
  position: sticky;
  top: 0;
  z-index: 30;
  margin-bottom: 2rem;
  display: flex;
  height: 4rem;
  align-items: center;
  gap: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  background-color: rgb(var(--md-sys-color-surface) / 0.8);
  border-bottom: 1px solid rgb(var(--md-sys-color-outline) / 0.2);
  backdrop-filter: blur(10px);
}

.admin-main__header-group {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: nowrap;
}

.admin-main__actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.admin-main__actions.hidden {
  display: none;
}

.admin-main__action-btn {
  white-space: nowrap;
}

.admin-language-alert {
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.45);
  background-color: rgb(var(--md-sys-color-secondary) / 0.78);
  color: rgb(var(--md-sys-color-tertiary) / 0.96);
}

.admin-language-alert[data-pending-multilang='true'] {
  border-color: rgb(var(--md-sys-color-primary) / 0.45);
}

.admin-language-alert__close {
  color: rgb(var(--md-sys-color-tertiary) / 0.95);
}

@media (max-width: 639px) {
  .admin-main__header {
    align-items: center;
  }

  .admin-main__actions {
    margin-left: 0;
    justify-content: flex-end;
  }
}

admin-sidebar__toggle-icon {
  height: 1.75rem;
  width: 1.75rem;
}

.right-2 {
  right: 0.5rem;
}

.top-2 {
  top: 0.5rem;
}

.mt-8 {
  margin-top: 2rem;
}

.max-h-40 {
  max-height: 10rem;
}

.min-h-\[180px\] {
  min-height: 180px;
}

.btn-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.75rem;
  border-radius: 9999px;
  font-weight: 600;
  line-height: 1.4;
  transition-property: transform, box-shadow, background-color, border-color, color, filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.btn-pill:hover:not(:disabled) {
  transform: translateY(-2px);
}

.btn-pill:focus-visible {
  outline: 2px solid rgba(148, 163, 184, 0.5);
  outline-offset: 2px;
}

.btn-pill:disabled {
  cursor: not-allowed;
  opacity: 0.6;
  transform: none;
}

.btn-pill--sm {
  padding: 0.45rem 1.125rem;
  font-size: 0.78rem;
  line-height: 1.2;
  letter-spacing: 0.18em;
  gap: 0.35rem;
}

.btn-pill--xs {
  padding: 0.35rem 0.95rem;
  font-size: 0.7rem;
  line-height: 1.1;
  letter-spacing: 0.12em;
  gap: 0.25rem;
}

.btn-pill--compact {
  padding: 0.45rem 1.05rem;
  font-size: 0.8rem;
  gap: 0.3rem;
  letter-spacing: 0.01em;
}

.btn-pill--sm svg {
  width: 0.95rem;
  height: 0.95rem;

}

.btn-glow {
  --btn-glow-color: rgba(79, 70, 229, 0.35);
  --btn-glow-color-hover: rgba(79, 70, 229, 0.45);
  --btn-glow-focus-color: rgba(148, 163, 184, 0.35);
  box-shadow: 0 8px 18px var(--btn-glow-color);
  transition: box-shadow 150ms ease;
}

.btn-glow:hover:not(:disabled) {
  box-shadow: 0 12px 24px var(--btn-glow-color-hover);
}

.btn-glow:focus-visible {
  box-shadow: 0 0 0 3px var(--btn-glow-focus-color), 0 8px 18px var(--btn-glow-color);
}

.btn-glow--accent {
  --btn-glow-color: rgba(var(--color-accent) / 0.35);
  --btn-glow-color-hover: rgba(var(--color-accent) / 0.45);
  --btn-glow-focus-color: rgba(var(--color-accent) / 0.35);
}

.btn-glow--neutral {
  --btn-glow-color: rgba(148, 163, 184, 0.25);
  --btn-glow-color-hover: rgba(148, 163, 184, 0.35);
  --btn-glow-focus-color: rgba(148, 163, 184, 0.3);
}

.btn-glow--destructive {
  --btn-glow-color: rgba(239, 68, 68, 0.35);
  --btn-glow-color-hover: rgba(239, 68, 68, 0.45);
  --btn-glow-focus-color: rgba(248, 113, 113, 0.45);
}

.btn-surface--accent {
  background-image: linear-gradient(135deg, rgba(255, 0, 85, 0.95), rgba(236, 72, 153, 0.9));
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.btn-surface--accent:hover:not(:disabled) {
  background-image: linear-gradient(135deg, rgba(236, 72, 153, 0.98), rgba(244, 114, 182, 0.95));
}

body[data-admin-theme='light'] .btn-surface--accent {
  background-image: linear-gradient(135deg, rgba(244, 114, 182, 0.95), rgba(236, 72, 153, 0.9));
  border-color: rgba(236, 72, 153, 0.35);
}

.btn-surface--success {
  background-image: linear-gradient(135deg, rgba(34, 197, 94, 0.95), rgba(16, 185, 129, 0.9));
  color: #fff;
  border: 1px solid rgba(134, 239, 172, 0.55);
}

.btn-surface--success:hover:not(:disabled) {
  background-image: linear-gradient(135deg, rgba(22, 163, 74, 0.98), rgba(5, 150, 105, 0.95));
}

body[data-admin-theme='light'] .btn-surface--success {
  background-image: linear-gradient(135deg, rgba(134, 239, 172, 0.95), rgba(52, 211, 153, 0.9));
  color: rgb(22 63 42 / 0.92);
  border-color: rgba(34, 197, 94, 0.35);
}

body[data-admin-theme='light'] .btn-surface--success:hover:not(:disabled) {
  background-image: linear-gradient(135deg, rgba(74, 222, 128, 0.95), rgba(45, 212, 191, 0.9));
}

.btn-surface--secondary {
  background-color: rgb(var(--admin-card-surface, 30 41 59) / 0.85);
  color: rgb(var(--color-light-text, 241 245 249) / calc(var(--color-light-text-alpha, 1) * 0.92));
  border: 1px solid rgba(148, 163, 184, 0.45);
}

.btn-surface--secondary:hover:not(:disabled) {
  background-color: rgb(var(--admin-card-surface, 30 41 59) / 0.95);
}

body[data-admin-theme='light'] .btn-surface--secondary {
  background-color: rgba(226, 232, 240, 0.95);
  color: rgb(30 41 59 / 0.9);
  border-color: rgba(148, 163, 184, 0.6);
}

body[data-admin-theme='light'] .btn-surface--secondary:hover:not(:disabled) {
  background-color: rgba(203, 213, 225, 0.95);
}

.btn-surface--tertiary {
  background-color: transparent;
  color: rgba(226, 232, 240, 0.92);
  border: 1px solid rgba(148, 163, 184, 0.5);
}

.btn-surface--tertiary:hover:not(:disabled) {
  background-color: rgba(148, 163, 184, 0.12);
}

body[data-admin-theme='light'] .btn-surface--tertiary {
  color: rgb(51 65 85 / 0.95);
  border-color: rgba(148, 163, 184, 0.6);
}

body[data-admin-theme='light'] .btn-surface--tertiary:hover:not(:disabled) {
  background-color: rgba(148, 163, 184, 0.16);
}

.btn-surface--destructive {
  background-color: rgb(220 38 38 / 0.95);
  color: #fff;
  border: 1px solid rgba(248, 113, 113, 0.45);
  box-shadow: 0 10px 28px rgba(220, 38, 38, 0.2);
}

.btn-surface--destructive:hover:not(:disabled) {
  background-color: rgb(239 68 68 / 0.95);
}

body[data-admin-theme='light'] .btn-surface--destructive {
  background-color: rgb(248 113 113 / 0.9);
  color: rgb(17 24 39 / 0.95);
  border-color: rgba(248, 113, 113, 0.55);
}

body[data-admin-theme='light'] .btn-surface--destructive:hover:not(:disabled) {
  background-color: rgb(252 165 165 / 0.95);
}

.btn-surface-quiet {
  box-shadow: none;
  border-width: 1px;
  border-style: solid;
  transition-property: background-color, border-color, color, transform;
}

.btn-surface-quiet--accent {
  background-color: rgb(var(--color-accent) / 0.16);
  color: rgba(255, 255, 255, 0.94);
  border-color: rgb(var(--color-accent) / 0.45);
}

.btn-surface-quiet--accent:hover:not(:disabled) {
  background-color: rgb(var(--color-accent) / 0.22);
}

.btn-surface-quiet--accent:disabled {
  background-color: rgb(var(--color-accent) / 0.12);
  border-color: rgb(var(--color-accent) / 0.25);
  color: rgba(255, 255, 255, 0.55);
}

body[data-admin-theme='light'] .btn-surface-quiet--accent {
  background-color: rgb(var(--color-accent) / 0.2);
  color: rgb(136 19 55 / 0.94);
  border-color: rgb(var(--color-accent) / 0.35);
}

body[data-admin-theme='light'] .btn-surface-quiet--accent:hover:not(:disabled) {
  background-color: rgb(var(--color-accent) / 0.28);
}

body[data-admin-theme='light'] .btn-surface-quiet--accent:disabled {
  background-color: rgb(var(--color-accent) / 0.16);
  color: rgb(136 19 55 / 0.55);
  border-color: rgb(var(--color-accent) / 0.2);
}

.btn-surface-quiet--neutral {
  background-color: rgba(100, 116, 139, 0.14);
  color: rgba(226, 232, 240, 0.94);
  border-color: rgba(148, 163, 184, 0.45);
}

.btn-surface-quiet--neutral:hover:not(:disabled) {
  background-color: rgba(148, 163, 184, 0.2);
}

.btn-surface-quiet--neutral:disabled {
  background-color: rgba(148, 163, 184, 0.12);
  border-color: rgba(148, 163, 184, 0.25);
  color: rgba(226, 232, 240, 0.55);
}

body[data-admin-theme='light'] .btn-surface-quiet--neutral {
  background-color: rgba(148, 163, 184, 0.2);
  color: rgb(51 65 85 / 0.92);
  border-color: rgba(148, 163, 184, 0.4);
}

body[data-admin-theme='light'] .btn-surface-quiet--neutral:hover:not(:disabled) {
  background-color: rgba(148, 163, 184, 0.28);
}

body[data-admin-theme='light'] .btn-surface-quiet--neutral:disabled {
  background-color: rgba(148, 163, 184, 0.16);
  color: rgb(51 65 85 / 0.55);
  border-color: rgba(148, 163, 184, 0.24);
}

.btn-surface-quiet--destructive {
  background-color: rgba(220, 38, 38, 0.16);
  color: rgb(254 226 226 / 0.98);
  border-color: rgba(248, 113, 113, 0.5);
}

.btn-surface-quiet--destructive:hover:not(:disabled) {
  background-color: rgba(239, 68, 68, 0.24);
}

.btn-surface-quiet--destructive:disabled {
  background-color: rgba(239, 68, 68, 0.14);
  border-color: rgba(248, 113, 113, 0.3);
  color: rgba(254, 226, 226, 0.65);
}

body[data-admin-theme='light'] .btn-surface-quiet--destructive {
  background-color: rgba(248, 113, 113, 0.22);
  color: rgb(127 29 29 / 0.94);
  border-color: rgba(248, 113, 113, 0.45);
}

body[data-admin-theme='light'] .btn-surface-quiet--destructive:hover:not(:disabled) {
  background-color: rgba(248, 113, 113, 0.3);
}

body[data-admin-theme='light'] .btn-surface-quiet--destructive:disabled {
  background-color: rgba(248, 113, 113, 0.18);
  color: rgb(127 29 29 / 0.55);
  border-color: rgba(248, 113, 113, 0.28);
}

.btn-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 600;
  color: rgba(var(--color-accent-rgb, 236 72 153) / 0.9);
  transition: color 150ms ease, background-color 150ms ease;
}

.btn-link--sm {
  padding: 0.375rem 0.75rem;
  font-size: 0.75rem;
}

.btn-link:hover:not(:disabled) {
  color: rgba(var(--color-accent-rgb, 236 72 153) / 1);
  text-decoration: underline;
}

.btn-link:focus-visible {
  outline: 2px solid rgba(var(--color-accent-rgb, 236 72 153) / 0.6);
  outline-offset: 2px;
}

.btn-link:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 9999px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background-color: rgb(var(--admin-card-surface, 30 41 59) / 0.55);
  color: rgb(var(--color-light-text, 226 232 240) / calc(var(--color-light-text-alpha, 1) * 0.92));
  font-size: 0.75rem;
  font-weight: 600;
  transition: background-color 150ms ease, color 150ms ease, transform 150ms ease;
}

.btn-icon--sm {
  width: 1.5rem;
  height: 1.5rem;
  font-size: 0.65rem;
}

.btn-icon--lg {
  width: 2.5rem;
  height: 2.5rem;
  font-size: 1rem;
}

.btn-icon:hover:not(:disabled) {
  background-color: rgb(var(--admin-card-surface, 30 41 59) / 0.75);
  transform: translateY(-1px);
}

.btn-icon:focus-visible {
  outline: 2px solid rgba(var(--color-accent-rgb, 236 72 153) / 0.6);
  outline-offset: 2px;
}

.btn-icon:disabled {
  cursor: not-allowed;
  opacity: 0.5;
  transform: none;
}

body[data-admin-theme='light'] .btn-icon {
  background-color: rgba(226, 232, 240, 0.9);
  color: rgb(30 41 59 / 0.9);
  border-color: rgba(148, 163, 184, 0.55);
}

body[data-admin-theme='light'] .btn-icon:hover:not(:disabled) {
  background-color: rgba(203, 213, 225, 0.95);
}

.btn-icon--destructive {
  background-color: rgb(220 38 38 / 0.95);
  border-color: transparent;
  color: #fff;
  box-shadow: 0 8px 20px rgba(220, 38, 38, 0.25);
}

.btn-icon--destructive:hover:not(:disabled) {
  background-color: rgb(239 68 68 / 0.95);
}

body[data-admin-theme='light'] .btn-icon--destructive {
  background-color: rgb(248 113 113 / 0.9);
  color: rgb(17 24 39 / 0.95);
}

body[data-admin-theme='light'] .btn-icon--destructive:hover:not(:disabled) {
  background-color: rgb(252 165 165 / 0.95);
}

.btn-surface--accent {
  background-color: rgb(var(--color-primary) / 1);
  color: rgb(var(--md-sys-color-on-primary) / 1);
  border: 1px solid transparent;
  border-radius: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.btn-surface--accent:hover:not(:disabled),
.btn-surface--accent:focus-visible {
  filter: brightness(1.1);
}

.btn-surface--secondary,
.btn-surface--tertiary,
.btn-surface-quiet,
.btn-surface-quiet--neutral,
.btn-surface-quiet--accent {
  background-color: transparent;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.4);
  color: rgb(var(--md-sys-color-tertiary) / 0.95);
  border-radius: 0.75rem;
}

.btn-surface--secondary:hover:not(:disabled),
.btn-surface--secondary:focus-visible,
.btn-surface--tertiary:hover:not(:disabled),
.btn-surface--tertiary:focus-visible,
.btn-surface-quiet:hover:not(:disabled),
.btn-surface-quiet:focus-visible,
.btn-surface-quiet--neutral:hover:not(:disabled),
.btn-surface-quiet--neutral:focus-visible,
.btn-surface-quiet--accent:hover:not(:disabled),
.btn-surface-quiet--accent:focus-visible {
  background-color: rgb(var(--md-sys-color-surface) / 0.85);
}

.btn-link {
  background-color: transparent;
  border: 0;
  color: rgb(var(--md-sys-color-tertiary) / 0.95);
  text-decoration: none;
}

.btn-link:hover:not(:disabled),
.btn-link:focus-visible {
  background-color: rgb(var(--md-sys-color-surface) / 0.8);
  text-decoration: none;
}

.btn-surface--destructive,
.btn-surface-quiet--destructive,
.btn-icon--destructive {
  background-color: transparent;
  border: 1px solid rgb(var(--md-sys-color-error) / 0.5);
  color: rgb(var(--md-sys-color-error) / 1);
  box-shadow: none;
}

.btn-surface--destructive:hover:not(:disabled),
.btn-surface--destructive:focus-visible,
.btn-surface-quiet--destructive:hover:not(:disabled),
.btn-surface-quiet--destructive:focus-visible,
.btn-icon--destructive:hover:not(:disabled),
.btn-icon--destructive:focus-visible {
  background-color: rgb(var(--md-sys-color-error) / 0.1);
}

.btn-icon {
  width: 2rem;
  height: 2rem;
  padding: 0.25rem;
  border-radius: 0.75rem;
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.4);
  background-color: transparent;
  color: rgb(var(--md-sys-color-tertiary) / 0.95);
}

.btn-icon:hover:not(:disabled),
.btn-icon:focus-visible {
  background-color: rgb(var(--md-sys-color-surface) / 0.85);
}

.btn-icon svg {
  width: 1rem;
  height: 1rem;
}

.btn-icon--primary {
  background-color: rgb(var(--color-primary) / 1);
  border-color: transparent;
  color: rgb(var(--md-sys-color-on-primary) / 1);
}

.btn-icon--primary:hover:not(:disabled),
.btn-icon--primary:focus-visible {
  filter: brightness(1.1);
}

.btn-icon--secondary {
  background-color: transparent;
}

.btn-pill:active:not(:disabled),
.btn-link:active:not(:disabled),
.btn-icon:active:not(:disabled) {
  transform: translateY(0);
  filter: brightness(0.96);
}

.btn-pill:disabled,
.btn-link:disabled,
.btn-icon:disabled {
  opacity: 0.55;
  filter: saturate(0.7);
}

/* Final V3 normalization shared by admin and public pages. */

.btn-surface--accent,
.btn-public-primary {
  background-color: rgb(var(--md-sys-color-primary) / 1);
  color: rgb(var(--md-sys-color-on-primary) / 1);
  border: 1px solid rgb(var(--md-sys-color-primary) / 0.32);
  box-shadow: 0 12px 28px rgb(var(--md-sys-color-primary) / 0.24);
}

.btn-surface--accent:hover:not(:disabled),
.btn-surface--accent:focus-visible,
.btn-public-primary:hover:not(:disabled),
.btn-public-primary:focus-visible {
  background-color: rgb(var(--md-sys-color-primary) / 0.92);
  box-shadow: 0 16px 30px rgb(var(--md-sys-color-primary) / 0.28);
  filter: none;
}

.btn-surface--secondary,
.btn-surface--tertiary,
.btn-surface-quiet,
.btn-surface-quiet--neutral,
.btn-icon--secondary,
.btn-public-secondary,
.btn-public-overlay {
  background-color: rgb(var(--md-sys-color-secondary) / 0.78);
  color: rgb(var(--md-sys-color-on-secondary) / 0.98);
  border: 1px solid rgb(var(--md-sys-color-outline) / 0.38);
  box-shadow: none;
}

.btn-public-overlay {
  background-color: rgb(var(--md-sys-color-surface) / 0.76);
  backdrop-filter: blur(10px);
}

.btn-surface--secondary:hover:not(:disabled),
.btn-surface--secondary:focus-visible,
.btn-surface--tertiary:hover:not(:disabled),
.btn-surface--tertiary:focus-visible,
.btn-surface-quiet:hover:not(:disabled),
.btn-surface-quiet:focus-visible,
.btn-surface-quiet--neutral:hover:not(:disabled),
.btn-surface-quiet--neutral:focus-visible,
.btn-icon--secondary:hover:not(:disabled),
.btn-icon--secondary:focus-visible,
.btn-public-secondary:hover:not(:disabled),
.btn-public-secondary:focus-visible,
.btn-public-overlay:hover:not(:disabled),
.btn-public-overlay:focus-visible {
  background-color: rgb(var(--md-sys-color-surface) / 0.9);
  border-color: rgb(var(--md-sys-color-primary) / 0.28);
}

.btn-link,
.btn-public-text {
  background-color: transparent;
  border: 1px solid transparent;
  color: rgb(var(--md-sys-color-primary) / 0.96);
  text-decoration: none;
  box-shadow: none;
}

.btn-link:hover:not(:disabled),
.btn-link:focus-visible,
.btn-public-text:hover:not(:disabled),
.btn-public-text:focus-visible {
  background-color: rgb(var(--md-sys-color-primary) / 0.1);
  color: rgb(var(--md-sys-color-primary) / 1);
  text-decoration: none;
}

.btn-surface--destructive,
.btn-surface-quiet--destructive,
.btn-icon--destructive,
.btn-public-destructive {
  background-color: rgb(var(--md-sys-color-error) / 0.08);
  border: 1px solid rgb(var(--md-sys-color-error) / 0.45);
  color: rgb(var(--md-sys-color-error) / 1);
  box-shadow: none;
}

.btn-surface--destructive:hover:not(:disabled),
.btn-surface--destructive:focus-visible,
.btn-surface-quiet--destructive:hover:not(:disabled),
.btn-surface-quiet--destructive:focus-visible,
.btn-icon--destructive:hover:not(:disabled),
.btn-icon--destructive:focus-visible,
.btn-public-destructive:hover:not(:disabled),
.btn-public-destructive:focus-visible {
  background-color: rgb(var(--md-sys-color-error) / 0.14);
  border-color: rgb(var(--md-sys-color-error) / 0.56);
}

.btn-pill:focus-visible,
.btn-link:focus-visible,
.btn-icon:focus-visible,
.btn-public-text:focus-visible {
  outline: 2px solid rgb(var(--md-sys-color-primary) / 0.34);
  outline-offset: 2px;
}

.btn-pill:active:not(:disabled),
.btn-link:active:not(:disabled),
.btn-icon:active:not(:disabled) {
  transform: translateY(0);
  filter: brightness(0.97);
}

.btn-pill:disabled,
.btn-link:disabled,
.btn-icon:disabled {
  opacity: 0.52;
  filter: saturate(0.74);
  box-shadow: none;
}

.link-card{
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  border-radius: 0.75rem;
  border-width: 1px;
  border-color: rgb(var(--md-sys-color-outline) / 0.4);
  background-color: rgb(var(--md-sys-color-surface) / 0.6);
  padding: 1rem;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

#blog-list-view > .link-card:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

#blog-editor-view > .link-card:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

@media (max-width: 640px) {
  #blog-list-view > .link-card:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .link-card:first-child > .flex {
    width: 100%;
  }
}

.links-admin-shell > .link-card:first-child,
.blog-admin-shell > [data-blog-view="list"] > .link-card:first-child {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}


.blog-admin-shell > [data-blog-view="list"] > .link-card:first-child p {
  color: rgb(190 174 218 / 0.92);
  font-size: 0.86rem;
}

.profile-bio-card .link-card.items-center.justify-between {
  margin-bottom: 0.75rem;
}

.link-card:hover{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.link-card--dragging {
    opacity: 0.7;
  }

.link-card--drag-over{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
    box-shadow: 0 0 0 2px rgb(var(--color-primary) / 0.25);
}

.link-card__drag-handle{
  display: inline-flex;
  height: 2rem;
  width: 2rem;
  cursor: grab;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  color: rgb(var(--md-sys-color-tertiary) / 0.4);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.profile-bio-card .flex.link-card__drag-handle.justify-between {
  margin-bottom: 0.75rem;
}

.link-card__drag-handle:hover{
  --tw-text-opacity: 1;
  color: rgb(var(--md-sys-color-tertiary) / var(--tw-text-opacity, 1));
}

.link-card__drag-handle:focus-visible{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-color: rgb(var(--color-primary) / 0.6);
  --tw-ring-offset-width: 2px;
    ring-offset-color: rgb(var(--md-sys-color-surface) / 1);
}

.link-card__drag-handle svg{
  height: 1.25rem;
  width: 1.25rem;
}

.link-card__switch{
  border-radius: 0.5rem;
  border-width: 1px;
  border-color: rgb(var(--md-sys-color-outline) / 0.3);
  background-color: rgb(var(--color-secondary) / 0.3);
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.link-card__switch:hover {
    border-color: rgb(var(--md-sys-color-primary) / 0.5);
    background-color: rgb(var(--md-sys-color-secondary) / 0.5);
  }

.link-card__action svg{
  height: 1rem;
  width: 1rem;
}

@keyframes linkItemMovedPulse {
  0% {
    transform: translate3d(0, 0, 0);
    box-shadow: 0 0 0 0 rgb(var(--color-accent) / 0);
    opacity: 1;
  }

  40% {
    transform: translate3d(0, -6px, 0);
    box-shadow: 0 16px 32px -18px rgb(var(--color-accent) / 0.4);
    opacity: 0.92;
  }

  100% {
    transform: translate3d(0, 0, 0);
    box-shadow: 0 0 0 0 rgb(var(--color-accent) / 0);
    opacity: 1;
  }
}

.link-item--moved {
  animation: linkItemMovedPulse 620ms ease;
  will-change: transform, box-shadow, opacity;
}

.admin-album-card {
  position: relative;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

@keyframes adminAlbumMovedPulse {
  0% {
    transform: translate3d(0, 0, 0);
    box-shadow: 0 0 0 0 rgb(var(--color-accent) / 0);
    background-color: rgb(var(--admin-card-surface) / 1);
  }

  40% {
    transform: translate3d(0, -6px, 0);
    box-shadow: 0 20px 44px -22px rgb(var(--color-accent) / 0.55);
    background-color: rgb(var(--admin-card-surface) / 1);
  }

  65% {
    transform: translate3d(0, 3px, 0);
    box-shadow: 0 14px 32px -18px rgb(var(--color-accent) / 0.35);
    background-color: rgb(var(--admin-card-surface) / 1);
  }

  100% {
    transform: translate3d(0, 0, 0);
    box-shadow: 0 0 0 0 rgb(var(--color-accent) / 0);
    background-color: rgb(var(--admin-card-surface) / 1);
  }
}

.admin-album-card--moved {
  animation: adminAlbumMovedPulse 720ms ease;
  outline: 2px solid rgb(var(--color-accent) / 0.45);
  outline-offset: 2px;
  will-change: transform, box-shadow, background-color;
}

/*
  NewDesignTemplate admin migration.
  This final layer intentionally overrides the previous admin visual shell while
  preserving all IDs, forms and data attributes consumed by public/js/admin.js.
*/

body[data-admin-theme='dark'],
body[data-admin-theme='light'],
body[data-admin-theme='hello-kitty'] {
  --admin-bg: 13 11 18;
  --admin-panel: 22 18 31;
  --admin-panel-2: 30 24 40;
  --admin-fg: 240 236 248;
  --admin-muted: 139 127 168;
  --admin-primary: 232 68 122;
  --admin-primary-2: 156 95 199;
  --admin-border-soft: 232 68 122;
  --admin-danger: 248 113 113;
  --md-sys-color-primary: var(--admin-primary);
  --md-sys-color-secondary: var(--admin-panel-2);
  --md-sys-color-tertiary: var(--admin-fg);
  --md-sys-color-surface: var(--admin-bg);
  --md-sys-color-outline: var(--admin-border-soft);
  --md-sys-color-on-primary: 255 255 255;
  --md-sys-color-on-secondary: var(--admin-fg);
  --color-primary: var(--admin-bg);
  --color-secondary: var(--admin-panel-2);
  --color-accent: var(--admin-primary);
  --color-light-text: var(--admin-fg);
  --color-light-text-alpha: 1;
  --admin-card-surface: var(--admin-panel);
  --admin-card-border: var(--admin-border-soft);
  --admin-muted-text: var(--admin-muted);
  font-family: 'DM Sans', 'Montserrat', sans-serif;
}

body[data-admin-theme='light'] {
  --admin-bg: 248 245 255;
  --admin-panel: 255 255 255;
  --admin-panel-2: 245 238 250;
  --admin-fg: 47 36 61;
  --admin-muted: 116 96 139;
  --admin-border-soft: 219 39 119;
  --admin-primary: 219 39 119;
  --admin-primary-2: 156 95 199;
}

body[data-admin-theme='hello-kitty'] {
  --admin-bg: 255 246 250;
  --admin-panel: 255 255 255;
  --admin-panel-2: 255 240 245;
  --admin-fg: 91 44 72;
  --admin-muted: 143 95 122;
  --admin-border-soft: 255 105 180;
  --admin-primary: 255 105 180;
  --admin-primary-2: 216 27 96;
}

body[data-admin-theme] {
  background: rgb(var(--admin-bg) / 1);
}

#login-screen {
  position: relative;
  min-height: 100vh;
  background:
    radial-gradient(ellipse 720px 420px at 50% 0%, rgb(var(--admin-primary) / 0.16), transparent 68%),
    radial-gradient(ellipse 560px 520px at 100% 100%, rgb(var(--admin-primary-2) / 0.12), transparent 72%),
    rgb(var(--admin-bg) / 1) !important;
  color: rgb(var(--admin-fg) / 1);
  font-family: 'DM Sans', 'Montserrat', sans-serif;
}

#login-screen > div {
  width: min(100%, 24rem);
  border: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 1.5rem !important;
  background: rgb(var(--admin-panel) / 0.96) !important;
  box-shadow: 0 28px 70px -44px rgb(var(--admin-primary) / 0.62);
}

.admin-login__brand {
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.admin-login__brand-logo {
  width: 3.5rem !important;
  height: 3.5rem !important;
  border-radius: 1rem !important;
  background: linear-gradient(135deg, rgb(var(--admin-primary) / 1), rgb(var(--admin-primary-2) / 1)) !important;
  box-shadow: none !important;
  ring-width: 0 !important;
}

.admin-login__brand-logo-image {
  width: 1.75rem !important;
  height: 1.75rem !important;
  filter: brightness(0) invert(1);
}

.admin-login__brand-caption {
  color: rgb(var(--admin-muted) / 1) !important;
  font-size: 0.8rem;
  letter-spacing: 0;
  text-transform: none;
}

#login-screen h1 {
  margin-bottom: 1.5rem;
  color: rgb(var(--admin-fg) / 1) !important;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: 0;
}

#login-screen .field-outlined {
  min-height: 2.75rem;
  border-color: rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.875rem !important;
  background: rgb(var(--admin-panel-2) / 0.86) !important;
  color: rgb(var(--admin-fg) / 1) !important;
}

#login-screen .field-outlined:focus {
  border-color: rgb(var(--admin-primary) / 0.65) !important;
  box-shadow: 0 0 0 3px rgb(var(--admin-primary) / 0.14) !important;
}

#login-screen .field-outlined-label {
  color: rgb(var(--admin-muted) / 1) !important;
  font-size: 0.78rem;
  letter-spacing: 0;
  text-transform: none;
}

#dashboard-screen,
.admin-dashboard {
  min-height: 100vh;
  background: rgb(var(--admin-bg) / 1) !important;
  color: rgb(var(--admin-fg) / 1);
  font-family: 'DM Sans', 'Montserrat', sans-serif;
}

.admin-dashboard {
  display: flex;
}

.admin-sidebar {
  width: 240px !important;
  gap: 0 !important;
  padding: 0 !important;
  border-right: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  background: rgb(var(--admin-panel) / 0.82) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.admin-sidebar__brand {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-height: 4.5rem;
  margin: 0 !important;
  padding: 1rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.admin-sidebar__brand-accent {
  display: inline-flex;
  width: 2.25rem;
  height: 2.25rem;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 0.875rem;
  background: linear-gradient(135deg, rgb(var(--admin-primary) / 1), rgb(var(--admin-primary-2) / 1));
  color: transparent !important;
  font-size: 0;
}

.admin-sidebar__brand-accent::before {
  content: 'M';
  color: #fff;
  font-family: 'UnifrakturMaguntia', cursive;
  font-size: 1.15rem;
  line-height: 1;
}

.admin-sidebar__brand-label {
  color: rgb(var(--admin-fg) / 1) !important;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.2;
  text-transform: none !important;
}

.admin-sidebar__brand-subtitle {
  color: rgb(var(--admin-muted) / 1) !important;
  font-size: 0.72rem !important;
  font-weight: 400 !important;
  line-height: 1.25;
}

.admin-sidebar__nav {
  flex: 1 1 auto;
  gap: 0.125rem !important;
  padding: 0.75rem 0.5rem !important;
  overflow-y: auto;
}

.admin-sidebar__nav-button {
  width: 100%;
  min-height: 2.625rem;
  justify-content: flex-start;
  gap: 0.75rem !important;
  border: 0 !important;
  border-radius: 0.75rem !important;
  padding: 0.625rem 0.75rem !important;
  background: transparent !important;
  color: rgb(var(--admin-muted) / 1) !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.admin-sidebar__nav-button:hover,
.admin-sidebar__nav-button:focus-visible {
  background: rgb(var(--admin-primary) / 0.08) !important;
  color: rgb(var(--admin-primary) / 1) !important;
}

.admin-sidebar__nav-button[aria-current='page'] {
  background: rgb(var(--admin-primary) / 0.14) !important;
  color: rgb(var(--admin-primary) / 1) !important;
}

.admin-sidebar__nav-button[aria-current='page']::after {
  content: '›';
  margin-left: auto;
  color: currentColor;
  font-size: 1.25rem;
  line-height: 1;
}

.admin-sidebar__nav-button-icon {
  width: 1.125rem !important;
  height: 1.125rem !important;
  color: currentColor !important;
}

.admin-sidebar__footer {
  gap: 0.5rem !important;
  margin-top: auto !important;
  padding: 1rem !important;
  border: 0 !important;
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.admin-sidebar__language-wrapper {
  margin-top: 0 !important;
}

.admin-sidebar__footer-label {
  color: rgb(var(--admin-muted) / 0.9) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.admin-sidebar__language-switcher,
.admin-main__theme-select {
  border: 1px solid rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(var(--admin-panel-2) / 0.82) !important;
  color: rgb(var(--admin-fg) / 1) !important;
}

.admin-sidebar__logout {
  justify-content: flex-start !important;
  border: 0 !important;
  border-radius: 0.75rem !important;
  background: transparent !important;
  color: rgb(var(--admin-danger) / 1) !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.admin-sidebar__view-site {
  display: inline-flex;
  min-height: 2.5rem;
  align-items: center;
  justify-content: flex-start;
  gap: 0.75rem;
  border-radius: 0.75rem;
  padding: 0.625rem 0.75rem;
  color: rgb(var(--admin-muted) / 1);
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none;
}

.admin-sidebar__view-site:hover,
.admin-sidebar__view-site:focus-visible {
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
  outline: 2px solid rgb(var(--admin-primary) / 0.28);
  outline-offset: 2px;
}

.admin-sidebar__logout:hover,
.admin-sidebar__logout:focus-visible {
  background: rgb(var(--admin-danger) / 0.1) !important;
}

.admin-main {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 !important;
  background: rgb(var(--admin-bg) / 1) !important;
}

.admin-main__header {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  height: 4.5rem !important;
  align-items: center;
  gap: 1rem;
  margin: 0 !important;
  padding: 0 1.5rem !important;
  border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  background: rgb(var(--admin-panel) / 0.72) !important;
  backdrop-filter: blur(14px);
}

.admin-main__header-group {
  min-width: 0;
  gap: 0.5rem !important;
}

.admin-main__header-group::before {
  content: 'Admin';
  color: rgb(var(--admin-muted) / 1);
  font-size: 0.78rem;
}

.admin-main__header-group::after {
  content: '›';
  color: rgb(var(--admin-muted) / 0.8);
  font-size: 1rem;
}

.admin-main__title {
  overflow: hidden;
  color: rgb(var(--admin-fg) / 1) !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-main__theme-group {
  margin-left: auto !important;
  gap: 0.5rem !important;
}

.admin-main__theme-label {
  color: rgb(var(--admin-muted) / 1) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.admin-main__actions {
  margin-left: 0 !important;
}

.admin-main__action-btn,
.btn-surface--accent,
.btn-public-primary {
  border: 1px solid rgb(var(--admin-primary) / 0.34) !important;
  border-radius: 0.75rem !important;
  background: linear-gradient(135deg, rgb(var(--admin-primary) / 1), rgb(194 47 98 / 0.95)) !important;
  color: #fff !important;
  box-shadow: none !important;
  font-family: 'DM Sans', sans-serif;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.admin-main__content {
  max-width: 1180px;
  margin: 0 auto;
  padding: 1.75rem 2rem 3rem !important;
}

.admin-section {
  animation: adminSectionFade 180ms ease;
}

.admin-section__title,
.admin-section h2.type-h2,
.admin-card > h2,
.admin-card h2 {
  color: rgb(var(--admin-fg) / 1) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
}

.admin-card {
  border: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 1rem !important;
  background: rgb(var(--admin-panel) / 0.94) !important;
  color: rgb(var(--admin-fg) / 1) !important;
  box-shadow: none !important;
}

.admin-card--panel,
.admin-card--muted,
.admin-card--tile,
.admin-card--table,
.link-card,
.admin-language-alert {
  border-color: rgb(var(--admin-border-soft) / 0.14) !important;
  background: rgb(var(--admin-panel-2) / 0.58) !important;
  box-shadow: none !important;
}

#dashboard-screen label:not(.sr-only),
#dashboard-screen .type-label,
#dashboard-screen .text-gray-400,
#dashboard-screen .text-gray-300 {
  color: rgb(var(--admin-muted) / 1) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

#dashboard-screen input:not([type='hidden']):not([type='checkbox']):not([type='radio']):not([type='color']):not([type='range']),
#dashboard-screen textarea,
#dashboard-screen select {
  border-color: rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(var(--admin-panel-2) / 0.82) !important;
  color: rgb(var(--admin-fg) / 1) !important;
}

#dashboard-screen input:focus,
#dashboard-screen textarea:focus,
#dashboard-screen select:focus {
  border-color: rgb(var(--admin-primary) / 0.58) !important;
  box-shadow: 0 0 0 3px rgb(var(--admin-primary) / 0.14) !important;
}

.btn-pill,
.btn-link,
.btn-icon,
.btn-surface--secondary,
.btn-surface--tertiary,
.btn-surface-quiet,
.btn-surface-quiet--neutral,
.btn-public-secondary,
.btn-public-overlay {
  border-color: rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(var(--admin-panel-2) / 0.7) !important;
  color: rgb(var(--admin-fg) / 0.92) !important;
  box-shadow: none !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.btn-pill:hover:not(:disabled),
.btn-link:hover:not(:disabled),
.btn-icon:hover:not(:disabled),
.btn-surface--secondary:hover:not(:disabled),
.btn-surface--tertiary:hover:not(:disabled),
.btn-surface-quiet:hover:not(:disabled),
.btn-surface-quiet--neutral:hover:not(:disabled) {
  border-color: rgb(var(--admin-primary) / 0.34) !important;
  background: rgb(var(--admin-primary) / 0.1) !important;
  color: rgb(var(--admin-primary) / 1) !important;
}

.btn-surface--destructive,
.btn-surface-quiet--destructive,
.btn-icon--destructive,
.btn-public-destructive {
  border-color: rgb(var(--admin-danger) / 0.45) !important;
  background: rgb(var(--admin-danger) / 0.1) !important;
  color: rgb(var(--admin-danger) / 1) !important;
}

.password-toggle-btn {
  border-color: rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(var(--admin-panel-2) / 0.82) !important;
  color: rgb(var(--admin-muted) / 1) !important;
}

@media (max-width: 1023px) {
  .admin-dashboard {
    display: block;
  }

  .admin-sidebar {
    width: min(280px, 82vw) !important;
  }

  .admin-main__content {
    padding: 1rem !important;
  }

  .admin-main__theme-group {
    display: none !important;
  }
}

@keyframes adminSectionFade {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

html[data-app-context='public'] #gallery-close-btn,
html[data-app-context='public'] .swiper-button-prev,
html[data-app-context='public'] .swiper-button-next {
  width: 2.5rem !important;
  height: 2.5rem !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #fff !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

html[data-app-context='public'] .swiper-button-prev,
html[data-app-context='public'] .swiper-button-next {
  width: 2.25rem !important;
  height: 2.25rem !important;
}

html[data-app-context='public'] #gallery-modal {
  padding: 1rem !important;
  background: rgba(0, 0, 0, 0.96) !important;
  backdrop-filter: blur(8px) !important;
}

html[data-app-context='public'] #gallery-modal .swiper {
  width: 100% !important;
  max-width: min(100vw, 72rem) !important;
  height: min(80vh, 48rem) !important;
  max-height: 80vh !important;
}

html[data-app-context='public'] #gallery-modal .swiper-slide {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}

html[data-app-context='public'] #gallery-modal .public-gallery-modal__image {
  display: block !important;
  width: auto !important;
  max-width: min(100%, 72rem) !important;
  height: auto !important;
  max-height: 78vh !important;
  border: 0 !important;
  border-radius: 0.75rem !important;
  background: transparent !important;
  box-shadow: none !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

html[data-app-context='public'] #gallery-close-btn,
html[data-app-context='public'] #gallery-modal .swiper-button-prev,
html[data-app-context='public'] #gallery-modal .swiper-button-next {
  width: 2.5rem !important;
  height: 2.5rem !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #fff !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  transition: color 200ms ease, border-color 200ms ease, background-color 200ms ease, transform 200ms ease !important;
}

html[data-app-context='public'] #gallery-close-btn:hover,
html[data-app-context='public'] #gallery-close-btn:focus-visible,
html[data-app-context='public'] #gallery-modal .swiper-button-prev:hover,
html[data-app-context='public'] #gallery-modal .swiper-button-prev:focus-visible,
html[data-app-context='public'] #gallery-modal .swiper-button-next:hover,
html[data-app-context='public'] #gallery-modal .swiper-button-next:focus-visible {
  border-color: rgba(232, 68, 122, 0.38) !important;
  background: rgba(232, 68, 122, 0.14) !important;
  color: #e8447a !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

html[data-app-context='public'] #gallery-modal .swiper-button-prev,
html[data-app-context='public'] #gallery-modal .swiper-button-next {
  width: 2.25rem !important;
  height: 2.25rem !important;
}

html[data-app-context='public'] #gallery-photo-description {
  max-width: min(100%, 42rem) !important;
  height: auto !important;
  min-height: 1.25rem !important;
  margin-top: 1rem !important;
  color: rgba(240, 236, 248, 0.72) !important;
  font-family: 'Merriweather', Georgia, serif !important;
  font-size: 0.8125rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

html[data-app-context='public'] #gallery-photo-counter {
  height: auto !important;
  margin-top: 0.25rem !important;
  color: rgba(191, 191, 191, 0.5) !important;
  font-family: 'DM Sans', Montserrat, sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

html[data-app-context='public'] #gallery-modal .swiper-button-prev::after,
html[data-app-context='public'] #gallery-modal .swiper-button-next::after {
  font-size: 0.875rem !important;
  font-weight: 700 !important;
}

@media (max-width: 767px) {
  html[data-app-context='public'] #gallery-modal {
    padding: 0.75rem !important;
  }

  html[data-app-context='public'] #gallery-close-btn {
    top: 1rem !important;
    right: 1rem !important;
  }

  html[data-app-context='public'] #gallery-modal .swiper-button-prev {
    left: 0.75rem !important;
  }

  html[data-app-context='public'] #gallery-modal .swiper-button-next {
    right: 0.75rem !important;
  }
}

html[data-app-context='public'] main {
  padding-top: 2rem !important;
  padding-right: 1rem !important;
  padding-bottom: 2rem !important;
  padding-left: 1rem !important;
}

html[data-app-context='public'] #public-home-shell {
  overflow: visible !important;
}

html[data-app-context='public'] header {
  animation: publicHeaderEnter 700ms ease both;
}

html[data-app-context='public'] #profile-home-link {
  width: 10rem !important;
  height: 10rem !important;
  margin-inline: auto !important;
  padding: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #e8447a, #9c5fc7, #57001d) !important;
  transition: transform 220ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

html[data-app-context='public'] #profile-home-link:hover,
html[data-app-context='public'] #profile-home-link:focus-visible {
  transform: scale(1.07) !important;
}

html[data-app-context='public'] #profileImage {
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
}

html[data-app-context='public'] #profileName {
  color: #f0ecf8 !important;
  font-size: clamp(2.5rem, 10vw, 5rem) !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  text-shadow: 0 0 40px rgba(232, 68, 122, 0.3) !important;
}

html[data-app-context='public'] #bio {
  max-width: 36rem !important;
  margin-top: 1.25rem !important;
  margin-inline: auto !important;
  color: rgba(191, 191, 191, 0.85) !important;
  font-family: Merriweather, Georgia, serif !important;
  font-size: 0.92rem !important;
  line-height: 1.85 !important;
  text-align: left !important;
}

html[data-app-context='public'] #links-container {
  gap: 0.75rem !important;
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

html[data-app-context='public'] .home-link-anchor {
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  position: relative !important;
  justify-content: center !important;
  text-align: center !important;
  padding-right: 4.5rem !important;
  padding-left: 4.5rem !important;
}

html[data-app-context='public'] .home-link-anchor .link-icon {
  position: absolute !important;
  top: 50% !important;
  left: 1.25rem !important;
  transform: translateY(-50%) !important;
  border-radius: 0.875rem !important;
}

html[data-app-context='public'] .home-link-anchor:not(.link-has-icon) {
  padding-right: 1.25rem !important;
  padding-left: 1.25rem !important;
}

html[data-app-context='public'] .home-link-content {
  flex: 0 1 auto !important;
  width: 100% !important;
  align-items: center !important;
  text-align: center !important;
}

html[data-app-context='public'] .home-link-anchor .link-text,
html[data-app-context='public'] .home-link-sublabel {
  width: 100% !important;
  text-align: center !important;
}

html[data-app-context='public'] .home-link-premium {
  position: absolute !important;
  top: 50% !important;
  right: 1.25rem !important;
  transform: translateY(-50%) !important;
}

html[data-app-context='public'] .home-link-primary .link-icon {
  box-shadow: 0 2px 12px rgba(232, 68, 122, 0.5) !important;
}

html[data-app-context='public'] .home-link-secondary[data-link-type='privacy'] .link-icon {
  box-shadow: none !important;
}

html[data-app-context='public'] #blog-posts-section,
html[data-app-context='public'] #albums-section {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

html[data-app-context='public'] #blog-posts-section .home-section-title,
html[data-app-context='public'] #albums-section .home-section-title {
  color: #f0ecf8 !important;
  font-family: UnifrakturMaguntia, cursive !important;
  font-size: 2.5rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  text-shadow: none !important;
}

html[data-app-context='public'] #blog-posts-section > .mb-6 {
  margin-bottom: 1.5rem !important;
}

html[data-app-context='public'] .public-blog-card,
html[data-app-context='public'] .home-album-card {
  animation: publicSectionItemEnter 500ms ease both;
}

html[data-app-context='public'] .public-blog-card {
  min-height: 9.0625rem !important;
}

html[data-app-context='public'] .public-blog-card__media {
  width: 7rem !important;
  min-height: 9.0625rem !important;
}

html[data-app-context='public'] .public-blog-shell {
  max-width: 42rem !important;
  margin-inline: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html[data-app-context='public'] .public-blog-archive-title {
  margin-bottom: 1.5rem !important;
}

html[data-app-context='public'] #blog-posts-section[data-blog-list-variant='archive'] #blog-posts-container {
  gap: 0.75rem !important;
}

html[data-app-context='public'] #blog-posts-section[data-blog-list-variant='archive'] .public-blog-card--archive {
  border-color: rgba(255, 255, 255, 0.07) !important;
  background: rgba(22, 18, 31, 0.75) !important;
  box-shadow: none !important;
  backdrop-filter: blur(8px) !important;
}

html[data-app-context='public'] #blog-posts-section[data-blog-list-variant='archive'] .public-blog-card__media--archive {
  width: 7rem !important;
  height: auto !important;
  min-height: 9.0625rem !important;
  border-radius: 0.75rem !important;
}

html[data-app-context='public'] .public-blog-pagination {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 0.5rem !important;
  margin-top: 1.5rem !important;
}

html[data-app-context='public'] .public-blog-pagination__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 2rem !important;
  height: 2rem !important;
  padding: 0 0.75rem !important;
  border: 1px solid rgba(232, 68, 122, 0.18) !important;
  border-radius: 999px !important;
  background: rgba(22, 18, 31, 0.8) !important;
  color: #e8447a !important;
  font-family: 'DM Sans', Montserrat, sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  text-decoration: none !important;
  transition: color 200ms ease, border-color 200ms ease, background-color 200ms ease, filter 200ms ease, transform 200ms ease !important;
  backdrop-filter: blur(8px) !important;
}

html[data-app-context='public'] .public-blog-pagination__link:hover,
html[data-app-context='public'] .public-blog-pagination__link:focus-visible {
  border-color: rgba(232, 68, 122, 0.42) !important;
  color: #f06292 !important;
  filter: brightness(1.08) !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

html[data-app-context='public'] .public-blog-pagination__link--active {
  border-color: #e8447a !important;
  background: #e8447a !important;
  color: #fff !important;
  pointer-events: none !important;
}

html[data-app-context='public'] .public-blog-pagination__link--arrow {
  font-size: 1rem !important;
}

html[data-app-context='public'] .home-blog-see-all,
html[data-app-context='public'] #blog-posts-section .mt-6 > a {
  color: #e8447a !important;
  font-family: 'DM Sans', Montserrat, sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  gap: 0.5rem !important;
  text-decoration: none !important;
  transition: color 200ms ease, filter 200ms ease, transform 200ms ease !important;
}

html[data-app-context='public'] .home-blog-see-all:hover,
html[data-app-context='public'] .home-blog-see-all:focus-visible,
html[data-app-context='public'] #blog-posts-section .mt-6 > a:hover,
html[data-app-context='public'] #blog-posts-section .mt-6 > a:focus-visible {
  color: #f06292 !important;
  filter: brightness(1.08) !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

html[data-app-context='public'] .home-poll-card {
  border-color: rgba(232, 68, 122, 0.15) !important;
  background: rgba(22, 18, 31, 0.65) !important;
  color: #f0ecf8 !important;
  box-shadow: none !important;
  backdrop-filter: blur(10px) !important;
}

html[data-app-context='public'] .home-poll-card__question {
  color: #f0ecf8 !important;
}

html[data-app-context='public'] .home-poll-option {
  border-color: rgba(255, 255, 255, 0.1) !important;
  background: rgba(0, 0, 0, 0.3) !important;
}

html[data-app-context='public'] .home-poll-option--active:hover,
html[data-app-context='public'] .home-poll-option--active:focus-visible {
  border-color: rgba(232, 68, 122, 0.4) !important;
  background: rgba(0, 0, 0, 0.3) !important;
}

html[data-app-context='public'] .home-poll-option__text {
  color: #f0ecf8 !important;
}

html[data-app-context='public'] .home-poll-option__vote-label,
html[data-app-context='public'] .home-poll-option__result {
  color: #e8447a !important;
}

html[data-app-context='public'] .home-album-card {
  border-color: rgba(255, 255, 255, 0.07) !important;
  background: rgba(22, 18, 31, 0.75) !important;
  box-shadow: none !important;
  backdrop-filter: blur(8px) !important;
}

html[data-app-context='public'] .home-album-card__title {
  color: #f0ecf8 !important;
}

html[data-app-context='public'] .home-album-card__description {
  color: #8b7fa8 !important;
}

@media (min-width: 768px) {
  html[data-app-context='public'] main {
    padding-top: 3.5rem !important;
    padding-right: 1rem !important;
    padding-bottom: 3.5rem !important;
    padding-left: 1rem !important;
  }

  html[data-app-context='public'] #profile-home-link {
    width: 13rem !important;
    height: 13rem !important;
  }

  html[data-app-context='public'] .public-blog-card {
    min-height: 7.75rem !important;
  }

  html[data-app-context='public'] .public-blog-card__media {
    width: 10rem !important;
    min-height: 7.625rem !important;
  }

  html[data-app-context='public'] #blog-posts-section[data-blog-list-variant='archive'] .public-blog-card__media--archive {
    width: 10rem !important;
    min-height: 7.625rem !important;
  }
}

html[data-app-context='public'] .public-language-switcher {
  top: 1.25rem !important;
  right: 1.25rem !important;
}

@keyframes publicHeaderEnter {
  from {
    transform: translateY(28px);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes publicSectionItemEnter {
  from {
    transform: translateY(14px);
  }
  to {
    transform: translateY(0);
  }
}

html[data-app-context='post'],
html[data-app-context='post'] body {
  background: #0d0b12;
  color: #f0ecf8;
}

html[data-app-context='post'] body {
  font-family: 'DM Sans', 'Montserrat', system-ui, sans-serif;
}

html[data-app-context='post'] #gothic-vine-canvas {
  opacity: 0.42;
}

html[data-app-context='post'] .public-post-shell {
  overflow: visible !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html[data-app-context='post'] .public-post-topbar {
  width: min(100%, 780px);
  margin: 0 auto;
  padding: 1.25rem 1.5rem 0;
}

html[data-app-context='post'] .public-post-back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 2.25rem;
  color: #8b7fa8;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: color 180ms ease, text-shadow 180ms ease, transform 180ms ease;
}

html[data-app-context='post'] .public-post-back-link::before {
  content: '\2190';
  font-size: 1rem;
  line-height: 1;
}

html[data-app-context='post'] .public-post-back-link:hover,
html[data-app-context='post'] .public-post-back-link:focus-visible {
  color: #e8447a;
  text-shadow: 0 0 18px rgb(232 68 122 / 0.44);
  transform: translateX(-2px);
}

html[data-app-context='post'] .public-post-back-link:focus-visible {
  outline: 2px solid rgb(232 68 122 / 0.72);
  outline-offset: 4px;
  border-radius: 999px;
}

html[data-app-context='post'] .public-post-hero {
  margin-top: 0.25rem;
}

html[data-app-context='post'] .public-post-hero__figure {
  width: 100% !important;
  height: min(42vw, 380px) !important;
  min-height: 16rem;
  max-height: 380px !important;
  border-radius: 0 !important;
  background: rgb(22 18 31 / 0.75) !important;
}

html[data-app-context='post'] .public-post-hero__figure img {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
  transform: none !important;
  filter: saturate(1.04) contrast(1.02) !important;
}

html[data-app-context='post'] .public-post-hero__scrim {
  background:
    linear-gradient(180deg, rgb(13 11 18 / 0) 0%, rgb(13 11 18 / 0.08) 34%, rgb(13 11 18 / 0.68) 72%, #0d0b12 100%),
    linear-gradient(0deg, #0d0b12 0%, rgb(13 11 18 / 0.88) 16%, rgb(13 11 18 / 0) 42%),
    radial-gradient(circle at 50% 95%, rgb(232 68 122 / 0.2), transparent 42%) !important;
}

html[data-app-context='post'] .public-post-hero__content {
  width: min(100%, 780px) !important;
  margin: -2.5rem auto 0 !important;
  padding: 0 1.5rem !important;
}

html[data-app-context='post'] #post-hero-figure.hidden ~ .post-hero-title-wrap {
  margin-top: 2.5rem !important;
}

html[data-app-context='post'] .public-post-title {
  max-width: none !important;
  margin: 0 0 1rem !important;
  color: #f0ecf8 !important;
  font-family: 'Playfair Display', 'Cormorant Garamond', Georgia, serif !important;
  font-size: clamp(1.75rem, 5vw, 2.625rem) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
}

html[data-app-context='post'] .public-post-meta {
  gap: 0.75rem 1rem !important;
  margin-bottom: 2rem;
}

html[data-app-context='post'] .public-post-meta__badge {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #8b7fa8 !important;
  font-size: 0.8125rem !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  backdrop-filter: none !important;
}

html[data-app-context='post'] .public-post-body {
  width: min(100%, 780px) !important;
  margin: 0 auto !important;
  padding: 0 1.5rem 3.75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html[data-app-context='post'] .public-post-body > .space-y-8 {
  display: block !important;
}

html[data-app-context='post'] .public-post-breadcrumbs {
  margin: 0 0 1.5rem !important;
  padding-top: 0 !important;
  color: #8b7fa8 !important;
  font-size: 0.8125rem !important;
}

html[data-app-context='post'] .public-post-breadcrumbs a {
  padding: 0 !important;
  color: inherit;
  text-decoration: none;
}

html[data-app-context='post'] .public-post-breadcrumbs a:hover {
  color: #e8447a;
}

html[data-app-context='post'] .public-post-lead {
  max-width: none !important;
  margin: 0 0 2.25rem !important;
  padding-bottom: 2rem !important;
  border-bottom: 1px solid rgb(232 68 122 / 0.15) !important;
  color: rgb(191 191 191 / 0.78) !important;
  font-family: 'Merriweather', Georgia, serif !important;
  font-size: 1rem !important;
  line-height: 1.75 !important;
}

html[data-app-context='post'] .public-post-content {
  position: relative;
  margin: 0 -1.25rem;
  padding: 1.35rem 1.25rem 1.5rem;
  border: 1px solid rgb(255 255 255 / 0.055);
  border-radius: 1rem;
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.48), rgb(0 0 0 / 0.28)),
    rgb(13 11 18 / 0.34);
  box-shadow: 0 18px 60px -54px rgb(0 0 0 / 0.96);
  backdrop-filter: blur(1px);
  color: #f0ecf8 !important;
  font-family: 'Merriweather', Georgia, serif !important;
  font-size: 1.0625rem !important;
  line-height: 1.85 !important;
}

html[data-app-context='post'] #post-meta-sections.hidden {
  display: none !important;
}

html[data-app-context='post'] .public-post-content p,
html[data-app-context='post'] .public-post-content ul,
html[data-app-context='post'] .public-post-content ol {
  margin: 0 0 1.5em;
}

html[data-app-context='post'] .public-post-content h1,
html[data-app-context='post'] .public-post-content h2,
html[data-app-context='post'] .public-post-content h3,
html[data-app-context='post'] .public-post-content h4 {
  color: #f0ecf8 !important;
  font-family: 'Playfair Display', 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.25;
}

html[data-app-context='post'] .public-post-content h1 {
  margin: 2.3em 0 0.75em;
  font-size: 1.875rem;
}

html[data-app-context='post'] .public-post-content h2 {
  margin: 2.2em 0 0.8em;
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
  font-size: 1.5rem;
}

html[data-app-context='post'] .public-post-content h3 {
  margin: 2em 0 0.75em;
  font-size: 1.1875rem;
}

html[data-app-context='post'] .public-post-content a {
  color: #e8447a !important;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.22em;
}

html[data-app-context='post'] .public-post-content blockquote {
  margin: 1.5rem 0 !important;
  padding: 0.75rem 1.25rem !important;
  border-left: 3px solid #e8447a !important;
  border-radius: 0 0.625rem 0.625rem 0;
  background: rgb(22 18 31 / 0.78);
  color: #8b7fa8 !important;
  font-size: 1rem !important;
  font-style: italic;
}

html[data-app-context='post'] .public-post-content img,
html[data-app-context='post'] .public-post-content video {
  max-width: 100%;
  margin: 1rem 0 1.5rem;
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.625rem;
  background: rgb(22 18 31 / 0.75);
  box-shadow: none !important;
}

html[data-app-context='post'] .public-post-content img:hover {
  border-color: rgb(232 68 122 / 0.3) !important;
  box-shadow: 0 18px 48px -32px rgb(232 68 122 / 0.52) !important;
  transform: translateY(-1px) !important;
}

html[data-app-context='post'] .public-post-content .blog-embed__wrapper {
  overflow: hidden;
  width: 100%;
  margin: 1.25rem 0 1.75rem;
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.75rem;
  background: #16121f;
}

html[data-app-context='post'] .public-post-content .blog-embed--social .blog-embed__wrapper,
html[data-app-context='post'] .public-post-content .blog-embed--portrait .blog-embed__wrapper {
  margin-inline: auto;
}

html[data-app-context='post'] .public-post-content .blog-embed__wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0 !important;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: inherit;
  aspect-ratio: auto;
}

html[data-app-context='post'] .public-post-content > iframe,
html[data-app-context='post'] .public-post-content .ql-video {
  display: block;
  overflow: hidden;
  width: 100%;
  margin: 1.25rem 0 1.75rem;
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.75rem;
  background: #16121f;
  aspect-ratio: 16 / 9;
  min-height: auto !important;
}

html[data-app-context='post'] .public-post-content img.blog-media-align-left {
  margin-right: auto !important;
  margin-left: 0 !important;
}

html[data-app-context='post'] .public-post-content img.blog-media-align-center {
  margin-right: auto !important;
  margin-left: auto !important;
}

html[data-app-context='post'] .public-post-content img.blog-media-align-right {
  margin-right: 0 !important;
  margin-left: auto !important;
}

html[data-app-context='post'] .public-post-content table {
  width: 100%;
  margin: 2rem 0;
  overflow: hidden;
  border-collapse: collapse;
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 0.75rem;
  background: rgb(22 18 31 / 0.65);
  font-size: 0.9375rem;
}

html[data-app-context='post'] .public-post-content th,
html[data-app-context='post'] .public-post-content td {
  border-bottom: 1px solid rgb(255 255 255 / 0.08);
  padding: 0.85rem 1rem;
  text-align: left;
}

html[data-app-context='post'] .public-post-content th {
  color: #e8447a;
  font-family: 'DM Sans', 'Montserrat', system-ui, sans-serif;
  font-weight: 700;
}

html[data-app-context='post'] .public-post-info-grid {
  margin-top: 3.25rem !important;
  padding-top: 2.5rem;
  border-top: 1px solid rgb(255 255 255 / 0.08);
}

html[data-app-context='post'] .public-post-info-card {
  border: 1px solid rgb(232 68 122 / 0.15) !important;
  border-radius: 0.875rem !important;
  background: rgb(22 18 31 / 0.72) !important;
  box-shadow: none !important;
}

html[data-app-context='post'] .public-post-info-card .type-label,
html[data-app-context='post'] .public-post-info-card h2 {
  color: #e8447a;
  letter-spacing: 0;
}

html[data-app-context='post'] .public-post-tag {
  border-color: rgb(232 68 122 / 0.26) !important;
  background: rgb(232 68 122 / 0.1) !important;
  color: #e8447a !important;
  font-size: 0.8125rem;
}

html[data-app-context='post'] .public-post-cta {
  margin: 2.5rem 0 0 !important;
  border: 1px solid rgb(232 68 122 / 0.2) !important;
  border-radius: 0.875rem !important;
  background:
    linear-gradient(135deg, rgb(232 68 122 / 0.18), rgb(22 18 31 / 0.88)),
    rgb(22 18 31 / 0.82) !important;
  color: #f0ecf8 !important;
  box-shadow: 0 18px 48px -34px rgb(232 68 122 / 0.8) !important;
}

html[data-app-context='post'] .public-post-cta .btn-public-primary {
  background: #e8447a !important;
  color: #fff !important;
  box-shadow: 0 0 0 1px rgb(232 68 122 / 0.32), 0 0 28px rgb(232 68 122 / 0.3) !important;
}

html[data-app-context='post'] .public-post-cta .btn-public-primary:hover {
  filter: brightness(1.08);
  box-shadow: 0 0 0 1px rgb(232 68 122 / 0.42), 0 0 38px rgb(232 68 122 / 0.46) !important;
}

@media (max-width: 767px) {
  html[data-app-context='post'] .public-post-topbar {
    padding: 1rem 1.125rem 0;
  }

  html[data-app-context='post'] .public-post-hero__figure {
    height: 16.25rem !important;
    min-height: 16.25rem;
  }

  html[data-app-context='post'] .public-post-hero__content,
  html[data-app-context='post'] .public-post-body {
    padding-right: 1.125rem !important;
    padding-left: 1.125rem !important;
  }

  html[data-app-context='post'] .public-post-hero__content {
    margin-top: -2rem !important;
  }

  html[data-app-context='post'] .public-post-title {
    font-size: clamp(1.75rem, 10vw, 2.35rem) !important;
  }

  html[data-app-context='post'] .public-post-content {
    font-size: 1rem !important;
  }
}

html[data-app-context='public'] .home-link-anchor {
  --home-link-glow-color: rgb(232 68 122 / 0.46);
  --home-link-glow-color-hover: var(--home-link-glow-color);
  box-shadow:
    0 0 0 1px rgb(255 255 255 / 0.05) inset,
    0 14px 34px -24px var(--home-link-glow-color),
    0 0 34px -20px var(--home-link-glow-color) !important;
}

html[data-app-context='public'] .home-link-anchor:hover,
html[data-app-context='public'] .home-link-anchor:focus-visible {
  box-shadow:
    0 0 0 1px rgb(232 68 122 / 0.36) inset,
    0 18px 44px -22px var(--home-link-glow-color-hover),
    0 0 42px -16px var(--home-link-glow-color-hover) !important;
}

html[data-app-context='public'] .home-link-anchor .link-icon {
  box-shadow: 0 2px 14px -2px var(--home-link-glow-color) !important;
}

.link-card {
  gap: 0 !important;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.18) !important;
  border-radius: 1rem !important;
  background: rgb(18 14 28 / 0.86) !important;
  box-shadow: 0 18px 46px -38px rgb(232 68 122 / 0.7);
}

.link-card:hover,
.link-card--editing {
  border-color: rgb(232 68 122 / 0.38) !important;
}

.link-card__header {
  min-height: 4.25rem;
  padding: 0.9rem 1.25rem;
  border-bottom: 1px solid transparent;
}

.link-card--editing .link-card__header {
  border-bottom-color: rgb(232 68 122 / 0.16);
}

.link-card__header-info {
  min-width: 0;
  flex: 1 1 auto;
}

.link-card__drag-handle,
.link-card__quick-feature,
.link-card__type-icon,
.link-card__action {
  width: 1.8rem !important;
  height: 1.8rem !important;
  flex: 0 0 1.8rem;
  border-radius: 0.55rem !important;
}

.link-card__drag-handle {
  color: rgb(167 139 250 / 0.75) !important;
}

.link-card__quick-feature,
.link-card__type-icon,
.link-card__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(232 68 122 / 0.16);
  background: rgb(255 255 255 / 0.035);
  color: rgb(190 174 218 / 0.88);
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.link-card__quick-feature:hover,
.link-card__action:hover {
  border-color: rgb(232 68 122 / 0.42);
  color: #e8447a;
  transform: translateY(-1px);
}

.link-card__quick-feature.is-active {
  border-color: rgb(232 68 122 / 0.42);
  background: rgb(232 68 122 / 0.18);
  color: #e8447a;
}

.link-card__quick-feature.is-active svg {
  fill: currentColor;
}

.link-card__type-icon {
  background: rgb(255 255 255 / 0.04);
}

.link-card__type-icon.is-muted {
  opacity: 0.48;
}

.link-card__quick-feature svg,
.link-card__type-icon svg,
.link-card__action svg {
  width: 0.9rem !important;
  height: 0.9rem !important;
}

.link-card__summary {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}

.link-card__summary-title,
.link-card__summary-subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.link-card__summary-title {
  color: #f0ecf8;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
}

.link-card__summary-subtitle {
  color: rgb(190 174 218 / 0.86);
  font-size: 0.74rem;
}

.link-card__stats {
  margin-left: auto;
}

.link-card__body {
  padding: 1.25rem;
  background: rgb(255 255 255 / 0.018);
}

.link-card__fields,
.link-card__controls {
  gap: 1rem !important;
}

.link-card__utm {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
  padding: 1rem;
}

.link-card__utm summary {
  margin-bottom: 0.9rem !important;
  color: rgb(190 174 218 / 0.88) !important;
}

.link-card__glow-field input[type='color'] {
  cursor: pointer;
}

.link-card__featured .md3-switch-label,
.link-card__show-icon .md3-switch-label,
.link-card__language {
  color: rgb(190 174 218 / 0.9);
}

body[data-admin-theme='light'] .link-card {
  background: rgb(255 255 255 / 0.92) !important;
  border-color: rgb(232 68 122 / 0.2) !important;
}

body[data-admin-theme='light'] .link-card__summary-title {
  color: #1d1425;
}

body[data-admin-theme='light'] .link-card__summary-subtitle,
body[data-admin-theme='light'] .link-card__featured .md3-switch-label,
body[data-admin-theme='light'] .link-card__show-icon .md3-switch-label,
body[data-admin-theme='light'] .link-card__language {
  color: rgb(79 67 95 / 0.86);
}

@media (max-width: 767px) {
  .link-card__header {
    align-items: flex-start !important;
    gap: 0.85rem !important;
    padding: 0.9rem 1rem;
  }

  .link-card__actions {
    flex-wrap: wrap;
    justify-content: flex-end;
  }

  .link-card__stats {
    display: none !important;
  }
}

/*
  Admin module finish pass: extend the NewDesignTemplate language beyond the
  links editor while preserving existing IDs, forms and JS contracts.
*/

#section-profile-appearance,
#section-content-manager,
#section-blog,
#section-site-settings,
#section-themes {
  --admin-card-radius: 1rem;
  --admin-card-border: rgb(232 68 122 / 0.16);
  --admin-card-border-strong: rgb(232 68 122 / 0.34);
  --admin-card-bg: rgb(22 18 31 / 0.88);
  --admin-card-bg-soft: rgb(30 24 40 / 0.58);
}

#section-profile-appearance > .space-y-6,
#section-site-settings > .space-y-6,
#section-themes > .space-y-6 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem !important;
}

#section-profile-appearance .border-b,
#section-site-settings .border-b,
#section-themes .border-b {
  margin-bottom: 1.25rem !important;
  padding-bottom: 1rem !important;
  border-bottom-color: rgb(232 68 122 / 0.14) !important;
}

#section-profile-appearance h3,
#section-content-manager h3,
#section-blog h3,
#section-site-settings h3,
#section-themes h3 {
  color: #f0ecf8 !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
}

#section-profile-appearance .admin-card,
#section-content-manager .admin-card,
#section-blog .admin-card,
#section-site-settings .admin-card,
#section-themes .admin-card {
  border-color: var(--admin-card-border) !important;
  border-radius: var(--admin-card-radius) !important;
  background: var(--admin-card-bg) !important;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62) !important;
}

#section-profile-appearance .admin-card--panel,
#section-profile-appearance .admin-card--muted,
#section-content-manager .admin-card--panel,
#section-content-manager .admin-card--muted,
#section-blog .admin-card--panel,
#section-blog .admin-card--muted,
#section-site-settings .admin-card--panel,
#section-site-settings .admin-card--muted,
#section-site-settings .admin-card--tile,
#section-themes .admin-card--panel,
#section-themes .admin-card--muted {
  border-color: rgb(232 68 122 / 0.12) !important;
  background: var(--admin-card-bg-soft) !important;
  box-shadow: none !important;
}

#section-profile-appearance .field-outlined,
#section-content-manager .field-outlined,
#section-blog .field-outlined,
#section-site-settings .field-outlined,
#section-themes .field-outlined,
.admin-legal-doc-field {
  min-height: 2.7rem;
  border-color: rgb(232 68 122 / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(14 11 21 / 0.74) !important;
}

#section-profile-appearance .field-outlined:focus,
#section-content-manager .field-outlined:focus,
#section-blog .field-outlined:focus,
#section-site-settings .field-outlined:focus,
#section-themes .field-outlined:focus,
.admin-legal-doc-field:focus {
  border-color: rgb(232 68 122 / 0.58) !important;
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.13) !important;
}

#profile-image-preview {
  border: 2px solid rgb(232 68 122 / 0.5) !important;
  background:
    linear-gradient(rgb(22 18 31 / 0.92), rgb(22 18 31 / 0.92)) padding-box,
    linear-gradient(135deg, #e8447a, #9c5fc7, #57001d) border-box !important;
  box-shadow:
    0 0 0 4px rgb(232 68 122 / 0.08),
    0 18px 46px -22px rgb(232 68 122 / 0.68) !important;
}

#settings-form-geral .profile-image-settings {
  align-items: center !important;
  gap: 1.5rem !important;
}

#settings-form-geral .profile-image-controls {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
  padding: 1rem;
}

#settings-form-geral .album-editor__surface,
#album-create-form .album-editor__surface,
#edit-album-form .album-editor__surface,
#blog-post-form .blog-editor__surface {
  border-color: rgb(232 68 122 / 0.14) !important;
  border-radius: 0.875rem !important;
  background: rgb(14 11 21 / 0.72) !important;
}

#blog-post-form .blog-editor__source-panel,
#blog-post-form .blog-editor__preview {
  border: 1px solid rgb(232 68 122 / 0.14) !important;
  border-radius: 0.875rem !important;
  background: rgb(14 11 21 / 0.72) !important;
  padding: 1rem !important;
}

#blog-post-form .blog-editor__source {
  min-height: 12rem;
  resize: vertical;
  white-space: pre;
}

#blog-post-form .blog-editor__preview {
  min-height: 12rem;
}

#blog-post-form .blog-editor__preview::before {
  display: block;
  margin-bottom: 0.75rem;
  color: rgb(190 174 218 / 0.78);
  content: "Preview";
  font-family: 'DM Sans', 'Montserrat', system-ui, sans-serif;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#section-content-manager .albums-management {
  gap: 1.5rem !important;
}

#albums-list,
#polls-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem !important;
}

.admin-album-card,
.admin-poll-card {
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.14) !important;
  border-left: 1px solid rgb(232 68 122 / 0.14) !important;
  border-radius: 0.875rem !important;
  background: rgb(18 14 28 / 0.72) !important;
  padding: 0.85rem 1rem !important;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.admin-album-card:hover,
.admin-poll-card:hover {
  border-color: rgb(232 68 122 / 0.34) !important;
  background: rgb(30 24 40 / 0.7) !important;
}

.album-edit-trigger {
  padding: 0 !important;
  background: transparent !important;
}

.album-edit-trigger:hover,
.album-edit-trigger:focus-visible {
  background: transparent !important;
}

.admin-album-row__title,
.admin-poll-card__question {
  color: #f0ecf8 !important;
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0;
}

.admin-album-card .admin-album__badge,
.admin-poll-card__status {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  border: 1px solid rgb(232 68 122 / 0.22);
  border-radius: 999px;
  background: rgb(232 68 122 / 0.1);
  padding: 0.15rem 0.5rem;
  color: #e8447a !important;
  font-size: 0.7rem !important;
  font-weight: 700;
}

.admin-gallery-photo-card {
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(18 14 28 / 0.82);
  box-shadow: 0 16px 38px -34px rgb(232 68 122 / 0.7);
}

.admin-gallery-photo-card img {
  border-radius: inherit !important;
  transition: transform 220ms ease, filter 220ms ease;
}

.admin-gallery-photo-card:hover img,
.admin-gallery-photo-card:focus-within img {
  transform: scale(1.035);
  filter: saturate(1.08);
}

.admin-gallery-photo-card > div {
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgb(13 11 18 / 0.08), rgb(13 11 18 / 0.82)),
    rgb(13 11 18 / 0.44) !important;
  backdrop-filter: blur(2px);
}

#photo-upload-form,
#album-create-form,
#poll-create-form {
  border: 1px solid rgb(232 68 122 / 0.12) !important;
  border-radius: 0.875rem !important;
  background: rgb(255 255 255 / 0.025) !important;
}

#poll-create-form {
  padding: 1rem !important;
}

#poll-options-container [data-poll-option-field] {
  align-items: center;
}

#blog-list-view > .admin-blog-filters {
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
  padding: 1rem;
}

#blog-posts-table {
  border-collapse: separate;
  border-spacing: 0;
}

#blog-posts-table thead {
  background: rgb(18 14 28 / 0.88) !important;
}

#blog-posts-table th {
  color: rgb(190 174 218 / 0.92) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.06em !important;
}

.admin-blog-row {
  background: rgb(18 14 28 / 0.62);
}

.admin-blog-row:hover {
  background: rgb(232 68 122 / 0.07) !important;
}

.admin-blog-row td {
  border-bottom: 1px solid rgb(232 68 122 / 0.1);
}

.admin-blog-row strong {
  color: #f0ecf8;
  font-size: 0.9rem;
}

#blog-editor-view > form,
#blog-post-form {
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.72);
  padding: 1.25rem;
}

#blog-post-editor-toolbar,
.album-editor__toolbar,
.bio-editor__toolbar {
  border-color: rgb(232 68 122 / 0.12) !important;
  border-radius: 0.875rem !important;
  background: rgb(18 14 28 / 0.76) !important;
}

#seo-central-card,
#coverage-dashboard-card,
#seo-indexation-controls-card {
  border-color: rgb(232 68 122 / 0.16) !important;
}

#seo-central-card textarea[readonly],
#seo-robots-content {
  border-color: rgb(232 68 122 / 0.14) !important;
  border-radius: 0.875rem !important;
  background: rgb(13 11 18 / 0.78) !important;
  color: rgb(240 236 248 / 0.92) !important;
}

#coverage-dashboard-card .grid > div,
#seo-central-card .grid > div,
#core-web-vitals-card .grid > div {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
}

#coverage-dashboard-card p[id^='coverage-metric'],
#core-web-vitals-card p[id^='core-web-vitals-metric'] {
  color: #f0ecf8 !important;
  font-size: 0.92rem !important;
  font-weight: 700;
}

#indexnow-logs-body tr:hover {
  background: rgb(232 68 122 / 0.07);
}

.admin-ui-text-field,
#legal-docs-form > div {
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.875rem;
  background: rgb(255 255 255 / 0.025);
  padding: 1rem;
}

#legal-docs-form > div label {
  color: #f0ecf8 !important;
  font-size: 0.88rem;
}

.admin-select-md3,
#site-theme-preset,
#site-theme-preset-name {
  min-height: 2.7rem;
  border-color: rgb(232 68 122 / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(14 11 21 / 0.74) !important;
  color: #f0ecf8 !important;
}

.md3-switch-control {
  border-color: rgb(232 68 122 / 0.14) !important;
  border-radius: 0.875rem !important;
  background: rgb(255 255 255 / 0.025) !important;
}

.md3-switch-label {
  color: rgb(240 236 248 / 0.92) !important;
}

body[data-admin-theme='light'] #section-profile-appearance,
body[data-admin-theme='light'] #section-content-manager,
body[data-admin-theme='light'] #section-blog,
body[data-admin-theme='light'] #section-site-settings,
body[data-admin-theme='light'] #section-themes {
  --admin-card-bg: rgb(255 255 255 / 0.94);
  --admin-card-bg-soft: rgb(248 245 255 / 0.84);
}

body[data-admin-theme='light'] #section-profile-appearance h3,
body[data-admin-theme='light'] #section-content-manager h3,
body[data-admin-theme='light'] #section-blog h3,
body[data-admin-theme='light'] #section-site-settings h3,
body[data-admin-theme='light'] #section-themes h3,
body[data-admin-theme='light'] .admin-album-row__title,
body[data-admin-theme='light'] .admin-poll-card__question,
body[data-admin-theme='light'] .admin-blog-row strong,
body[data-admin-theme='light'] #legal-docs-form > div label {
  color: #1d1425 !important;
}

@media (max-width: 767px) {
  #section-profile-appearance .admin-card,
  #section-content-manager .admin-card,
  #section-blog .admin-card,
  #section-site-settings .admin-card,
  #section-themes .admin-card {
    padding: 1rem !important;
  }

  #blog-post-form {
    padding: 1rem;
  }

  #gallery-management {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/*
  Admin correction pass: align interaction states with the reference template.
  Keep this block last so it wins over older admin migration layers.
*/

html[data-app-context='public'] .home-link-anchor {
  box-shadow: 0 0 0 1px rgb(255 255 255 / 0.05) inset !important;
}

html[data-app-context='public'] .home-link-anchor:hover,
html[data-app-context='public'] .home-link-anchor:focus-visible {
  box-shadow:
    0 0 0 1px rgb(232 68 122 / 0.38) inset,
    0 18px 44px -18px var(--home-link-glow-color-hover),
    0 0 44px -12px var(--home-link-glow-color-hover) !important;
}

html[data-app-context='public'] .home-link-anchor .link-icon {
  box-shadow: none !important;
}

html[data-app-context='public'] .home-link-anchor:hover .link-icon,
html[data-app-context='public'] .home-link-anchor:focus-visible .link-icon {
  box-shadow: 0 2px 16px -2px var(--home-link-glow-color-hover) !important;
}

#toast-notification {
  position: fixed !important;
  top: 1.5rem !important;
  right: 1.5rem !important;
  bottom: auto !important;
  z-index: 1000 !important;
  max-width: min(28rem, calc(100vw - 2rem)) !important;
  margin: 0 !important;
}

.md3-switch-control {
  align-items: center !important;
  gap: 0.875rem !important;
}

.md3-switch {
  order: -1;
  width: 2.875rem !important;
  height: 1.625rem !important;
  border-color: rgb(232 68 122 / 0.18) !important;
  background: rgb(8 7 13 / 0.86) !important;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.03) !important;
}

.md3-switch__thumb {
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin-left: 0.1875rem !important;
  background: rgb(255 255 255 / 0.96) !important;
  transform: translateX(0) !important;
}

.md3-switch[aria-checked='true'],
.md3-switch__native:checked + .md3-switch {
  border-color: rgb(232 68 122 / 0.5) !important;
  background: linear-gradient(135deg, rgb(232 68 122 / 0.95), rgb(156 95 199 / 0.9)) !important;
  box-shadow: 0 0 18px -8px rgb(232 68 122 / 0.85) !important;
}

.md3-switch[aria-checked='true'] .md3-switch__thumb,
.md3-switch__native:checked + .md3-switch .md3-switch__thumb {
  background: #fff !important;
  transform: translateX(1.25rem) !important;
}

.link-card__switch {
  min-height: 3.5rem;
  padding: 0.8rem 0.95rem !important;
}

.link-card__switch:has(.link-featured:checked),
.link-card__switch:has(.link-show-icon:checked) {
  border-color: rgb(232 68 122 / 0.38) !important;
  background: rgb(232 68 122 / 0.1) !important;
}

.admin-sidebar,
.admin-sidebar__nav-button,
.admin-sidebar__view-site,
.admin-sidebar__logout {
  transition:
    background-color 180ms ease,
    color 180ms ease,
    transform 220ms ease !important;
}

.admin-dashboard {
  --admin-sidebar-width: 15rem;
  --admin-sidebar-compact-width: 4.5rem;
  --admin-sidebar-open-width: min(17.5rem, 86vw);
  scrollbar-gutter: stable;
}

.admin-sidebar {
  overflow-x: hidden !important;
  width: var(--admin-sidebar-width) !important;
  min-width: var(--admin-sidebar-width) !important;
  max-width: var(--admin-sidebar-width) !important;
  flex: 0 0 var(--admin-sidebar-width) !important;
}

.admin-main {
  min-width: 0 !important;
  width: calc(100% - var(--admin-sidebar-width)) !important;
  flex: 1 1 auto !important;
}

.admin-sidebar__brand > div,
.admin-sidebar__nav-button span,
.admin-sidebar__view-site,
.admin-sidebar__logout,
.admin-sidebar__footer-label,
.admin-sidebar__language-wrapper {
  min-width: 0;
}

.admin-sidebar__brand .admin-sidebar__toggle {
  margin-left: auto;
  flex: 0 0 auto;
}

.admin-main__mobile-menu-trigger {
  display: none;
}

@media (max-width: 1023px) {
  .admin-dashboard {
    display: block !important;
    min-height: 100vh;
    width: 100%;
    overflow-x: clip;
  }

  .admin-sidebar {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 60 !important;
    width: var(--admin-sidebar-open-width) !important;
    min-width: var(--admin-sidebar-open-width) !important;
    max-width: var(--admin-sidebar-open-width) !important;
    flex-basis: var(--admin-sidebar-open-width) !important;
    transform: translateX(-100%) !important;
    padding: 0 !important;
    visibility: hidden;
  }

  .admin-sidebar.admin-sidebar--open {
    transform: translateX(0) !important;
    visibility: visible;
    box-shadow: 0 24px 70px -28px rgb(0 0 0 / 0.7) !important;
  }

  .admin-main {
    width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
  }

  .admin-sidebar__brand {
    justify-content: flex-start !important;
    min-height: 4.75rem;
    padding: 0.95rem 0.625rem !important;
  }

  .admin-sidebar.admin-sidebar--open .admin-sidebar__brand .admin-sidebar__toggle {
    margin-left: auto !important;
  }

  .admin-sidebar__toggle {
    display: inline-flex !important;
    width: 2.55rem !important;
    height: 2.55rem !important;
    align-items: center !important;
    justify-content: center !important;
    border-color: rgb(232 68 122 / 0.22) !important;
    border-radius: 0.85rem !important;
    background: rgb(22 18 31 / 0.82) !important;
    color: #f0ecf8 !important;
    box-shadow: none !important;
  }

  .admin-sidebar__toggle:hover,
  .admin-sidebar__toggle:focus-visible {
    border-color: rgb(232 68 122 / 0.42) !important;
    background: rgb(232 68 122 / 0.12) !important;
    outline: none !important;
  }

  .admin-sidebar__nav-button-icon {
    width: 1.25rem !important;
    height: 1.25rem !important;
  }

  .admin-sidebar__backdrop {
    z-index: 50 !important;
  }

  .admin-main__header {
    position: sticky;
    top: 0;
    z-index: 30;
  }

  .admin-main__mobile-menu-trigger {
    display: inline-flex;
    width: 2.55rem;
    height: 2.55rem;
    flex: 0 0 2.55rem;
    align-items: center;
    justify-content: center;
    border: 1px solid rgb(232 68 122 / 0.24);
    border-radius: 0.5rem;
    background: rgb(22 18 31 / 0.82);
    color: #f0ecf8;
  }

  .admin-main__mobile-menu-trigger:hover,
  .admin-main__mobile-menu-trigger:focus-visible {
    border-color: rgb(232 68 122 / 0.48);
    background: rgb(232 68 122 / 0.12);
    outline: none;
  }

  .admin-main__mobile-menu-trigger svg {
    width: 1.25rem;
    height: 1.25rem;
  }

  .admin-main__header-group::before {
    display: none !important;
  }

  .admin-main__content {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    padding: 1.25rem !important;
  }

  #section-content-manager .admin-card,
  #section-content-manager .admin-album-card,
  #section-content-manager .admin-gallery-photo-card {
    max-width: 100% !important;
  }

  #section-content-manager .admin-album-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 640px) {
  #toast-notification {
    top: auto !important;
    right: auto !important;
    bottom: max(1rem, env(safe-area-inset-bottom)) !important;
    left: max(1rem, env(safe-area-inset-left)) !important;
    width: calc(100% - 2rem) !important;
    max-width: calc(100% - max(1rem, env(safe-area-inset-left)) - max(1rem, env(safe-area-inset-right))) !important;
    padding: 0.875rem 1rem !important;
  }

  .admin-main__content {
    padding: 1rem !important;
  }

  #section-content-manager .admin-section__title,
  #section-content-manager h2 {
    font-size: clamp(1.8rem, 9vw, 2.35rem) !important;
  }
}

/* Gallery statistics and complete-management tools */

.admin-album-stats-action {
  display: inline-flex;
  min-height: 1.9rem;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.58);
  padding: 0.3rem 0.55rem;
  color: rgb(var(--admin-muted) / 1);
  font-size: 0.72rem;
  font-weight: 600;
  line-height: 1;
}

.admin-album-stats-action:hover,
.admin-album-stats-action:focus-visible {
  border-color: rgb(var(--admin-primary) / 0.38);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
  outline: none;
}

.admin-album-stats-action svg {
  width: 0.8rem;
  height: 0.8rem;
}

.album-stats-dialog {
  width: min(30rem, calc(100vw - 2rem));
  max-height: min(44rem, calc(100vh - 2rem));
  overflow: hidden;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 1);
  color: rgb(var(--admin-fg) / 1);
  box-shadow: 0 24px 80px rgb(0 0 0 / 0.42);
}

.album-stats-dialog__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.14);
  padding: 1.25rem;
}

.album-stats-dialog__title {
  overflow: hidden;
  color: rgb(var(--admin-fg) / 1);
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.album-stats-dialog__description,
.album-stats-dialog__hint {
  color: rgb(var(--admin-muted) / 0.92);
  font-size: 0.75rem;
  line-height: 1.5;
}

.album-stats-dialog__description {
  margin-top: 0.2rem;
}

.album-stats-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.14);
}

.album-stats-summary__item {
  display: grid;
  min-width: 0;
  gap: 0.18rem;
  padding: 0.9rem 0.75rem;
}

.album-stats-summary__item + .album-stats-summary__item {
  border-left: 1px solid rgb(var(--admin-border-soft) / 0.12);
}

.album-stats-summary__item svg {
  width: 0.85rem;
  height: 0.85rem;
  color: rgb(var(--admin-primary) / 0.92);
}

.album-stats-summary__item strong {
  overflow: hidden;
  color: rgb(var(--admin-fg) / 1);
  font-size: 0.9rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.album-stats-summary__item span {
  overflow: hidden;
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.65rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.album-stats-photos {
  display: grid;
  max-height: min(25rem, 52vh);
  gap: 0.75rem;
  overflow-y: auto;
  padding: 1rem 1.25rem;
}

.album-stats-photo {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  align-items: center;
  gap: 0.75rem;
}

.album-stats-photo__thumb {
  position: relative;
  width: 2.5rem;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  border-radius: 0.4rem;
  background: rgb(var(--admin-panel-2) / 1);
}

.album-stats-photo__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.album-stats-photo__content {
  min-width: 0;
}

.album-stats-photo__content > strong {
  display: block;
  overflow: hidden;
  color: rgb(var(--admin-fg) / 0.96);
  font-size: 0.78rem;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.album-stats-photo__progress-row {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-top: 0.4rem;
}

.album-stats-photo__progress {
  height: 0.35rem;
  flex: 1 1 auto;
  overflow: hidden;
  border-radius: 999px;
  background: rgb(var(--admin-panel-2) / 1);
}

.album-stats-photo__progress > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgb(var(--admin-primary) / 1), rgb(var(--admin-primary-2) / 1));
}

.album-stats-photo__views {
  flex: 0 0 auto;
  color: rgb(var(--admin-muted) / 0.92);
  font-size: 0.68rem;
}

.album-stats-photos__empty {
  padding: 2rem 1rem;
  color: rgb(var(--admin-muted) / 0.92);
  font-size: 0.8rem;
  text-align: center;
}

.album-stats-dialog__hint {
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  padding: 0.9rem 1.25rem 1rem;
}

#section-content-manager .gallery-tools-disclosure {
  overflow: hidden;
  border: 1px dashed rgb(var(--admin-border-soft) / 0.24) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel) / 0.54) !important;
}

.gallery-tools-disclosure__summary {
  display: flex;
  min-height: 4.25rem;
  align-items: center;
  gap: 0.85rem;
  padding: 0.85rem 1rem;
  color: rgb(var(--admin-muted) / 1);
  cursor: pointer;
  list-style: none;
}

.gallery-tools-disclosure__summary::-webkit-details-marker {
  display: none;
}

.gallery-tools-disclosure__summary:hover,
.gallery-tools-disclosure__summary:focus-visible {
  background: rgb(var(--admin-primary) / 0.06);
  color: rgb(var(--admin-fg) / 1);
  outline: none;
}

.gallery-tools-disclosure__icon {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  background: rgb(var(--admin-primary) / 0.1);
  color: rgb(var(--admin-primary) / 1);
}

.gallery-tools-disclosure__icon svg,
.gallery-tools-disclosure__chevron {
  width: 0.95rem;
  height: 0.95rem;
}

.gallery-tools-disclosure__copy {
  display: grid;
  min-width: 0;
  flex: 1 1 auto;
  gap: 0.15rem;
}

.gallery-tools-disclosure__copy strong {
  color: rgb(var(--admin-fg) / 0.96);
  font-size: 0.82rem;
}

.gallery-tools-disclosure__copy span {
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.72rem;
}

.gallery-tools-disclosure__chevron {
  flex: 0 0 auto;
  transition: transform 160ms ease;
}

.gallery-tools-disclosure[open] .gallery-tools-disclosure__chevron {
  transform: rotate(180deg);
}

.gallery-tools-disclosure__body {
  display: grid;
  gap: 1rem;
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  padding: 1rem;
}

/* Keep the dark admin shell on the exact, calmer template surfaces. */

body[data-admin-theme='dark'] .admin-sidebar,
body[data-admin-theme='dark'] .admin-main__header,
body[data-admin-theme='dark'] .admin-card,
body[data-admin-theme='dark'] .admin-album-card,
body[data-admin-theme='dark'] .album-stats-dialog {
  background-color: rgb(var(--admin-panel) / 1) !important;
}

body[data-admin-theme='dark'] #dashboard-screen input:not([type='hidden']):not([type='checkbox']):not([type='radio']):not([type='color']):not([type='range']),
body[data-admin-theme='dark'] #dashboard-screen textarea,
body[data-admin-theme='dark'] #dashboard-screen select,
body[data-admin-theme='dark'] .admin-card--muted,
body[data-admin-theme='dark'] .admin-card--panel {
  background-color: rgb(var(--admin-panel-2) / 1) !important;
}

body[data-admin-theme='dark'] .admin-main__action-btn,
body[data-admin-theme='dark'] .btn-surface--accent {
  background: rgb(var(--admin-primary) / 1) !important;
}

/*
  Layout effects and link manager follow-up.
  The reference template uses 1rem cards and 0.75rem nested controls.
*/

#section-themes .themes-layout-card {
  border-radius: 1rem !important;
}

#section-themes .themes-layout-card select {
  color-scheme: dark;
}

body[data-admin-theme='light'] #section-themes .themes-layout-card select {
  color-scheme: light;
}

#section-themes .themes-layout-card select option {
  background: rgb(var(--admin-panel-2) / 1);
  color: rgb(var(--admin-fg) / 1);
}

#section-themes .themes-layout-card select option:checked {
  background: rgb(var(--admin-primary) / 0.22);
  color: rgb(var(--admin-fg) / 1);
}

#section-themes #layout-effect-preview-placeholder {
  color: #f8fafc !important;
  background:
    radial-gradient(circle at center, rgb(8 7 13 / 0.42), rgb(8 7 13 / 0.76)) !important;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.08);
  text-shadow: 0 2px 7px rgb(0 0 0 / 0.92);
}

#section-themes #layout-effect-preview-placeholder strong {
  color: #ffffff !important;
}

#section-themes #layout-effect-preview-placeholder span {
  max-width: 36rem;
  color: #e4ddeb !important;
  line-height: 1.55;
}

body[data-admin-theme='light'] #section-themes #layout-effect-preview-placeholder {
  color: #241b2c !important;
  background:
    radial-gradient(circle at center, rgb(255 255 255 / 0.74), rgb(248 245 255 / 0.92)) !important;
  box-shadow: inset 0 0 0 1px rgb(79 67 95 / 0.14);
  text-shadow: none;
}

body[data-admin-theme='light'] #section-themes #layout-effect-preview-placeholder strong {
  color: #1d1425 !important;
}

body[data-admin-theme='light'] #section-themes #layout-effect-preview-placeholder span {
  color: #584c66 !important;
}

#section-themes .layout-background-upload__dropzone {
  min-height: 10rem;
  border-radius: 0.75rem;
}

#section-themes #layout-background-upload {
  position: absolute !important;
  width: 1px !important;
  min-width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  overflow: hidden !important;
  margin: -1px !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.link-card {
  border-radius: 1rem !important;
}

.link-card__header {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 1rem !important;
  padding: 0.875rem 1rem;
}

.link-card__header-info {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.75rem;
}

.link-card__summary {
  display: grid;
  min-width: 0;
  flex: 1 1 auto;
  gap: 0.18rem;
}

.link-card__summary-heading {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 0.55rem;
}

.link-card__summary-title {
  min-width: 0;
}

.link-card__summary-subtitle {
  max-width: 16rem;
  flex: 0 1 auto;
  color: rgb(var(--admin-primary) / 0.92) !important;
  font-weight: 650;
}

.link-card__summary-subtitle:empty {
  display: none;
}

.link-card__summary-url {
  overflow: hidden;
  color: rgb(var(--admin-muted) / 0.84);
  font-size: 0.72rem;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.link-card__header-meta {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 0.65rem;
}

.link-card__stats {
  flex: 0 0 auto;
  margin: 0;
}

.link-card__stats-count {
  gap: 0.32rem;
}

.link-card__stats-count svg {
  width: 0.78rem;
  height: 0.78rem;
  color: rgb(var(--admin-primary) / 0.92);
}

.link-card__status-control {
  display: inline-flex;
  min-width: 8.25rem;
  align-items: center;
  justify-content: flex-start;
  gap: 0.55rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.16);
  border-radius: 999px;
  background: rgb(var(--admin-panel-2) / 0.52);
  padding: 0.25rem 0.55rem 0.25rem 0.35rem;
}

.link-card__status-control .md3-switch {
  width: 2.35rem !important;
  height: 1.35rem !important;
  flex: 0 0 2.35rem;
}

.link-card__status-control .md3-switch__thumb {
  width: 0.98rem !important;
  height: 0.98rem !important;
  margin-left: 0.12rem !important;
}

.link-card__status-control .md3-switch[aria-checked='true'] .md3-switch__thumb,
.link-card__status-control .md3-switch__native:checked + .md3-switch .md3-switch__thumb {
  transform: translateX(1rem) !important;
}

.link-card__status-text {
  color: rgb(var(--admin-muted) / 0.96);
  font-size: 0.69rem;
  font-weight: 750;
  white-space: nowrap;
}

.link-card[data-state='active'] .link-card__status-control {
  border-color: rgb(67 187 125 / 0.32);
  background: rgb(67 187 125 / 0.08);
}

.link-card[data-state='active'] .link-card__status-text {
  color: rgb(112 222 166 / 1);
}

.link-card__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem !important;
}

.link-card__copy-btn:disabled {
  opacity: 0.36;
  cursor: not-allowed;
}

.link-card__fields > div,
.link-card__utm,
.link-card__featured,
.link-card__show-icon,
.link-card__language {
  border-radius: 0.75rem !important;
}

.link-card__fields input:not([type='color']),
.link-card__fields select,
.link-card__utm input:not([type='color']),
.link-card__language select {
  min-height: 2.75rem;
  border-radius: 0.75rem !important;
}

#section-content-manager .content-manager-gallery-card,
#section-content-manager .gallery-tools-disclosure,
#section-content-manager .admin-album-card,
#section-content-manager .content-manager-panel--form.album-create-row,
#section-content-manager #album-create-form,
#section-content-manager #photo-upload-form,
#section-polls #polls-admin-card,
#section-polls #poll-create-form {
  border-radius: 1rem !important;
}

.admin-poll-card,
.poll-editor-row {
  border-radius: 1rem !important;
}

.poll-results,
.poll-result-option,
#dashboard-screen .md3-switch-control {
  border-radius: 0.75rem !important;
}

#section-content-manager .gallery-upload-dropzone {
  border-radius: 0.75rem;
}

@media (max-width: 960px) {
  .link-card__header {
    grid-template-columns: minmax(0, 1fr);
  }

  .link-card__header-meta {
    width: 100%;
    justify-content: space-between;
    border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
    padding-top: 0.7rem;
  }
}

@media (max-width: 640px) {
  .link-card__summary-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.1rem;
  }

  .link-card__summary-subtitle {
    max-width: 100%;
  }

  .link-card__header-meta {
    align-items: flex-start;
    flex-direction: column;
  }

  .link-card__status-control {
    min-width: 0;
  }

  .link-card__actions {
    width: 100%;
  }
}

/* Admin feedback: success must read as a semantic state in every theme. */

#toast-notification .toast-notification__icon--success {
  color: #4ade80 !important;
  filter: drop-shadow(0 0 0.45rem rgb(74 222 128 / 0.3));
}

/* Gallery upload validation keeps the missing destination visible and focused. */

#album-select.album-select--attention {
  border-color: rgb(251 146 60 / 0.9) !important;
  animation: albumSelectAttention 1.4s ease-in-out 2;
}

@keyframes albumSelectAttention {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgb(251 146 60 / 0);
  }
  45% {
    box-shadow:
      0 0 0 0.25rem rgb(251 146 60 / 0.2),
      0 0 1.25rem rgb(251 146 60 / 0.22);
  }
}

/* Poll statistics are collapsed by default and communicate their state by tone. */

.toggle-poll-results-btn[data-state='collapsed'] {
  border-color: rgb(251 146 60 / 0.32);
  background: rgb(251 146 60 / 0.1);
  color: rgb(251 146 60 / 1);
}

.toggle-poll-results-btn[data-state='collapsed']:hover {
  border-color: rgb(251 146 60 / 0.52);
  background: rgb(251 146 60 / 0.16);
  color: rgb(253 186 116 / 1);
}

.toggle-poll-results-btn[data-state='expanded'] {
  border-color: rgb(74 222 128 / 0.34);
  background: rgb(74 222 128 / 0.1);
  color: rgb(74 222 128 / 1);
}

.toggle-poll-results-btn[data-state='expanded']:hover {
  border-color: rgb(74 222 128 / 0.54);
  background: rgb(74 222 128 / 0.16);
  color: rgb(134 239 172 / 1);
}

/* Themes: preset-first workspace aligned with the current admin template. */

.themes-admin-shell {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.themes-admin-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.themes-admin-subtitle {
  max-width: 44rem;
  margin-top: 0.45rem;
  color: rgb(var(--admin-muted) / 0.94);
  font-size: 0.9rem;
  line-height: 1.55;
}

.themes-admin-header__icon,
.theme-workspace-heading__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(var(--admin-primary) / 0.2);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
}

.themes-admin-header__icon {
  width: 3rem;
  height: 3rem;
  flex: 0 0 3rem;
  border-radius: 0.85rem;
}

.themes-admin-header__icon svg {
  width: 1.35rem;
  height: 1.35rem;
}

#section-themes .themes-editor-card,
#section-themes #layout-effects-card {
  border: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 0.75rem !important;
  background: rgb(var(--admin-panel) / 0.78) !important;
  box-shadow: none !important;
}

#section-themes .themes-editor-card {
  padding: 1.25rem !important;
}

.theme-preset-library,
.theme-color-workspace {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.theme-color-workspace {
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.14);
  padding-top: 1.5rem;
}

.theme-workspace-heading {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
}

.theme-workspace-heading__icon {
  width: 2.35rem;
  height: 2.35rem;
  flex: 0 0 2.35rem;
  border-radius: 0.65rem;
}

.theme-workspace-heading__icon svg {
  width: 1rem;
  height: 1rem;
}

.theme-workspace-heading h3 {
  color: rgb(var(--admin-text) / 1);
  font-size: 1.05rem;
  font-weight: 750;
  line-height: 1.3;
}

.theme-workspace-heading p {
  max-width: 46rem;
  margin-top: 0.25rem;
  color: rgb(var(--admin-muted) / 0.92);
  font-size: 0.78rem;
  line-height: 1.5;
}

.theme-preset-group-title {
  margin-bottom: 0.7rem;
  color: rgb(var(--admin-muted) / 0.94);
  font-size: 0.69rem;
  font-weight: 750;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

.theme-preset-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
}

#section-themes .theme-preset-option {
  min-width: 6.5rem;
}

.theme-custom-preset-card {
  position: relative;
  display: flex;
  min-width: 6.5rem;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  border: 2px solid transparent;
  border-radius: 1rem;
  background: transparent;
  padding: 0.3rem;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.theme-custom-preset-card:hover,
.theme-custom-preset-card:focus-within {
  border-color: rgb(var(--admin-primary) / 0.25);
  background: rgb(var(--admin-primary) / 0.035);
  transform: translateY(-1px);
}

.theme-custom-preset-card--active {
  border-color: rgb(var(--admin-primary) / 1);
}

.theme-custom-preset-card--active::after {
  content: "";
  position: absolute;
  top: -0.35rem;
  right: -0.35rem;
  width: 1.2rem;
  height: 1.2rem;
  border: 2px solid rgb(var(--admin-panel) / 1);
  border-radius: 999px;
  background:
    linear-gradient(135deg, transparent 44%, #fff 44% 56%, transparent 56%) 35% 50% / 45% 45% no-repeat,
    linear-gradient(45deg, transparent 48%, #fff 48% 60%, transparent 60%) 57% 54% / 55% 55% no-repeat,
    rgb(var(--admin-primary) / 1);
}

.theme-custom-preset-card__select {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
  border: 0;
  background: transparent;
  color: rgb(var(--admin-muted) / 0.92);
  padding: 0;
  cursor: pointer;
}

.theme-custom-preset-card--active .theme-custom-preset-card__select,
.theme-custom-preset-card__select:hover,
.theme-custom-preset-card__select:focus-visible {
  color: rgb(var(--admin-text) / 1);
  outline: none;
}

.theme-custom-preset-card__actions {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
  margin-top: 0.1rem;
}

.theme-custom-preset-card__action {
  display: inline-flex;
  width: 1.65rem;
  height: 1.65rem;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 0.45rem;
  background: transparent;
  color: rgb(var(--admin-muted) / 0.9);
  cursor: pointer;
}

.theme-custom-preset-card__action:hover,
.theme-custom-preset-card__action:focus-visible {
  border-color: rgb(var(--admin-primary) / 0.22);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
  outline: none;
}

.theme-custom-preset-card__action--danger {
  color: rgb(var(--admin-danger) / 0.94);
}

.theme-custom-preset-card__action--danger:hover,
.theme-custom-preset-card__action--danger:focus-visible {
  border-color: rgb(var(--admin-danger) / 0.24);
  background: rgb(var(--admin-danger) / 0.08);
  color: rgb(var(--admin-danger) / 1);
}

.theme-custom-preset-card__action svg {
  width: 0.8rem;
  height: 0.8rem;
}

.theme-preset-composer {
  display: grid;
  grid-template-columns: minmax(16rem, 24rem) max-content;
  align-items: end;
  justify-content: start;
  gap: 0.75rem;
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  padding-top: 1rem;
}

.theme-preset-composer__field {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.theme-preset-composer__field.field-outlined-wrap {
  display: block;
  gap: 0;
}

.theme-preset-composer__field label {
  color: rgb(var(--admin-text) / 0.92);
  font-size: 0.76rem;
  font-weight: 650;
}

.theme-preset-composer__field .field-outlined-label {
  font-size: 1rem;
  font-weight: 500;
}

.theme-preset-composer .btn-pill {
  width: auto;
  min-width: 10rem;
}

#section-themes .theme-color-workspace .md3-color-picker {
  min-width: 0;
  border: 1px solid rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.7rem;
  background: rgb(var(--admin-panel-2) / 0.46);
  padding: 0.85rem;
}

#section-themes #layout-effects-card {
  padding: 1.25rem !important;
}

#section-themes #layout-effects-card > .border-b {
  border-color: rgb(var(--admin-border-soft) / 0.14) !important;
}

@media (max-width: 640px) {
  .themes-admin-header__icon {
    display: none;
  }

  .theme-preset-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #section-themes .theme-preset-option,
  .theme-custom-preset-card {
    width: 100%;
    min-width: 0;
  }

  .theme-preset-composer {
    grid-template-columns: minmax(0, 1fr);
  }

  .theme-preset-composer .btn-pill {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  #album-select.album-select--attention {
    animation: none;
    box-shadow: 0 0 0 0.25rem rgb(251 146 60 / 0.2);
  }
}

/* Admin navigation and feedback corrections. */

#toast-notification {
  top: auto !important;
  right: 1.5rem !important;
  bottom: 1.5rem !important;
  border-radius: 0.5rem !important;
}

#dashboard-screen .admin-main__action-btn,
#dashboard-screen .admin-main__action-btn *,
body[data-admin-theme='light'] #dashboard-screen .admin-main__action-btn,
body[data-admin-theme='light'] #dashboard-screen .admin-main__action-btn * {
  color: rgb(var(--md-sys-color-on-primary) / 1) !important;
}

#dashboard-screen .admin-main__action-btn:disabled {
  opacity: 0.82;
}

#section-profile-appearance #profile-image-preview {
  width: 9rem !important;
  min-width: 9rem !important;
  height: 9rem !important;
  min-height: 9rem !important;
  flex: 0 0 9rem !important;
  aspect-ratio: 1 / 1;
  isolation: isolate;
}

#section-profile-appearance #profile-image-preview-image {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 20%;
     object-position: center 20%;
}

#section-profile-appearance #profile-image-preview-image.hidden {
  display: none !important;
}

/* Manage-all-photos uses the same compact fields and surfaces as the new layout. */

#section-content-manager .gallery-tools-disclosure__body {
  gap: 1.25rem;
  padding: 1.25rem;
}

#section-content-manager .gallery-upload-form {
  display: block !important;
  overflow: visible;
  grid-template-columns: none !important;
  gap: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#section-content-manager #gallery-photo-files {
  position: absolute !important;
  width: 1px !important;
  min-width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  overflow: hidden !important;
  margin: -1px !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.gallery-upload-form__intro {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.12);
  padding: 0 0 1rem;
}

.gallery-upload-form__intro-icon,
.gallery-upload-dropzone__icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  color: rgb(var(--admin-primary) / 1);
}

.gallery-upload-form__intro-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: rgb(var(--admin-primary) / 0.1);
}

.gallery-upload-form__intro-icon svg,
.gallery-upload-dropzone__icon svg,
.gallery-upload-form__submit svg {
  width: 1rem;
  height: 1rem;
}

.gallery-upload-form__intro h4 {
  margin: 0;
  color: rgb(var(--admin-fg) / 1) !important;
  font-size: 0.875rem !important;
  font-weight: 750;
  letter-spacing: 0;
}

.gallery-upload-form__intro p {
  margin: 0.2rem 0 0;
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.72rem;
  line-height: 1.45;
}

.gallery-upload-form__layout {
  display: grid;
  grid-template-columns: minmax(15rem, 0.8fr) minmax(18rem, 1.2fr);
  gap: 1rem;
  padding: 1rem 0 0;
}

.gallery-upload-dropzone {
  display: flex;
  min-height: 11rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.45rem;
  border: 1px dashed rgb(var(--admin-primary) / 0.36);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.5);
  padding: 1.25rem;
  color: rgb(var(--admin-fg) / 1);
  cursor: pointer;
  text-align: center;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.gallery-upload-dropzone:hover,
.gallery-upload-dropzone:focus-within {
  border-color: rgb(var(--admin-primary) / 0.72);
  background: rgb(var(--admin-primary) / 0.07);
}

.gallery-upload-dropzone__icon {
  width: 2.25rem;
  height: 2.25rem;
  margin-bottom: 0.15rem;
  border-radius: 0.5rem;
  background: rgb(var(--admin-primary) / 0.1);
}

.gallery-upload-dropzone strong {
  font-size: 0.82rem;
  font-weight: 750;
}

.gallery-upload-dropzone > span:not([class]) {
  max-width: 20rem;
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.7rem;
  line-height: 1.45;
}

.gallery-upload-dropzone small {
  margin-top: 0.35rem;
  color: rgb(var(--admin-primary) / 0.92);
  font-size: 0.68rem;
  font-weight: 650;
}

#section-profile-appearance .profile-image-upload-dropzone {
  min-height: 8.75rem;
  border-radius: 0.75rem;
}

#section-profile-appearance .profile-image-upload-dropzone small:empty {
  display: none;
}

.coverage-dashboard-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}

.coverage-dashboard-links .btn-pill {
  justify-content: center;
  min-width: min(100%, 13.5rem);
}

.gallery-upload-form__fields {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  gap: 0.875rem;
}

.gallery-upload-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.4rem;
}

.gallery-upload-field > label,
.gallery-upload-field__label {
  color: rgb(var(--admin-muted) / 1) !important;
  font-size: 0.72rem !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

#section-content-manager .gallery-upload-form .field-outlined,
#section-content-manager .gallery-photo-filter__select {
  min-height: 2.75rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel) / 0.72) !important;
  padding: 0.7rem 0.8rem !important;
  color: rgb(var(--admin-fg) / 1) !important;
  font-size: 0.78rem;
}

#section-content-manager .gallery-upload-form .field-outlined:focus,
#section-content-manager .gallery-photo-filter__select:focus {
  border-color: rgb(var(--admin-primary) / 0.64) !important;
  outline: 0;
  box-shadow: 0 0 0 3px rgb(var(--admin-primary) / 0.1) !important;
}

.gallery-upload-form__submit {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 8rem;
  min-height: 2.5rem;
  align-self: flex-end;
  gap: 0.45rem;
  border-radius: 0.5rem !important;
  padding: 0.55rem 0.9rem !important;
}

.gallery-photo-filter {
  display: flex;
  max-width: 22rem;
  flex-direction: column;
  gap: 0.4rem;
}

.gallery-photo-filter__select {
  width: 100%;
}

#gallery-management {
  align-items: stretch;
  grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr)) !important;
}

#gallery-management.gallery-management--empty {
  display: block;
}

.gallery-management__empty {
  display: flex;
  min-height: 9rem;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border: 1px dashed rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.36);
  padding: 1.25rem;
  text-align: left;
}

.gallery-management__empty strong {
  color: rgb(var(--admin-fg) / 0.96);
  font-size: 0.8rem;
}

.gallery-management__empty p {
  margin: 0.2rem 0 0;
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.72rem;
}

.admin-gallery-photo-card {
  overflow: hidden;
  aspect-ratio: 1 / 1;
  border-radius: 0.5rem;
}

/* Poll cards keep every action while matching the template's lighter hierarchy. */

.admin-poll-card {
  gap: 0.75rem;
  border-color: rgb(var(--admin-border-soft) / 0.15) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel) / 0.74) !important;
  padding: 1rem !important;
}

.admin-poll-card:hover {
  border-color: rgb(var(--admin-primary) / 0.3) !important;
  background: rgb(var(--admin-panel) / 0.9) !important;
}

.admin-poll-card[data-state='inactive'] {
  background: rgb(var(--admin-panel) / 0.54) !important;
}

.admin-poll-card__status[data-state='inactive'] {
  border-color: rgb(251 191 36 / 0.24) !important;
  background: rgb(251 191 36 / 0.1) !important;
  color: rgb(251 191 36 / 1) !important;
}

.admin-poll-card__actions {
  row-gap: 0.35rem;
}

.admin-poll-card__results-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
  margin-left: 0.15rem;
  border-left: 1px solid rgb(var(--admin-border-soft) / 0.14);
  padding-left: 0.35rem;
}

.admin-poll-card .poll-results {
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.1);
  padding-top: 0.75rem;
}

.admin-poll-card__results-header {
  display: none;
}

@media (max-width: 760px) {
  #toast-notification {
    top: auto !important;
    right: 1rem !important;
    bottom: 1rem !important;
    left: 1rem !important;
    max-width: none !important;
  }

  .gallery-upload-form__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .gallery-upload-dropzone {
    min-height: 9rem;
  }

  .gallery-upload-form__submit {
    width: 100%;
  }

  .admin-poll-card__results-actions {
    margin-left: auto;
    border-left: 0;
    padding-left: 0;
  }

  .admin-poll-card__actions {
    gap: 0.25rem;
  }

  .admin-poll-card__state-action {
    padding-inline: 0.5rem;
  }
}

@media (max-width: 640px) {
  .album-stats-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .album-stats-summary__item:nth-child(3) {
    border-left: 0;
    border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  }

  .album-stats-summary__item:nth-child(4) {
    border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  }

  .gallery-tools-disclosure__copy span {
    display: none;
  }
}

@media (max-width: 420px) {
  .admin-album-stats-action span {
    display: none;
  }

  .admin-album-stats-action {
    width: 1.9rem;
    padding: 0;
  }

  .album-stats-photo__progress-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.35rem;
  }

  .album-stats-photo__progress {
    width: 100%;
    flex-basis: 0.35rem;
  }
}

/* Gallery & Albums: parity with newdesigntemplate */

#section-content-manager .content-manager-summary.hidden,
#section-content-manager .content-manager-gallery-card.hidden {
  display: none !important;
}

#section-content-manager .content-manager-stack {
  gap: 1rem;
}

#section-content-manager .content-manager-albums-card {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#section-content-manager .albums-management {
  display: flex !important;
  flex-direction: column;
  gap: 1rem !important;
}

#section-content-manager .content-manager-panel--list {
  width: 100%;
}

#section-content-manager .content-manager-panel--form {
  width: 100%;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.48);
  padding: 1rem;
}

.albums-template-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#section-content-manager .admin-album-card {
  display: block !important;
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel-2) / 0.42) !important;
  box-shadow: none !important;
}

#section-content-manager .admin-album-card:hover {
  border-color: rgb(var(--admin-primary) / 0.3) !important;
  background: rgb(var(--admin-panel-2) / 0.56) !important;
  transform: none;
}

#section-content-manager .admin-album-card[data-state='archived'] {
  opacity: 1;
}

.admin-album-row__header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
  padding: 1rem 1.25rem;
}

#section-content-manager .album-expand-trigger.admin-album-row__main {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0 !important;
  text-align: left;
  cursor: pointer;
}

#section-content-manager .album-expand-trigger:focus-visible {
  border-radius: 0.375rem;
  outline: 2px solid rgb(var(--admin-primary) / 0.72);
  outline-offset: 4px;
}

#section-content-manager .admin-album-row__thumb {
  display: inline-flex;
  width: 2.5rem;
  height: 3.5rem;
  flex: 0 0 2.5rem;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.72);
  color: rgb(var(--admin-muted) / 0.9);
}

#section-content-manager .admin-album-row__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#section-content-manager .admin-album-row__thumb svg {
  width: 1rem;
  height: 1rem;
}

.admin-album-row__info {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

#section-content-manager .admin-album-row__title {
  overflow: hidden;
  color: rgb(var(--admin-fg) / 1) !important;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#section-content-manager .admin-album-row__description {
  display: block;
  overflow: hidden;
  color: rgb(var(--admin-muted) / 0.92) !important;
  font-size: 0.72rem;
  line-height: 1.45;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-album-row__chevron {
  display: inline-flex;
  flex: 0 0 auto;
  color: rgb(var(--admin-muted) / 0.92);
}

.admin-album-row__chevron svg {
  width: 0.95rem;
  height: 0.95rem;
}

#section-content-manager .admin-album-row__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: 0.4rem;
  width: auto;
  overflow: visible;
  border: 0;
  padding: 0 !important;
}

.admin-album-status-toggle {
  min-height: 1.5rem;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 0.15rem 0.55rem;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.admin-album-status-toggle--public {
  border-color: rgb(74 222 128 / 0.16);
  background: rgb(22 163 74 / 0.18);
  color: rgb(74 222 128 / 1);
}

.admin-album-status-toggle--draft {
  border-color: rgb(250 204 21 / 0.16);
  background: rgb(202 138 4 / 0.18);
  color: rgb(250 204 21 / 1);
}

.admin-album-status-toggle:focus-visible,
.admin-album-icon-action:focus-visible,
.admin-album-photo__action:focus-visible,
.admin-album-photo-upload:focus-visible,
.album-create-dashed:focus-visible {
  outline: 2px solid rgb(var(--admin-primary) / 0.72);
  outline-offset: 2px;
}

.admin-album-icon-action {
  display: inline-flex;
  width: 1.9rem;
  height: 1.9rem;
  flex: 0 0 1.9rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.42);
  color: rgb(var(--admin-muted) / 1);
  cursor: pointer;
}

.admin-album-icon-action:hover:not(:disabled) {
  border-color: rgb(var(--admin-primary) / 0.38);
  color: rgb(var(--admin-primary) / 1);
}

.admin-album-icon-action--danger {
  color: rgb(248 113 113 / 0.9);
}

.admin-album-icon-action:disabled {
  opacity: 0.32;
  cursor: not-allowed;
}

.admin-album-icon-action svg {
  width: 0.8rem;
  height: 0.8rem;
}

#section-content-manager .admin-album-photos {
  display: block;
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.14);
  background: transparent;
  padding: 1rem 1.25rem 1.25rem !important;
}

#section-content-manager .admin-album-photos[hidden] {
  display: none !important;
}

#section-content-manager .admin-album-photos__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(5.25rem, 5.25rem));
  gap: 0.55rem;
  justify-content: start;
  padding: 0;
}

#section-content-manager .admin-album-photo {
  position: relative;
  width: 5.25rem;
  overflow: hidden;
  aspect-ratio: 2 / 3;
  border: 1px solid rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.72);
}

#section-content-manager .admin-album-photo img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

#section-content-manager .admin-album-photo__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  opacity: 0;
  background: rgb(0 0 0 / 0.56);
  transition: opacity 160ms ease;
}

#section-content-manager .admin-album-photo:hover .admin-album-photo__overlay,
#section-content-manager .admin-album-photo:focus-within .admin-album-photo__overlay {
  opacity: 1;
}

.admin-album-photo__action {
  display: inline-flex;
  width: 1.75rem;
  height: 1.75rem;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: rgb(var(--admin-primary) / 0.88);
  color: rgb(255 255 255 / 1);
  cursor: pointer;
}

.admin-album-photo__action--danger {
  background: rgb(220 38 38 / 0.88);
}

.admin-album-photo__action svg {
  width: 0.75rem;
  height: 0.75rem;
}

.admin-album-photo-upload {
  display: inline-flex;
  width: 5.25rem;
  align-items: center;
  justify-content: center;
  aspect-ratio: 2 / 3;
  border: 2px dashed rgb(var(--admin-primary) / 0.26);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.42);
  color: rgb(var(--admin-muted) / 0.96);
  cursor: pointer;
}

.admin-album-photo-upload:hover {
  border-color: rgb(var(--admin-primary) / 0.58);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
}

.admin-album-photo-upload svg {
  width: 1rem;
  height: 1rem;
}

#section-content-manager .admin-album-photos__empty {
  grid-column: 1 / -1;
  margin: 0 0 0.25rem;
  border: 0;
  background: transparent;
  color: rgb(var(--admin-muted) / 0.9);
  padding: 0.25rem 0;
  font-size: 0.78rem;
}

.admin-album-photos__footer {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin-top: 0.75rem;
}

.admin-album-row__reorder {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.admin-album-row__reorder-label {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  min-height: 1.9rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  padding: 0 0.65rem;
  color: rgb(var(--admin-muted) / 0.94);
  font-size: 0.72rem;
}

.admin-album-row__reorder-label svg {
  width: 0.72rem;
  height: 0.72rem;
}

.album-create-row.hidden,
.album-create-dashed.hidden {
  display: none !important;
}

.album-create-row__title {
  margin: 0 0 0.75rem;
  color: rgb(var(--admin-fg) / 1);
  font-size: 0.9rem;
  font-weight: 700;
}

#section-content-manager #album-create-form.album-create-inline {
  display: grid;
  gap: 0.75rem;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

#album-create-form .field-outlined {
  min-height: 2.75rem;
}

.album-create-inline__description {
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.14);
  padding-top: 0.65rem;
}

.album-create-inline__description > summary {
  width: -moz-fit-content;
  width: fit-content;
  color: rgb(var(--admin-muted) / 0.94);
  font-size: 0.76rem;
  cursor: pointer;
}

.album-create-inline__description[open] > summary {
  margin-bottom: 0.75rem;
  color: rgb(var(--admin-primary) / 1);
}

.album-create-inline__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}

.album-create-dashed {
  display: flex;
  width: 100%;
  min-height: 4.5rem;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  border: 2px dashed rgb(var(--admin-primary) / 0.2);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.34);
  color: rgb(var(--admin-muted) / 0.96);
  font-size: 0.875rem;
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.album-create-dashed:hover {
  border-color: rgb(var(--admin-primary) / 0.5);
  background: rgb(var(--admin-primary) / 0.07);
  color: rgb(var(--admin-primary) / 1);
}

.album-create-dashed svg {
  width: 1rem;
  height: 1rem;
}

#section-content-manager .album-empty-row {
  border: 1px dashed rgb(var(--admin-primary) / 0.24);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.34);
}

@media (max-width: 640px) {
  .admin-album-row__header {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 0.9rem;
  }

  #section-content-manager .album-expand-trigger.admin-album-row__main {
    width: 100%;
    flex-basis: 100%;
  }

  #section-content-manager .admin-album-row__actions {
    width: 100%;
    justify-content: flex-end;
    padding-left: 3.25rem !important;
  }

  #section-content-manager .admin-album-photos {
    padding: 0.9rem !important;
  }

  #section-content-manager .admin-album-photos__grid {
    grid-template-columns: repeat(auto-fill, minmax(4.75rem, 4.75rem));
  }

  #section-content-manager .admin-album-photo,
  .admin-album-photo-upload {
    width: 4.75rem;
  }

  .admin-album-photos__footer {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-album-photos__footer > .album-upload-trigger {
    justify-content: center;
  }

  .admin-album-row__reorder {
    justify-content: flex-start;
  }

  .album-create-inline__actions {
    flex-direction: column-reverse;
  }

  .album-create-inline__actions .btn-pill {
    width: 100%;
  }
}

/*
  Gallery/admin sidebar refinement: prevent the compact menu from landing in a
  broken half-expanded state and bring Gallery & Albums closer to the template.
*/

.admin-sidebar__brand > div,
.admin-sidebar__brand-label,
.admin-sidebar__brand-subtitle,
.admin-sidebar__nav-button span,
.admin-sidebar__view-site span,
.admin-sidebar__logout span {
  max-width: 100%;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.admin-sidebar__nav-button {
  min-width: 0 !important;
}

.admin-sidebar__nav-button[aria-current='page']::after {
  flex: 0 0 auto;
}

.content-manager-shell {
  display: flex;
  flex-direction: column;
  gap: 1.5rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.content-manager-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

.content-manager-header .admin-section__title {
  margin: 0 !important;
  color: #f0ecf8 !important;
}

.content-manager-subtitle {
  margin-top: 0.35rem;
  max-width: 44rem;
  color: rgb(190 174 218 / 0.88);
  font-size: 0.9rem;
  line-height: 1.6;
}

.content-manager-header__action {
  flex: 0 0 auto;
  white-space: nowrap;
}

.content-manager-stack {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.polls-admin-shell {
  display: flex;
  flex-direction: column;
  gap: 1.5rem !important;
  width: 100%;
  max-width: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.polls-admin-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.polls-admin-header .admin-section__title {
  margin: 0 !important;
  color: #f0ecf8 !important;
  font-family: var(--font-display, 'Cormorant Garamond', serif);
  font-size: clamp(1.65rem, 1.28rem + 0.9vw, 2rem) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.polls-admin-subtitle {
  margin-top: 0.35rem;
  max-width: 44rem;
  color: rgb(190 174 218 / 0.92) !important;
  font-size: 0.86rem;
  line-height: 1.6;
}

.polls-admin-header__action {
  flex: 0 0 auto;
  white-space: nowrap;
}

#polls-admin-mount > .admin-card,
#polls-admin-card {
  border: 1px solid rgb(232 68 122 / 0.16) !important;
  border-radius: 1rem !important;
  background: rgb(22 18 31 / 0.88) !important;
  box-shadow: 0 18px 48px -46px rgb(232 68 122 / 0.58) !important;
}

#section-polls #poll-create-form {
  border: 1px solid rgb(232 68 122 / 0.16) !important;
  border-radius: 1rem !important;
  background: rgb(15 12 22 / 0.58) !important;
  padding: 1rem !important;
}

#section-content-manager .content-manager-albums-card,
#section-content-manager .content-manager-gallery-card {
  border-color: rgb(232 68 122 / 0.16) !important;
  background: rgb(22 18 31 / 0.88) !important;
}

#section-content-manager .albums-management {
  display: grid !important;
  grid-template-columns: minmax(0, 1.3fr) minmax(20rem, 0.7fr);
  align-items: start;
  gap: 1.25rem !important;
}

.content-manager-panel {
  min-width: 0;
  border: 1px solid rgb(232 68 122 / 0.12);
  border-radius: 0.95rem;
  background: rgb(255 255 255 / 0.025);
  padding: 1.1rem;
}

#section-content-manager .content-manager-panel > h3,
#section-content-manager .content-manager-gallery-card > h3 {
  color: #f0ecf8 !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.92rem !important;
  text-transform: none;
}

#albums-list {
  gap: 0.75rem !important;
}

#section-content-manager .admin-album-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.85rem !important;
  min-height: 4.75rem;
  padding: 0.9rem 1rem !important;
}

.admin-album-row__main {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.9rem;
}

.admin-album-row__thumb {
  display: inline-flex;
  width: 2.7rem;
  height: 3.55rem;
  flex: 0 0 2.7rem;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.8rem;
  background:
    radial-gradient(circle at 35% 25%, rgb(232 68 122 / 0.22), transparent 45%),
    rgb(30 24 40 / 0.88);
  color: rgb(190 174 218 / 0.86);
}

.admin-album-row__thumb svg {
  width: 1rem;
  height: 1rem;
}

#section-content-manager .album-edit-trigger {
  min-width: 0;
  padding: 0 !important;
}

#section-content-manager .admin-album-row__title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#section-content-manager .admin-album-row__description {
  display: -webkit-box;
  overflow: hidden;
  color: rgb(190 174 218 / 0.78) !important;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

#section-content-manager .admin-album-card > div:last-child {
  flex-wrap: nowrap;
  justify-content: flex-end;
}

#section-content-manager .admin-album__archive-btn {
  min-height: 2.25rem;
  border-radius: 0.7rem !important;
}

#section-content-manager .admin-album-row {
  align-items: start !important;
  overflow: hidden;
  padding: 0 !important;
}

#section-content-manager .admin-album-row__main,
#section-content-manager .admin-album-row > div:nth-child(2) {
  padding: 1rem;
}

#section-content-manager .admin-album-row__main {
  min-width: 0;
}

#section-content-manager .admin-album-row__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#section-content-manager .admin-album-row__meta {
  color: #e8447a;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

#section-content-manager .admin-album-photos {
  grid-column: 1 / -1;
  border-top: 1px solid rgb(232 68 122 / 0.14);
  background: rgb(10 8 15 / 0.42);
}

#section-content-manager .admin-album-photos__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3rem;
  padding: 0.8rem 1rem;
  color: #beadda;
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  list-style: none;
  text-transform: uppercase;
}

#section-content-manager .admin-album-photos__summary::-webkit-details-marker {
  display: none;
}

#section-content-manager .admin-album-photos__summary::after {
  content: '+';
  display: inline-flex;
  width: 1.9rem;
  height: 1.9rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(232 68 122 / 0.22);
  border-radius: 999px;
  color: #f0ecf8;
  background: rgb(22 18 31 / 0.84);
  transition: transform 180ms ease, background 180ms ease;
}

#section-content-manager .admin-album-photos[open] .admin-album-photos__summary::after {
  content: '-';
  background: rgb(232 68 122 / 0.14);
  transform: rotate(180deg);
}

#section-content-manager .admin-album-photos__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(8.5rem, 1fr));
  gap: 0.9rem;
  padding: 0 1rem 1rem;
}

#section-content-manager .admin-album-photos__empty {
  grid-column: 1 / -1;
  margin: 0;
  border: 1px dashed rgb(232 68 122 / 0.2);
  border-radius: 0.9rem;
  padding: 1rem;
  color: rgb(190 174 218 / 0.82);
  font-size: 0.88rem;
}

#section-content-manager .admin-album-photo {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 0.9rem;
  background: rgb(22 18 31 / 0.78);
}

#section-content-manager .admin-album-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  -o-object-fit: cover;
     object-fit: cover;
}

#section-content-manager .admin-album-photo__overlay {
  position: absolute;
  inset: 0 0 auto;
  display: flex;
  justify-content: flex-end;
  gap: 0.4rem;
  padding: 0.5rem;
  opacity: 0;
  background: linear-gradient(180deg, rgb(0 0 0 / 0.62), transparent);
  transition: opacity 180ms ease;
}

#section-content-manager .admin-album-photo:hover .admin-album-photo__overlay,
#section-content-manager .admin-album-photo:focus-within .admin-album-photo__overlay {
  opacity: 1;
}

#section-content-manager .admin-album-photo p {
  margin: 0;
  min-height: 2.5rem;
  padding: 0.55rem 0.65rem;
  color: rgb(240 236 248 / 0.88);
  font-size: 0.78rem;
  line-height: 1.35;
}

#photo-upload-form {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(14rem, 0.85fr);
  gap: 1rem;
}

#photo-upload-form > h4 {
  grid-column: 1 / -1;
  margin-bottom: 0 !important;
}

#photo-upload-form > .space-y-4 {
  display: contents;
}

#photo-upload-form input[type='file'] {
  min-height: 8rem;
  border: 1px dashed rgb(232 68 122 / 0.28);
  border-radius: 0.95rem;
  background: rgb(255 255 255 / 0.025);
  padding: 1rem;
}

#gallery-management {
  grid-template-columns: repeat(auto-fill, minmax(7.25rem, 1fr)) !important;
  gap: 0.85rem !important;
}

#gallery-management .admin-gallery-photo-card img {
  aspect-ratio: 2 / 3 !important;
}

@media (max-width: 1023px) {
  .admin-sidebar.admin-sidebar--open {
    width: var(--admin-sidebar-open-width) !important;
    max-width: calc(100vw - 0.75rem) !important;
  }

  .admin-sidebar.admin-sidebar--open .admin-sidebar__nav-button span,
  .admin-sidebar.admin-sidebar--open .admin-sidebar__view-site span,
  .admin-sidebar.admin-sidebar--open .admin-sidebar__logout span {
    display: inline !important;
  }

  .content-manager-header {
    flex-direction: column;
    padding: 1.15rem;
  }

  .content-manager-header__action {
    width: 100%;
    justify-content: center;
  }

  #section-content-manager .albums-management,
  #photo-upload-form {
    grid-template-columns: minmax(0, 1fr);
  }

  #section-content-manager .admin-album-card {
    grid-template-columns: minmax(0, 1fr);
  }

  #section-content-manager .admin-album-card > div:last-child {
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 0.15rem;
  }
}

@media (max-width: 420px) {
  .admin-sidebar.admin-sidebar--open {
    max-width: 17.5rem !important;
  }

  .admin-sidebar.admin-sidebar--open .admin-sidebar__brand > div,
  .admin-sidebar.admin-sidebar--open .admin-sidebar__nav-button span {
    max-width: 10.5rem;
  }

  .admin-sidebar.admin-sidebar--open .admin-sidebar__nav-button {
    gap: 0.65rem !important;
  }
}

/*
  Blog & Posts next design step: keep table contracts but render like the
  reference admin list with media thumbnails, compact metadata and action pills.
*/

.blog-admin-shell {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#blog-list-view > .flex:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

.blog-editor-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  min-height: 4rem;
  border-bottom: 1px solid rgb(232 68 122 / 0.18);
  background: rgb(22 18 31 / 0.94);
  padding: 0.75rem 1.25rem;
}

.blog-editor-title-field,
.blog-editor-topbar > .space-y-1 {
  flex: 1 1 auto;
  min-width: 0;
}

.blog-editor-title-input {
  width: 100%;
  border: 0;
  background: transparent;
  color: #f5f0fa;
  font-family: var(--font-display, 'Cormorant Garamond', serif);
  font-size: clamp(1.35rem, 1.2rem + 0.4vw, 1.7rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  outline: none;
}

.blog-editor-title-input::-moz-placeholder {
  color: rgb(190 174 218 / 0.58);
}

.blog-editor-title-input::placeholder {
  color: rgb(190 174 218 / 0.58);
}

.blog-editor-topbar__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.5rem;
  flex: 0 0 auto;
}

.blog-editor-form {
  display: flex;
  min-height: calc(100vh - 10.5rem);
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 0.75rem;
  background: #0d0a12;
  box-shadow: 0 24px 70px -55px rgb(232 68 122 / 0.72);
}

.blog-editor-workspace {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr) 19rem;
  align-items: stretch;
  min-height: 0;
}

.blog-editor-settings-panel {
  min-width: 0;
  border-left: 1px solid rgb(232 68 122 / 0.18);
  background: rgb(22 18 31 / 0.94);
}

.blog-editor-body-section {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: #0d0a12;
}

.blog-editor-bottom-actions {
  display: none !important;
}

.blog-editor-command {
  display: inline-flex;
  min-height: 2.35rem;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  border: 1px solid rgb(232 68 122 / 0.2);
  border-radius: 0.5rem;
  background: rgb(36 29 48 / 0.62);
  color: rgb(210 194 231 / 0.88);
  padding: 0.48rem 0.85rem;
  font-size: 0.78rem;
  font-weight: 700;
  transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease, transform 150ms ease;
}

.blog-editor-command:hover,
.blog-editor-command:focus-visible {
  border-color: rgb(232 68 122 / 0.48);
  background: rgb(232 68 122 / 0.1);
  color: #ff75a4;
  outline: none;
}

.blog-editor-command:active {
  transform: scale(0.97);
}

.blog-editor-command--primary {
  border-color: #e8447a;
  background: #e8447a;
  color: #fff;
  box-shadow: 0 10px 30px -18px rgb(232 68 122 / 0.82);
}

.blog-editor-command--primary:hover,
.blog-editor-command--primary:focus-visible {
  background: #f05286;
  color: #fff;
}

.blog-editor-command svg,
.blog-editor-tool-button svg,
.blog-editor-platforms svg {
  width: 0.95rem;
  height: 0.95rem;
}

.blog-editor-toolbar-shell {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  border-bottom: 1px solid rgb(232 68 122 / 0.16);
  background: rgb(22 18 31 / 0.88);
  padding: 0.35rem 0.75rem;
}

.blog-editor__toolbar {
  flex: 1 1 36rem;
  min-width: 0;
}

.blog-editor-mode-tabs,
.blog-editor-mode-tabs__inner {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.15rem;
}

.blog-editor-mode-tab {
  border: 0;
  border-radius: 0.4rem;
  background: transparent;
  color: rgb(190 174 218 / 0.72);
  padding: 0.4rem 0.58rem;
  font-size: 0.72rem;
  font-weight: 700;
  transition: background-color 150ms ease, color 150ms ease;
}

.blog-editor-mode-tab:hover,
.blog-editor-mode-tab:focus-visible,
.blog-editor-mode-tab.blog-editor__tab--active {
  background: rgb(232 68 122 / 0.12);
  color: #ff75a4;
  outline: none;
}

.blog-editor-utilitybar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
  border-bottom: 1px solid rgb(232 68 122 / 0.12);
  background: rgb(16 12 23 / 0.9);
  padding: 0.4rem 1rem;
}

.blog-editor-font-size-control,
.blog-editor-utilitybar__actions {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.blog-editor-font-size-control label {
  color: rgb(190 174 218 / 0.7);
  font-size: 0.7rem;
  font-weight: 700;
}

.blog-editor-format-row__input {
  min-height: 1.9rem;
  width: 8.5rem;
  border: 1px solid rgb(232 68 122 / 0.2);
  border-radius: 0.45rem;
  background: rgb(15 12 22 / 0.82);
  color: #f0ecf8;
  padding: 0.32rem 0.5rem;
  font-size: 0.72rem;
  outline: none;
}

.blog-editor-format-row__input:focus {
  border-color: rgb(232 68 122 / 0.52);
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.12);
}

.blog-editor-tool-button {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0.4rem;
  background: transparent;
  color: rgb(190 174 218 / 0.78);
  transition: background-color 150ms ease, color 150ms ease;
}

.blog-editor-tool-button:hover,
.blog-editor-tool-button:focus-visible {
  background: rgb(232 68 122 / 0.12);
  color: #ff75a4;
  outline: none;
}

.blog-editor-font-size-control .btn-pill {
  min-height: 1.9rem;
  border-radius: 0.45rem;
  padding: 0.3rem 0.65rem;
  font-size: 0.7rem;
}

.blog-editor__source-panel.hidden,
.blog-editor-insert-panel.hidden {
  display: none !important;
}

.blog-editor__surface {
  flex: 1 1 auto;
  border: 0 !important;
  border-radius: 0 !important;
  background: #0d0a12 !important;
}

.blog-editor__container .ql-editor {
  min-height: 34rem;
  max-width: 48rem;
  margin: 0 auto;
  padding: 1.75rem 2rem;
  color: #f0ecf8;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 1rem;
  line-height: 1.85;
}

.blog-editor__preview {
  min-height: 34rem !important;
  max-width: 48rem;
  margin: 0 auto;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 1.75rem 2rem !important;
  color: #f0ecf8;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 1rem;
  line-height: 1.85;
}

.blog-editor__preview::before {
  display: none !important;
  content: none !important;
}

.blog-editor__source-panel {
  min-height: 34rem;
  border: 0;
  border-radius: 0;
  background: #0d0a12;
  padding: 1.5rem 2rem;
}

.blog-editor-insert-panel {
  position: fixed;
  z-index: 120;
  top: 50%;
  left: 50%;
  display: grid;
  width: min(27rem, calc(100vw - 2rem));
  max-height: calc(100vh - 2rem);
  gap: 0.85rem;
  overflow-y: auto;
  transform: translate(-50%, -50%);
  border: 1px solid rgb(232 68 122 / 0.32);
  border-radius: 0.85rem;
  background: #17121f;
  padding: 1.35rem;
  box-shadow: 0 0 0 100vmax rgb(0 0 0 / 0.72), 0 28px 80px -30px rgb(0 0 0 / 0.95);
}

.blog-editor-insert-panel__close {
  position: absolute;
  top: 0.55rem;
  right: 0.55rem;
}

.blog-editor-insert-panel .field-outlined-wrap {
  width: 100%;
}

.blog-editor-platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.blog-editor-platforms span {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border-radius: 0.45rem;
  background: rgb(36 29 48 / 0.72);
  color: rgb(190 174 218 / 0.78);
  padding: 0.4rem 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
}

.blog-editor-settings-heading {
  border-bottom: 1px solid rgb(232 68 122 / 0.16);
  color: #f0ecf8;
  padding: 0.9rem 1rem;
  font-size: 0.82rem;
  font-weight: 800;
}

.blog-editor-settings-group {
  border-bottom: 1px solid rgb(232 68 122 / 0.14);
}

.blog-editor-settings-group > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  cursor: pointer;
  list-style: none;
  color: #f0ecf8;
  padding: 0.8rem 1rem;
  font-size: 0.75rem;
  font-weight: 800;
}

.blog-editor-settings-group > summary::-webkit-details-marker {
  display: none;
}

.blog-editor-settings-group > summary svg {
  width: 0.9rem;
  height: 0.9rem;
  transition: transform 180ms ease;
}

.blog-editor-settings-group[open] > summary svg {
  transform: rotate(180deg);
}

.blog-editor-settings-group__content {
  display: grid;
  gap: 0.85rem;
  padding: 0.1rem 1rem 1rem;
}

.blog-editor-settings-panel .blog-editor-field,
.blog-editor-settings-panel .grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0.75rem;
}

.blog-editor-settings-panel label,
.blog-editor-settings-panel .field-outlined-helper {
  color: rgb(190 174 218 / 0.78);
  font-size: 0.7rem;
}

.blog-editor-settings-panel .field-outlined,
.blog-editor-settings-panel .admin-select-md3 {
  min-height: 2.35rem;
  border-radius: 0.5rem;
  padding: 0.55rem 0.65rem;
  font-size: 0.75rem;
}

.blog-editor-settings-panel textarea.field-outlined {
  min-height: 4.5rem;
}

.blog-editor-news-field {
  display: grid;
  gap: 0.45rem;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.55rem;
  background: rgb(10 8 15 / 0.36);
  padding: 0.65rem;
}

#blog-posts-table {
  display: block;
}

#blog-posts-table thead {
  display: none;
}

#blog-posts-body {
  display: flex;
  flex-direction: column;
}

#blog-posts-body tr.admin-blog-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(11rem, auto) auto;
  align-items: center;
  gap: 1rem;
  border-bottom: 1px solid rgb(232 68 122 / 0.12);
  background: transparent !important;
}

#blog-posts-body tr.admin-blog-row:last-child {
  border-bottom: 0;
}

#blog-posts-body tr.admin-blog-row td {
  border: 0 !important;
  padding: 1rem !important;
}

.admin-blog-row__content strong {
  display: inline;
  color: #f0ecf8;
  font-size: 1rem;
}

.admin-blog-row__excerpt {
  display: -webkit-box;
  margin: 0.35rem 0 0;
  overflow: hidden;
  color: rgb(190 174 218 / 0.78);
  font-size: 0.84rem;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.admin-blog-row__meta {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  color: rgb(240 236 248 / 0.86);
  font-size: 0.82rem;
}

.admin-blog-row__meta span {
  color: #e8447a;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#section-blog .md3-badge--primary {
  border-color: rgb(232 68 122 / 0.36) !important;
  background: rgb(232 68 122 / 0.16) !important;
  color: #ff75a4 !important;
}

#section-blog .blog-editor__toolbar .ql-toolbar {
  gap: 0.35rem;
  border-radius: 0;
  background: transparent;
  padding: 0.25rem 0;
}

@media (max-width: 1180px) {
  .blog-editor-workspace {
    grid-template-columns: minmax(0, 1fr) 17rem;
  }

  .blog-editor-command span {
    display: none;
  }

  .blog-editor-command {
    width: 2.35rem;
    padding-inline: 0;
  }
}

@media (max-width: 820px) {
  .blog-editor-topbar {
    flex-direction: column;
  }

  .blog-editor-topbar__actions {
    justify-content: flex-start;
    width: auto;
  }

  .blog-editor-workspace {
    display: flex;
    flex-direction: column;
  }

  .blog-editor-settings-panel {
    border-top: 1px solid rgb(232 68 122 / 0.18);
    border-left: 0;
  }

  .blog-editor-toolbar-shell {
    align-items: flex-start;
    flex-direction: column;
  }

  .blog-editor-mode-tabs {
    width: 100%;
  }

  .blog-editor__container .ql-editor,
  .blog-editor__preview {
    min-height: 25rem !important;
    padding: 1.25rem !important;
  }

  #blog-posts-body tr.admin-blog-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  #blog-posts-body tr.admin-blog-row td {
    padding: 0.75rem 1rem !important;
  }
}

#section-blog-title {
  margin: 0 !important;
  color: #f0ecf8 !important;
}

#section-blog .admin-blog-filters {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end !important;
  gap: 1rem !important;
  border-color: rgb(232 68 122 / 0.16) !important;
  background: rgb(22 18 31 / 0.72) !important;
}

.blog-posts-panel {
  overflow: hidden;
  border-color: rgb(232 68 122 / 0.16) !important;
  background: rgb(22 18 31 / 0.88) !important;
}

.blog-posts-panel__scroll {
  overflow-x: visible !important;
}

#blog-posts-table {
  display: block;
  min-width: 0 !important;
  border-spacing: 0 0.75rem !important;
}

#blog-posts-table thead {
  display: none;
}

#blog-posts-table tbody {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
}

#blog-posts-table tr.admin-blog-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center;
  gap: 0.9rem;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.95rem;
  background: rgb(18 14 28 / 0.76) !important;
  padding: 0.85rem 1rem;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

#blog-posts-table tr.admin-blog-row:hover {
  border-color: rgb(232 68 122 / 0.34) !important;
  background: rgb(30 24 40 / 0.72) !important;
}

#blog-posts-table tr.empty {
  display: block;
}

#blog-posts-table tr.empty.hidden {
  display: none !important;
}

#blog-posts-table .admin-blog-row td {
  display: block;
  border-bottom: 0 !important;
  padding: 0 !important;
}

.admin-blog-row__main {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.9rem;
}

.admin-blog-row__media {
  display: inline-flex;
  width: 4rem;
  height: 3rem;
  flex: 0 0 4rem;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.85rem;
  background:
    radial-gradient(circle at 35% 25%, rgb(232 68 122 / 0.2), transparent 45%),
    rgb(30 24 40 / 0.88);
  color: rgb(190 174 218 / 0.86);
}

.admin-blog-row__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.admin-blog-row__media svg {
  width: 1rem;
  height: 1rem;
}

.admin-blog-row__content {
  min-width: 0;
}

.admin-blog-row__content strong {
  display: inline-block;
  max-width: min(34rem, 100%);
  overflow: hidden;
  color: #f0ecf8;
  font-size: 0.92rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-blog-row__slug {
  margin-top: 0.25rem;
  overflow: hidden;
  max-width: min(30rem, 100%);
  color: rgb(190 174 218 / 0.78);
  font-size: 0.75rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#blog-posts-table .admin-blog-row td:nth-child(2),
#blog-posts-table .admin-blog-row td:nth-child(3) {
  color: rgb(190 174 218 / 0.86) !important;
  font-size: 0.75rem !important;
  white-space: nowrap;
}

#blog-posts-table .admin-blog-row td:nth-child(4) {
  display: flex;
  justify-content: flex-end;
  gap: 0.45rem;
}

#blog-posts-table .admin-blog-row .btn-icon {
  width: 2rem !important;
  height: 2rem !important;
  border-radius: 0.7rem !important;
}

#blog-editor-view > .flex:first-child {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.15rem 1.25rem;
}

#blog-post-form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem !important;
  background: rgb(22 18 31 / 0.88) !important;
}

#blog-post-form details {
  overflow: hidden;
}

#blog-post-form details > summary {
  padding: 0.85rem 1rem;
  border-radius: 0.8rem;
  background: rgb(255 255 255 / 0.03);
}

@media (max-width: 1023px) {
  #section-blog .admin-blog-filters {
    grid-template-columns: minmax(0, 1fr);
  }

  #blog-posts-table tr.admin-blog-row {
    grid-template-columns: minmax(0, 1fr);
  }

  #blog-posts-table .admin-blog-row td:nth-child(4) {
    justify-content: flex-start;
    overflow-x: auto;
    padding-top: 0.25rem !important;
  }
}

@media (max-width: 640px) {
  #blog-list-view > .flex:first-child {
    padding: 1.1rem;
  }

  #blog-list-view > .flex:first-child > .flex {
    width: 100%;
  }

  .admin-blog-row__media {
    width: 3.4rem;
    height: 2.7rem;
    flex-basis: 3.4rem;
  }
}

/*
  Settings / SEO and Security next design step: align dense admin modules with
  the design template while preserving the existing forms, IDs and JS contracts.
*/

.settings-admin-shell,
.security-admin-shell {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.settings-admin-header,
.security-admin-header {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

.settings-admin-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.settings-admin-header__icon {
  display: inline-flex;
  width: 3rem;
  height: 3rem;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(var(--admin-primary) / 0.2);
  border-radius: 0.85rem;
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
}

.settings-admin-header__icon svg {
  width: 1.35rem;
  height: 1.35rem;
}

.settings-admin-tabs {
  display: inline-flex;
  max-width: 100%;
  align-items: center;
  gap: 0.25rem;
  overflow-x: auto;
  border: 1px solid rgb(232 68 122 / 0.13);
  border-radius: 0.9rem;
  background: rgb(22 18 31 / 0.88);
  padding: 0.25rem;
  scrollbar-width: thin;
}

.settings-admin-tab {
  display: inline-flex;
  min-height: 2.25rem;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.45rem;
  border: 1px solid transparent;
  border-radius: 0.7rem;
  color: rgb(190 174 218 / 0.92);
  font-size: 0.84rem;
  font-weight: 700;
  padding: 0.5rem 0.75rem;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.settings-admin-tab svg {
  width: 0.95rem;
  height: 0.95rem;
}

.settings-admin-tab:hover,
.settings-admin-tab:focus-visible {
  border-color: rgb(232 68 122 / 0.24);
  background: rgb(232 68 122 / 0.08);
  color: #f0ecf8;
  outline: none;
}

.settings-admin-tab--active {
  border-color: rgb(232 68 122 / 0.34);
  background: rgb(8 5 12 / 0.86);
  color: #f0ecf8;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.035);
}

#section-site-settings-title,
#section-security-title {
  margin: 0 !important;
  color: #f0ecf8 !important;
}

#settings-form-site,
#section-site-settings > .settings-admin-shell > .admin-card,
.security-admin-card {
  border-color: rgb(232 68 122 / 0.16) !important;
  background: rgb(22 18 31 / 0.88) !important;
}

#settings-form-site {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.25rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

#settings-form-site > .admin-card {
  margin: 0 !important;
  border-color: rgb(232 68 122 / 0.16) !important;
  background: rgb(22 18 31 / 0.88) !important;
  box-shadow: 0 18px 48px -46px rgb(232 68 122 / 0.58);
}

#settings-form-site > .settings-module-card[data-settings-panel~='seo'] {
  grid-column: span 6;
}

#settings-form-site > #seo-central-card,
#settings-form-site > .settings-module-card[data-settings-panel~='watermark'],
#settings-form-site > .settings-module-card--wide,
.settings-admin-shell[data-active-settings-tab='adult'] #settings-form-site > [data-settings-panel~='adult'] {
  grid-column: 1 / -1;
}

#settings-form-site > .settings-module-card--wide,
#settings-form-site > .settings-module-card--wide > *,
#settings-form-site [data-settings-panel~='api'] .admin-card,
#settings-form-site [data-settings-panel~='api'] .min-w-0 {
  min-width: 0;
}

#settings-form-site [data-settings-panel~='llms'] #llms-txt-content,
#settings-form-site [data-settings-panel~='api'] textarea,
#settings-form-site [data-settings-panel~='api'] input {
  max-width: 100%;
}

#settings-form-site [data-settings-panel~='llms'] #llms-txt-content {
  min-height: 22rem;
  overflow-wrap: normal;
  white-space: pre;
}

#settings-form-site [data-settings-panel~='api'] > .grid {
  width: 100%;
  min-width: 0;
}

#settings-form-site [data-settings-panel~='api'] #content-api-key-list article,
#settings-form-site [data-settings-panel~='api'] #content-api-key-secret-panel {
  overflow: hidden;
}

#settings-form-site [data-settings-panel~='api'] code,
#settings-form-site [data-settings-panel~='api'] dd,
#settings-form-site [data-settings-panel~='api'] p {
  overflow-wrap: anywhere;
}

#section-site-settings [data-settings-panel] {
  margin: 0 !important;
}

#settings-form-site > .admin-card:first-child,
#settings-form-site > #seo-central-card {
  width: 100%;
}

#section-site-settings > .settings-admin-shell > .admin-card {
  margin-top: 0 !important;
  border-radius: 1rem !important;
  box-shadow: 0 18px 48px -46px rgb(232 68 122 / 0.58);
}

#section-site-settings .border-b,
#section-security .border-b {
  border-color: rgb(232 68 122 / 0.14) !important;
}

#section-site-settings h3,
#section-security h3,
#section-site-settings h4,
#section-security h4 {
  color: #f0ecf8 !important;
  letter-spacing: 0 !important;
}

#section-site-settings .admin-card--panel,
#section-security .admin-card--panel,
#section-site-settings .admin-card--tile,
#section-security .admin-card--tile,
#section-security .security-mfa-placeholder {
  border-color: rgb(232 68 122 / 0.14) !important;
  background: rgb(18 14 28 / 0.72) !important;
}

#section-site-settings .admin-card--panel:hover,
#section-security .admin-card--panel:hover,
#section-site-settings .admin-card--tile:hover,
#section-security .admin-card--tile:hover {
  border-color: rgb(232 68 122 / 0.3) !important;
  background: rgb(30 24 40 / 0.68) !important;
}

#section-site-settings .field-outlined,
#section-security .field-outlined,
#section-site-settings .admin-select-md3,
#section-security .admin-select-md3,
#section-site-settings select:not(.ql-size):not(.ql-font),
#section-security select:not(.ql-size):not(.ql-font),
#section-site-settings textarea:not(.ql-editor),
#section-security textarea:not(.ql-editor) {
  border-color: rgb(232 68 122 / 0.18) !important;
  border-radius: 0.85rem !important;
  background: rgb(12 9 18 / 0.72) !important;
  color: #f0ecf8 !important;
}

#section-site-settings input[type='file'],
#section-themes input[type='file'],
#section-profile-appearance input[type='file'] {
  min-height: 3.15rem;
  border: 1px solid rgb(232 68 122 / 0.18) !important;
  border-radius: 0.85rem !important;
  background: rgb(12 9 18 / 0.72) !important;
  color: #f0ecf8 !important;
  padding: 0.55rem !important;
}

#section-site-settings input[type='file']::file-selector-button,
#section-themes input[type='file']::file-selector-button,
#section-profile-appearance input[type='file']::file-selector-button {
  margin-right: 0.85rem;
  border: 1px solid rgb(232 68 122 / 0.22);
  border-radius: 0.72rem;
  background: rgb(8 5 12 / 0.9);
  color: #f0ecf8;
  font-weight: 700;
  padding: 0.55rem 0.9rem;
}

#section-site-settings .field-outlined:focus,
#section-security .field-outlined:focus,
#section-site-settings .admin-select-md3:focus,
#section-security .admin-select-md3:focus,
#section-site-settings select:not(.ql-size):not(.ql-font):focus,
#section-security select:not(.ql-size):not(.ql-font):focus,
#section-site-settings textarea:not(.ql-editor):focus,
#section-security textarea:not(.ql-editor):focus {
  border-color: rgb(232 68 122 / 0.54) !important;
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.14) !important;
  outline: none !important;
}

.settings-admin-shell[data-active-settings-tab='adult'] [data-settings-panel~='adult'] > .border-b,
.settings-admin-shell[data-active-settings-tab='adult'] [data-settings-panel~='adult'] > .space-y-6 > :not([data-settings-adult-fields]) {
  display: none !important;
}

.settings-admin-shell[data-active-settings-tab='adult'] [data-settings-adult-fields] {
  margin: 0 !important;
}

.settings-admin-shell:not([data-active-settings-tab='adult']) [data-settings-adult-fields] {
  display: none !important;
}

.seo-central-stack {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1rem;
}

.seo-central-stack > .admin-card--panel {
  grid-column: span 6;
  margin: 0 !important;
}

.seo-central-stack > .admin-card--panel:first-child,
#indexnow-card,
#coverage-dashboard-card,
.seo-central-stack > .admin-card--panel:last-child {
  grid-column: 1 / -1;
}

#seo-robots-content {
  min-height: 13rem;
  font-size: 0.78rem !important;
  line-height: 1.55 !important;
}

#coverage-dashboard-card .admin-card--tile p:last-child,
#coverage-dashboard-card .admin-card--panel p:last-child {
  color: #f0ecf8 !important;
  font-weight: 700;
}

#section-site-settings table {
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border-radius: 0.85rem;
}

#section-site-settings thead {
  background: rgb(12 9 18 / 0.78) !important;
}

#section-site-settings tbody tr {
  background: rgb(18 14 28 / 0.58);
}

.indexnow-log-footer {
  display: flex;
  min-height: 2.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.indexnow-log-footer #indexnow-logs-load-more.hidden {
  display: none !important;
}

.seo-operational-note {
  border-style: dashed !important;
}

#section-themes .themes-layout-card .theme-workspace-heading {
  align-items: center;
}

#section-themes .themes-layout-card #layout-effect-select,
#section-themes .themes-layout-card select,
#section-themes .themes-layout-card input[type='file'] {
  border-color: rgb(var(--admin-border-soft) / 0.18) !important;
  border-radius: 0.75rem !important;
  background: rgb(var(--admin-panel-2) / 0.58) !important;
  color: rgb(var(--admin-text) / 1) !important;
}

#section-themes .themes-layout-card #layout-effect-preview-container {
  min-height: 18rem;
  border-color: rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 0.85rem !important;
  background: rgb(var(--admin-panel-2) / 0.5) !important;
}

.security-admin-card {
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.security-admin-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.25rem !important;
}

#section-security #admin-email-form,
#section-security #password-update-form {
  grid-column: span 6;
  margin: 0 !important;
  border-color: rgb(232 68 122 / 0.16) !important;
  border-radius: 1rem !important;
  background: rgb(22 18 31 / 0.88) !important;
  box-shadow: 0 18px 48px -46px rgb(232 68 122 / 0.58);
}

#section-security .security-mfa-placeholder {
  grid-column: 1 / -1;
  border-style: solid !important;
  border-radius: 1rem !important;
  padding: 1.2rem !important;
}

#section-security .password-toggle-btn {
  right: 0.55rem;
  color: rgb(190 174 218 / 0.86) !important;
}

#section-security .password-toggle-btn:hover,
#section-security .password-toggle-btn:focus-visible {
  color: #f0ecf8 !important;
  background: rgb(232 68 122 / 0.12) !important;
}

@media (max-width: 1180px) {
  #settings-form-site > .admin-card,
  .seo-central-stack > .admin-card--panel,
  #admin-email-form,
  #password-update-form {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .settings-admin-header__icon {
    display: none;
  }

  .settings-admin-header,
  .security-admin-header,
  #settings-form-site > .admin-card,
  #section-site-settings > .settings-admin-shell > .admin-card,
  #admin-email-form,
  #password-update-form,
  #section-security .security-mfa-placeholder {
    padding: 1rem !important;
  }

  .seo-central-stack,
  .security-admin-grid {
    gap: 0.85rem !important;
  }

  .indexnow-log-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .indexnow-log-footer .btn-pill {
    width: 100%;
  }
}

/*
  Dashboard and Profile & Appearance: mirror the design template cards, spacing
  and quick actions while keeping existing admin form contracts intact.
*/

.admin-home-dashboard,
.profile-appearance-shell {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/*
  Full-width admin canvas: the template uses the available horizontal space
  after the sidebar instead of centering modules inside a narrow column.
*/

.admin-main__content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 1.75rem 2rem 3rem !important;
}

.admin-section,
.admin-section > *,
.admin-home-dashboard,
.profile-appearance-shell,
.links-admin-shell,
.content-manager-shell,
.polls-admin-shell,
.blog-admin-shell,
.settings-admin-shell,
#section-themes > .space-y-6,
.security-admin-shell {
  width: 100%;
  max-width: none !important;
}

.profile-photo-card,
.profile-identity-card,
.profile-bio-card,
.profile-theme-card,
.admin-dashboard-stat,
.admin-dashboard-card {
  width: 100%;
}

.admin-home-dashboard__header,
.profile-appearance-header {
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.88);
  padding: 1.35rem 1.5rem;
  box-shadow: 0 18px 48px -42px rgb(232 68 122 / 0.62);
}

.links-admin-shell,
.content-manager-shell,
.polls-admin-shell,
.blog-admin-shell,
.settings-admin-shell,
#section-themes > .space-y-6,
.security-admin-shell {
  width: 100%;
  max-width: none;
}

.links-admin-shell > .flex:first-child,
.content-manager-header,
.polls-admin-header,
.blog-admin-shell > [data-blog-view="list"] > .flex:first-child,
.settings-admin-header,
#section-themes > .space-y-6 > #section-themes-title,
.security-admin-header {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#section-links-title,
#section-content-manager-title,
#section-polls-title,
#section-blog-title,
#section-site-settings-title,
#section-themes-title,
#section-security-title {
  color: #f0ecf8 !important;
  font-family: var(--font-display, 'Cormorant Garamond', serif);
  font-size: clamp(1.65rem, 1.28rem + 0.9vw, 2rem) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.links-admin-shell > p,
.content-manager-subtitle,
.polls-admin-subtitle,
.blog-admin-shell > [data-blog-view="list"] > .flex:first-child p,
.settings-admin-header p,
.security-admin-header p {
  color: rgb(190 174 218 / 0.92) !important;
  font-size: 0.86rem;
}

#section-dashboard-title,
#section-profile-appearance-title {
  margin: 0 !important;
  color: #f0ecf8 !important;
}

.admin-home-dashboard__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.admin-dashboard-stat,
.admin-dashboard-card,
.profile-identity-card,
.profile-theme-card {
  border: 1px solid rgb(232 68 122 / 0.16) !important;
  border-radius: 1rem !important;
  background: rgb(22 18 31 / 0.88) !important;
  box-shadow: 0 18px 48px -46px rgb(232 68 122 / 0.58);
}

.admin-dashboard-stat {
  min-height: 10.5rem;
  padding: 1.25rem;
}

.admin-dashboard-stat__icon {
  display: inline-flex;
  width: 2.25rem;
  height: 2.25rem;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.9rem;
  border-radius: 0.85rem;
}

.admin-dashboard-stat__icon svg {
  width: 1.1rem;
  height: 1.1rem;
}

.admin-dashboard-stat__icon--pink {
  background: rgb(232 68 122 / 0.14);
  color: #e8447a;
}

.admin-dashboard-stat__icon--purple {
  background: rgb(156 95 199 / 0.16);
  color: #9c5fc7;
}

.admin-dashboard-stat__icon--blue {
  background: rgb(91 141 238 / 0.16);
  color: #5b8dee;
}

.admin-dashboard-stat__icon--green {
  background: rgb(38 166 154 / 0.16);
  color: #26a69a;
}

.admin-dashboard-stat strong {
  display: block;
  color: #f0ecf8;
  font-size: 1.65rem;
  font-weight: 800;
  line-height: 1;
}

.admin-dashboard-stat > span:not(.admin-dashboard-stat__icon) {
  display: block;
  margin-top: 0.35rem;
  color: rgb(190 174 218 / 0.86);
  font-size: 0.8rem;
}

.admin-dashboard-stat small {
  display: block;
  margin-top: 0.45rem;
  color: #e8447a;
  font-size: 0.72rem;
}

.admin-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
  gap: 1rem;
}

.admin-dashboard-card {
  padding: 1.25rem;
}

.admin-dashboard-card__eyebrow {
  margin-bottom: 0.9rem;
  color: rgb(190 174 218 / 0.9);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.admin-dashboard-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.admin-dashboard-action {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: 0.55rem;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.85rem;
  background: rgb(18 14 28 / 0.72);
  color: #f0ecf8;
  font-size: 0.85rem;
  font-weight: 700;
  padding: 0.65rem 0.9rem;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.admin-dashboard-action:hover,
.admin-dashboard-action:focus-visible {
  border-color: rgb(232 68 122 / 0.36);
  background: rgb(30 24 40 / 0.72);
  transform: translateY(-1px);
  outline: none;
}

.admin-dashboard-action svg {
  width: 0.95rem;
  height: 0.95rem;
  color: #e8447a;
}

.admin-dashboard-activity {
  display: grid;
  gap: 0.7rem;
}

.admin-dashboard-activity > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid rgb(232 68 122 / 0.12);
  padding: 0.55rem 0;
}

.admin-dashboard-activity > div:last-child {
  border-bottom: 0;
}

.admin-dashboard-activity span {
  color: rgb(190 174 218 / 0.86);
  font-size: 0.78rem;
}

.admin-dashboard-activity strong {
  max-width: 14rem;
  overflow: hidden;
  color: #f0ecf8;
  font-size: 0.85rem;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.profile-identity-card,
.profile-theme-card {
  margin: 0 !important;
}

.profile-identity-card > .border-b,
.profile-theme-card > .border-b {
  border-color: rgb(232 68 122 / 0.14) !important;
}

.profile-identity-card h3,
.profile-theme-card h3 {
  color: #f0ecf8 !important;
  font-family: var(--font-display, 'Cormorant Garamond', serif);
  font-size: clamp(1.55rem, 1.2rem + 0.9vw, 2rem) !important;
  line-height: 1.1;
}

#section-profile-appearance .admin-card--panel {
  border-color: rgb(232 68 122 / 0.14) !important;
  border-radius: 1rem !important;
  background: rgb(18 14 28 / 0.72) !important;
}

#section-profile-appearance .field-outlined,
#section-profile-appearance input:not([type='hidden']):not([type='checkbox']):not([type='radio']):not([type='color']):not([type='range']):not([type='file']),
#section-profile-appearance textarea:not(.ql-editor),
#section-profile-appearance select:not(.ql-size):not(.ql-font):not(.ql-header):not(.ql-color):not(.ql-background):not(.ql-align) {
  border-color: rgb(232 68 122 / 0.18) !important;
  border-radius: 0.85rem !important;
  background: rgb(12 9 18 / 0.72) !important;
  color: #f0ecf8 !important;
}

#section-profile-appearance .profile-image-settings {
  align-items: center;
}

#section-profile-appearance #profile-image-preview {
  border: 3px solid transparent !important;
  background:
    linear-gradient(rgb(18 14 28), rgb(18 14 28)) padding-box,
    linear-gradient(135deg, #e8447a, #9c5fc7, #57001d) border-box !important;
  box-shadow: 0 18px 52px -28px rgb(232 68 122 / 0.9);
}

.profile-theme-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.profile-theme-preset {
  position: relative;
  display: inline-flex;
  min-width: 6.5rem;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
  border: 2px solid transparent;
  border-radius: 1rem;
  background: transparent;
  color: rgb(190 174 218 / 0.86);
  padding: 0.3rem;
  transition: border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.profile-theme-preset:hover,
.profile-theme-preset:focus-visible {
  border-color: rgb(232 68 122 / 0.28);
  color: #f0ecf8;
  outline: none;
  transform: translateY(-1px);
}

.profile-theme-preset--active {
  border-color: #e8447a;
  color: #f0ecf8;
}

.profile-theme-preset--active::after {
  content: "";
  position: absolute;
  top: -0.35rem;
  right: -0.35rem;
  width: 1.2rem;
  height: 1.2rem;
  border: 2px solid rgb(22 18 31);
  border-radius: 999px;
  background:
    linear-gradient(135deg, transparent 44%, #fff 44% 56%, transparent 56%) 35% 50% / 45% 45% no-repeat,
    linear-gradient(45deg, transparent 48%, #fff 48% 60%, transparent 60%) 57% 54% / 55% 55% no-repeat,
    #e8447a;
}

.profile-theme-preset__preview {
  position: relative;
  display: inline-flex;
  width: 5rem;
  height: 3.5rem;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.85rem;
  background:
    linear-gradient(135deg, var(--profile-theme-surface, #0d0b12) 0 54%, var(--profile-theme-secondary, #2c2c2c) 54% 100%);
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.04);
}

.profile-theme-preset__preview span {
  display: block;
  width: 2rem;
  height: 0.38rem;
  border-radius: 999px;
  background: var(--profile-theme-primary, #e8447a);
  box-shadow: 0 0 18px color-mix(in srgb, var(--profile-theme-primary, #e8447a) 56%, transparent);
}

.profile-theme-preset__preview i {
  position: absolute;
  width: 0.62rem;
  height: 0.62rem;
  margin: 1.25rem 0 0 2.5rem;
  border-radius: 999px;
  background: var(--profile-theme-text, #e0e0e0);
  opacity: 0.9;
}

.profile-theme-preset__label {
  color: currentColor;
  font-size: 0.74rem;
  font-weight: 700;
}

@media (max-width: 1180px) {
  .admin-home-dashboard__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-dashboard-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  .admin-home-dashboard__header,
  .profile-appearance-header,
  .admin-dashboard-card,
  .admin-dashboard-stat,
  .profile-identity-card,
  .profile-theme-card {
    padding: 1rem !important;
  }

  .admin-home-dashboard__stats {
    grid-template-columns: minmax(0, 1fr);
  }

  .admin-dashboard-quick-actions,
  .profile-theme-presets {
    flex-direction: column;
  }

  .admin-dashboard-action,
  .profile-theme-preset {
    width: 100%;
  }

  .admin-dashboard-activity > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.25rem;
  }

  .admin-dashboard-activity strong {
    max-width: 100%;
    text-align: left;
  }
}

/*
  Admin dashboard/profile refinement: section titles live on the page canvas,
  while only functional groups are rendered as cards, matching the template.
*/

.admin-home-dashboard__header,
.profile-appearance-header {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.admin-home-dashboard__header p,
.profile-appearance-header p {
  margin-top: 0.35rem;
  color: rgb(190 174 218 / 0.92) !important;
  font-size: 0.86rem;
}

#section-dashboard-title,
#section-profile-appearance-title {
  font-family: var(--font-display, 'Cormorant Garamond', serif);
  font-size: clamp(1.65rem, 1.28rem + 0.9vw, 2rem) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.profile-settings-form {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.profile-photo-card,
.profile-identity-card,
.profile-bio-card,
.profile-theme-card {
  border: 1px solid rgb(232 68 122 / 0.16) !important;
  border-radius: 1rem !important;
  background: rgb(22 18 31 / 0.88) !important;
  box-shadow: 0 18px 48px -46px rgb(232 68 122 / 0.58) !important;
}

.profile-photo-card__content {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.profile-card-eyebrow,
.profile-theme-card h3 {
  margin: 0;
  color: rgb(190 174 218 / 0.94) !important;
  font-family: var(--font-body, 'Montserrat', sans-serif) !important;
  font-size: 0.76rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

.profile-theme-card > .border-b {
  margin-bottom: 1.35rem !important;
  padding-bottom: 1rem !important;
  border-bottom-color: rgb(232 68 122 / 0.12) !important;
}

.profile-theme-card > .border-b p {
  color: rgb(190 174 218 / 0.76) !important;
  font-size: 0.82rem;
}

#section-profile-appearance .profile-image-settings {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center !important;
  gap: 1.8rem !important;
}

#section-profile-appearance #profile-image-preview {
  --profile-image-preview-size: 9rem !important;
  width: var(--profile-image-preview-size) !important;
  height: var(--profile-image-preview-size) !important;
  margin: 0 !important;
  border-width: 3px !important;
  box-shadow:
    0 0 0 3px rgb(232 68 122 / 0.08),
    0 18px 42px -22px rgb(232 68 122 / 0.88) !important;
}

#settings-form-geral .profile-image-controls {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.8rem;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

#section-profile-appearance .profile-image-controls label,
#section-profile-appearance .profile-bio-card label {
  color: rgb(190 174 218 / 0.95) !important;
  font-size: 0.82rem;
  font-weight: 600;
}

#section-profile-appearance input[type='file'].field-outlined {
  min-height: 2.8rem;
  padding: 0.45rem 0.75rem !important;
  color: rgb(240 236 248 / 0.9) !important;
}

#section-profile-appearance input[type='file'].field-outlined::file-selector-button {
  margin-right: 0.85rem;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.75rem;
  background: rgb(18 14 28 / 0.92);
  color: #f0ecf8;
  font-weight: 800;
}

#section-profile-appearance #profile-image-remove {
  border-radius: 0.75rem;
  color: #ff6b7c;
  letter-spacing: 0;
  text-transform: none;
}

.profile-identity-card .field-outlined-wrap:last-child,
.profile-bio-card .space-y-2,
.profile-photo-card .space-y-2 {
  margin-bottom: 0 !important;
}

.profile-bio-card .flex.items-center.justify-between {
  margin-bottom: 0.75rem;
}

@media (max-width: 760px) {
  #section-profile-appearance .profile-image-settings {
    grid-template-columns: minmax(0, 1fr);
  }

  #section-profile-appearance #profile-image-preview {
    margin-inline: auto !important;
  }
}

/*
  P1 release hardening: deterministic media fallbacks, compact archive, and
  containment for rich post content.
*/

.image-fallback-visual {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at 35% 25%, rgb(232 68 122 / 0.18), transparent 45%),
    rgb(22 18 31 / 0.96);
  color: rgb(190 174 218 / 0.82);
  pointer-events: none;
}

.image-fallback-visual svg {
  width: clamp(1.5rem, 32%, 3rem);
  height: clamp(1.5rem, 32%, 3rem);
}

[data-image-state='fallback'] > .image-fallback-visual {
  display: flex;
}

[data-image-state='fallback'] > img {
  visibility: hidden;
}

.image-fallback-visual--round {
  border-radius: 999px;
}

.public-profile-image-frame,
.public-blog-card__media,
.home-album-tile,
.swiper-slide {
  position: relative;
}

html[data-page-variant='blog-archive'] main {
  padding-top: 1.25rem !important;
}

html[data-page-variant='blog-archive'] #public-home-shell > header {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  margin: 1rem 0 1.5rem !important;
  text-align: left;
}

html[data-page-variant='blog-archive'] #profile-home-link {
  width: 4.5rem !important;
  height: 4.5rem !important;
  margin: 0 !important;
}

html[data-page-variant='blog-archive'] #profileName {
  margin: 0 !important;
  font-size: 2rem !important;
  line-height: 1.1 !important;
}

html[data-page-variant='blog-archive'] #bio {
  display: none !important;
}

html[data-page-variant='blog-archive'] #blog-posts-section {
  margin-top: 1.5rem !important;
}

html[data-page-variant='blog-archive'] .public-blog-archive-title {
  margin-bottom: 1rem !important;
}

html[data-page-variant='blog-archive'] .public-blog-card {
  min-height: 7rem !important;
  padding: 0.75rem !important;
}

html[data-page-variant='blog-archive'] .public-blog-card__media--archive {
  width: 5.5rem !important;
  min-height: 5.5rem !important;
}

html[data-app-context='post'] .public-post-content {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

html[data-app-context='post'] .public-post-content > *,
html[data-app-context='post'] .public-post-content [style*='width'] {
  max-width: 100% !important;
  box-sizing: border-box;
}

html[data-app-context='post'] .public-post-content img,
html[data-app-context='post'] .public-post-content video {
  height: auto;
}

html[data-app-context='post'] .public-post-content pre {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre;
}

html[data-app-context='post'] .public-post-content table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  white-space: nowrap;
}

.admin-profile-image-fallback,
.admin-image-fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgb(190 174 218 / 0.82);
}

.admin-profile-image-fallback svg {
  width: 3rem;
  height: 3rem;
}

.admin-image-fallback {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 35% 25%, rgb(232 68 122 / 0.16), transparent 45%),
    rgb(22 18 31 / 0.94);
  pointer-events: none;
}

.admin-image-fallback svg {
  width: 1.5rem;
  height: 1.5rem;
}

.admin-album-photo > .admin-image-fallback {
  bottom: auto;
  aspect-ratio: 4 / 3;
}

.admin-blog-row__media,
.admin-album-row__thumb,
.admin-gallery-photo-card,
.admin-album-photo {
  position: relative;
}

@media (max-width: 640px) {
  html[data-page-variant='blog-archive'] #public-home-shell > header {
    grid-template-columns: 3.75rem minmax(0, 1fr);
    margin-top: 0.5rem !important;
  }

  html[data-page-variant='blog-archive'] #profile-home-link {
    width: 3.75rem !important;
    height: 3.75rem !important;
  }

  html[data-page-variant='blog-archive'] #profileName {
    font-size: 1.65rem !important;
  }

  html[data-page-variant='blog-archive'] .public-blog-card__media--archive {
    width: 4.75rem !important;
    min-height: 5.5rem !important;
  }
}

/* Blog editor interaction refinements: stable toolbar, font/size controls,
   proportional media resizing and public-like preview. */

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-group='heading'] .ql-picker-label {
  color: rgb(190 174 218 / 0.94) !important;
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-group='heading'] .ql-picker-label::before {
  color: rgb(190 174 218 / 0.94) !important;
  content: 'H' !important;
  opacity: 1 !important;
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-group='heading'] .ql-picker-label svg {
  display: block !important;
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-group='heading'] .ql-picker-options {
  min-width: 8.75rem;
  border: 1px solid rgb(232 68 122 / 0.24) !important;
  border-radius: 0.55rem;
  background: rgb(23 18 31 / 0.99) !important;
  padding: 0.35rem;
  box-shadow: 0 18px 42px -18px rgb(0 0 0 / 0.92);
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-group='heading'] .ql-picker-item {
  width: 100%;
  border-radius: 0.35rem;
  color: #f0ecf8 !important;
  padding: 0.35rem 0.5rem;
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-group='heading'] .ql-picker-item:hover {
  background: rgb(232 68 122 / 0.12);
  color: #ff75a4 !important;
}

#section-blog #blog-post-form .blog-editor-font-control,
#section-blog #blog-post-form .blog-editor-size-control {
  display: inline-flex;
  height: 1.85rem;
  align-items: center;
  gap: 0.25rem;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.38rem;
  background: rgb(10 8 15 / 0.54);
  padding-left: 0.42rem;
}

#section-blog #blog-post-form .blog-editor-font-control__label,
#section-blog #blog-post-form .blog-editor-size-control__label {
  color: #ff75a4;
  font-size: 0.64rem;
  font-weight: 850;
}

#section-blog #blog-post-form .blog-editor-font-control__select,
#section-blog #blog-post-form .blog-editor-size-control__select {
  height: 1.75rem;
  border: 0;
  border-left: 1px solid rgb(232 68 122 / 0.14);
  background: rgb(22 18 31 / 0.96);
  color: #f0ecf8;
  padding: 0 1.25rem 0 0.38rem;
  font-size: 0.66rem;
  outline: none;
}

#section-blog #blog-post-form .blog-editor-font-control__select {
  width: 6.4rem;
}

#section-blog #blog-post-form .blog-editor-size-control__select {
  width: 4.6rem;
}

#section-blog #blog-post-form .blog-editor-size-control__input {
  width: 3.8rem;
  height: 1.75rem;
  border: 0;
  border-left: 1px solid rgb(232 68 122 / 0.14);
  background: transparent;
  color: #f0ecf8;
  padding: 0 0.35rem;
  font-size: 0.66rem;
  outline: none;
}

#section-blog #blog-post-form .blog-editor-size-control__apply {
  display: none !important;
}

#section-blog #blog-post-form .blog-editor-utilitybar,
#section-blog #blog-post-form .blog-editor-utilitybar[data-blog-toolbar-superseded='true'] {
  display: none !important;
}

#section-blog #blog-post-form .blog-editor-mode-tabs {
  min-width: 5.4rem;
  margin-left: auto;
  justify-content: flex-end;
}

#section-blog #blog-post-form [data-blog-editor-toggle='preview'] {
  display: none !important;
}

#section-blog #blog-post-form .blog-editor-toolbar-shell {
  min-height: 3.05rem;
  padding-inline: 1rem;
}

#section-blog #blog-post-form .blog-media-resize-host {
  position: relative;
}

.blog-media-resize-overlay {
  position: absolute;
  z-index: 60;
  pointer-events: none;
  border: 2px solid #e8447a;
  box-shadow: 0 0 0 1px rgb(255 255 255 / 0.44), 0 8px 26px -18px rgb(232 68 122 / 0.9);
}

.blog-media-resize-overlay.hidden {
  display: none !important;
}

.blog-media-resize-overlay__measurement {
  position: absolute;
  bottom: 0.5rem;
  left: 0.5rem;
  min-width: -moz-max-content;
  min-width: max-content;
  border: 1px solid rgb(232 68 122 / 0.28);
  border-radius: 0.35rem;
  background: rgb(13 10 18 / 0.94);
  color: #fff;
  padding: 0.22rem 0.42rem;
  font-family: var(--font-body, 'Montserrat', sans-serif);
  font-size: 0.65rem;
  font-weight: 750;
  line-height: 1;
  box-shadow: 0 8px 24px -16px rgb(0 0 0 / 0.95);
}

.blog-media-controls {
  position: absolute;
  top: 0.45rem;
  right: 0.45rem;
  display: flex;
  max-width: calc(100% - 0.9rem);
  align-items: center;
  gap: 0.22rem;
  pointer-events: auto;
  border: 1px solid rgb(255 255 255 / 0.14);
  border-radius: 0.65rem;
  background: rgb(13 10 18 / 0.94);
  padding: 0.25rem;
  box-shadow: 0 12px 30px -18px rgb(0 0 0 / 0.95);
}

.blog-media-controls__button {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0.48rem;
  background: transparent;
  color: #fff;
  cursor: pointer;
  padding: 0;
  transition: background-color 140ms ease, color 140ms ease, transform 140ms ease;
}

.blog-media-controls__button:hover,
.blog-media-controls__button:focus-visible,
.blog-media-controls__button[aria-pressed='true'] {
  outline: 0;
  background: rgb(232 68 122 / 0.22);
  color: #ff90b5;
}

.blog-media-controls__button:active {
  transform: scale(0.94);
}

.blog-media-controls__button[data-media-action='drag'] {
  cursor: grab;
  touch-action: none;
}

.blog-media-controls__button[data-media-action='drag'].is-dragging {
  cursor: grabbing;
}

.blog-media-controls__button--remove:hover,
.blog-media-controls__button--remove:focus-visible {
  background: rgb(239 68 68 / 0.25);
  color: #fca5a5;
}

.blog-media-controls__button svg {
  width: 1rem;
  height: 1rem;
  pointer-events: none;
}

.blog-media-drop-indicator {
  position: absolute;
  z-index: 65;
  height: 0.2rem;
  pointer-events: none;
  border-radius: 999px;
  background: #e8447a;
  box-shadow: 0 0 0 1px rgb(255 255 255 / 0.5), 0 0 16px rgb(232 68 122 / 0.7);
}

.blog-media-drop-indicator.hidden,
.blog-media-resize-handle.hidden,
.blog-media-resize-overlay__measurement.hidden,
.blog-media-controls__button.hidden {
  display: none !important;
}

.blog-media-resize-handle {
  position: absolute;
  width: 0.72rem;
  height: 0.72rem;
  pointer-events: auto;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #e8447a;
  padding: 0;
  box-shadow: 0 2px 8px rgb(0 0 0 / 0.45);
}

.blog-media-resize-handle--nw { top: -0.43rem; left: -0.43rem; cursor: nwse-resize; }

.blog-media-resize-handle--ne { top: -0.43rem; right: -0.43rem; cursor: nesw-resize; }

.blog-media-resize-handle--sw { bottom: -0.43rem; left: -0.43rem; cursor: nesw-resize; }

.blog-media-resize-handle--se { right: -0.43rem; bottom: -0.43rem; cursor: nwse-resize; }

#section-blog #blog-post-form .blog-editor__container .ql-editor img.is-active {
  outline: 0 !important;
  box-shadow: none !important;
}

#section-blog #blog-post-form .blog-editor__container .ql-editor > .is-dragging {
  opacity: 0.55;
}

#section-blog #blog-post-form .blog-editor-public-preview {
  width: min(100%, 45rem);
  min-height: 31rem !important;
  border-radius: 0 !important;
  background:
    linear-gradient(90deg, rgb(0 0 0 / 0.18), rgb(0 0 0 / 0.42) 14%, rgb(0 0 0 / 0.42) 86%, rgb(0 0 0 / 0.18)),
    rgb(9 7 13 / 0.68) !important;
  color: #f1edf6;
}

#section-blog #blog-post-form .blog-editor-public-preview img,
#section-blog #blog-post-form .blog-editor-public-preview video,
#section-blog #blog-post-form .blog-editor-public-preview iframe,
#section-blog #blog-post-form .blog-editor-public-preview .blog-embed__wrapper {
  max-width: 100%;
}

#section-blog #blog-post-form .blog-editor-public-preview figure,
#section-blog #blog-post-form .blog-editor-public-preview .blog-embed {
  margin-block: 1.4rem;
}

#section-blog #blog-post-form .blog-editor-settings-group__content {
  grid-template-columns: minmax(0, 1fr) !important;
}

#section-blog #blog-post-form .blog-publication-state {
  width: 100%;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#section-blog #blog-post-form .blog-publication-state__button {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 0.24rem;
  overflow: hidden;
  padding-inline: 0.2rem;
  white-space: nowrap;
}

#section-blog #blog-post-form .blog-publication-state__button svg {
  width: 0.72rem;
  height: 0.72rem;
  flex: 0 0 0.72rem;
}

#section-blog #blog-post-form .blog-publication-state__button span {
  min-width: 0;
  overflow: hidden;
  font-size: 0.59rem;
  text-overflow: ellipsis;
}

#section-blog #blog-post-form .blog-schedule-field,
#section-blog #blog-post-form .blog-schedule-field .field-outlined {
  width: 100%;
  min-width: 0;
}

#section-blog #blog-post-form .blog-editor-topbar {
  gap: 1.5rem;
  padding: 0.85rem 1.5rem;
}

#section-blog #blog-post-form .blog-editor-topbar__actions {
  margin-left: auto;
}

@media (max-width: 900px) {
  #section-blog #blog-post-form .blog-editor-toolbar-shell {
    overflow: hidden;
  }

  #section-blog #blog-post-form .blog-editor-toolbar {
    padding-bottom: 0.2rem !important;
  }
}

/* Blog publication sidebar and featured-image preview. */

#section-blog #blog-post-form .blog-featured-image-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.2);
  border-radius: 0.55rem;
  background: rgb(8 6 12 / 0.86);
}

#section-blog #blog-post-form .blog-featured-image-preview.hidden {
  display: none !important;
}

#section-blog #blog-post-form .blog-featured-image-preview img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#section-blog #blog-post-form .blog-featured-image-preview__remove {
  position: absolute;
  top: 0.45rem;
  right: 0.45rem;
  display: inline-flex;
  width: 1.9rem;
  height: 1.9rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(255 255 255 / 0.2);
  border-radius: 0.45rem;
  background: rgb(9 6 12 / 0.82);
  color: #ff7c94;
  backdrop-filter: blur(8px);
}

#section-blog #blog-post-form .blog-featured-image-preview__remove:hover,
#section-blog #blog-post-form .blog-featured-image-preview__remove:focus-visible {
  border-color: rgb(255 91 124 / 0.62);
  background: rgb(94 17 43 / 0.88);
  color: #fff;
  outline: none;
}

#section-blog #blog-post-form .blog-featured-image-preview__remove svg {
  width: 0.9rem;
  height: 0.9rem;
}

#section-blog #blog-post-form #blog-post-featured-image-feedback {
  margin: 0;
  color: rgb(190 174 218 / 0.68) !important;
  line-height: 1.45;
}

#section-blog #blog-post-form input[type='datetime-local'] {
  color-scheme: dark;
}

#section-blog #blog-post-form input[type='datetime-local']::-webkit-calendar-picker-indicator {
  opacity: 1;
  filter: invert(1) brightness(1.8);
  cursor: pointer;
}

#section-blog #blog-post-form .blog-publication-state {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.25rem;
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 0.55rem;
  background: rgb(9 7 14 / 0.58);
  padding: 0.25rem;
}

#section-blog #blog-post-form .blog-publication-state__button {
  min-height: 2rem;
  border: 0;
  border-radius: 0.38rem;
  background: transparent;
  color: rgb(190 174 218 / 0.76);
  padding: 0.35rem 0.3rem;
  font-size: 0.66rem;
  font-weight: 750;
  transition: background-color 150ms ease, color 150ms ease, box-shadow 150ms ease;
}

#section-blog #blog-post-form .blog-publication-state__button:hover,
#section-blog #blog-post-form .blog-publication-state__button:focus-visible {
  color: #f0ecf8;
  outline: none;
}

#section-blog #blog-post-form .blog-publication-state__button[aria-pressed='true'] {
  background: rgb(232 68 122 / 0.18);
  color: #ff75a4;
  box-shadow: inset 0 0 0 1px rgb(232 68 122 / 0.26);
}

#section-blog #blog-post-form .blog-publication-state__button[data-value='published'][aria-pressed='true'] {
  background: rgb(42 183 117 / 0.15);
  color: #5ee5a5;
  box-shadow: inset 0 0 0 1px rgb(42 183 117 / 0.28);
}

#section-blog #blog-post-form .blog-publication-state__button[data-value='scheduled'][aria-pressed='true'] {
  background: rgb(232 68 122 / 0.16);
  color: #ff75a4;
}

#section-blog #blog-post-form .blog-publication-hint {
  margin: 0;
  color: rgb(190 174 218 / 0.68);
  font-size: 0.68rem;
  line-height: 1.45;
}

#section-blog #blog-post-form .blog-schedule-field[data-status='draft'] {
  opacity: 0.58;
}

/* Ordered rich-text toolbar delivered as explicit functional groups. */

#section-blog #blog-post-form .blog-editor-toolbar {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center;
  gap: 0;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: thin;
  scrollbar-color: rgb(232 68 122 / 0.32) transparent;
}

#section-blog #blog-post-form .blog-editor-toolbar__group {
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.05rem;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#section-blog #blog-post-form .blog-editor-toolbar__separator {
  width: 1px;
  height: 1.25rem;
  flex: 0 0 1px;
  margin: 0 0.3rem;
  background: rgb(232 68 122 / 0.18);
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-control] {
  flex: 0 0 auto;
}

#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-control='emoji'] svg,
#section-blog #blog-post-form .blog-editor-toolbar [data-blog-toolbar-control='featured-gallery'] svg {
  width: 0.95rem;
  height: 0.95rem;
  stroke: currentColor;
}

#section-blog #blog-post-form .blog-editor-toolbar button.ql-emoji::before,
#section-blog #blog-post-form .blog-editor-toolbar button.ql-featuredGallery::before {
  display: none !important;
  content: none !important;
}

#section-blog #blog-post-form .blog-editor-toolbar__group--gallery [data-blog-toolbar-control='featured-gallery'] {
  background: rgb(232 68 122 / 0.08);
  color: #ff75a4 !important;
}

#section-blog #blog-post-form .blog-editor-size-control {
  display: inline-flex;
  height: 1.85rem;
  align-items: center;
  gap: 0.25rem;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.38rem;
  background: rgb(10 8 15 / 0.54);
  padding: 0 0.18rem 0 0.42rem;
}

#section-blog #blog-post-form .blog-editor-size-control__label {
  color: #ff75a4;
  font-size: 0.66rem;
  font-weight: 850;
  line-height: 1;
}

#section-blog #blog-post-form .blog-editor-size-control__input {
  width: 3.65rem;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #f0ecf8;
  padding: 0.2rem;
  font-size: 0.68rem;
  outline: none;
}

#section-blog #blog-post-form .blog-editor-size-control__apply {
  display: inline-flex;
  width: 1.45rem;
  height: 1.45rem;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0.28rem;
  background: rgb(232 68 122 / 0.14);
  color: #ff75a4;
  padding: 0;
  font-size: 0.7rem;
  font-weight: 900;
}

#section-blog #blog-post-form .blog-editor-size-control__apply:hover,
#section-blog #blog-post-form .blog-editor-size-control__apply:focus-visible {
  background: #e8447a;
  color: #fff;
  outline: none;
}

.rich-text-emoji-picker {
  position: absolute;
  z-index: 13000;
  width: min(18rem, calc(100vw - 1.5rem));
  border: 1px solid rgb(232 68 122 / 0.28);
  border-radius: 0.75rem;
  background: rgb(23 18 31 / 0.98);
  color: #f0ecf8;
  padding: 0.75rem;
  box-shadow: 0 18px 48px -18px rgb(0 0 0 / 0.92);
  backdrop-filter: blur(16px);
}

.rich-text-emoji-picker.hidden {
  display: none !important;
}

.rich-text-emoji-picker__title {
  margin: 0 0 0.55rem;
  color: rgb(190 174 218 / 0.76);
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.rich-text-emoji-picker__grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.2rem;
  max-height: 14rem;
  overflow-y: auto;
}

.rich-text-emoji-picker__item {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 0.36rem;
  background: transparent;
  padding: 0;
  font-size: 1.05rem;
  line-height: 1;
}

.rich-text-emoji-picker__item.hidden {
  display: none !important;
}

.rich-text-emoji-picker__item:hover,
.rich-text-emoji-picker__item:focus-visible {
  border-color: rgb(232 68 122 / 0.28);
  background: rgb(232 68 122 / 0.13);
  outline: none;
}

@media (max-width: 760px) {
  #section-blog #blog-post-form .blog-editor-toolbar-shell {
    padding-inline: 0.55rem;
  }

  #section-blog #blog-post-form .blog-editor-toolbar {
    width: 100%;
    padding-bottom: 0.2rem !important;
  }

  #section-blog #blog-post-form .blog-editor-mode-tabs {
    justify-content: flex-end;
  }
}

/* Blog editor V3: final reference-template pass. Kept last to neutralize
   earlier migration layers that still target #blog-post-form. */

#section-blog #blog-post-form {
  gap: 0 !important;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.16) !important;
  border-radius: 0.7rem !important;
  background: #0d0a12 !important;
  padding: 0 !important;
}

#section-blog #blog-post-form .blog-editor-topbar {
  min-height: 3.75rem;
  border: 0;
  border-bottom: 1px solid rgb(232 68 122 / 0.16);
  background: rgb(22 18 31 / 0.98);
  padding: 0.7rem 1.4rem;
}

#section-blog #blog-post-form .blog-editor-title-field {
  display: flex;
  align-items: center;
  min-height: 2.1rem;
}

#section-blog #blog-post-form .blog-editor-title-input {
  min-width: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f6f1fa !important;
  padding: 0 !important;
  font-family: var(--font-display, 'Cormorant Garamond', Georgia, serif) !important;
  font-size: 1.45rem !important;
  font-weight: 800 !important;
  line-height: 1.15;
}

#section-blog #blog-post-form .blog-editor-topbar [data-blog-action='back'] {
  display: none !important;
}

#section-blog #blog-post-form .blog-editor-topbar__actions {
  gap: 0.45rem;
}

#section-blog #blog-post-form .blog-editor-command {
  min-height: 2.25rem;
  border-radius: 0.5rem;
  padding: 0.42rem 0.78rem;
  font-size: 0.76rem;
  font-weight: 700;
}

#section-blog #blog-post-form .blog-editor-command--primary {
  border-color: #e8447a;
  background: #e8447a;
  box-shadow: none;
}

#section-blog #blog-post-form .blog-editor-workspace {
  grid-template-columns: minmax(0, 1fr) 18rem;
}

#section-blog #blog-post-form .blog-editor-toolbar-shell {
  min-height: 2.9rem;
  flex-wrap: nowrap;
  border: 0;
  border-bottom: 1px solid rgb(232 68 122 / 0.13);
  background: rgb(22 18 31 / 0.96);
  padding: 0.25rem 0.95rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar.ql-snow {
  min-width: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-formats {
  display: inline-flex;
  align-items: center;
  gap: 0.05rem;
  margin-right: 0.35rem;
  padding-right: 0.35rem;
  border-right: 1px solid rgb(232 68 122 / 0.14);
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-formats:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label {
  display: inline-flex;
  width: 1.85rem;
  height: 1.85rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.35rem;
  color: rgb(190 174 218 / 0.82) !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button:hover,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button.ql-active,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label:hover,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label.ql-active {
  background: rgb(232 68 122 / 0.12);
  color: #ff75a4 !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button svg,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label svg {
  width: 0.95rem;
  height: 0.95rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header {
  width: 2.65rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label::before {
  color: currentColor !important;
  content: 'H' !important;
  font-family: var(--font-body, 'Montserrat', sans-serif);
  font-size: 0.8rem;
  font-weight: 800;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-font,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-size {
  display: none;
}

#section-blog #blog-post-form .blog-editor-mode-tabs {
  flex: 0 0 auto;
  gap: 0.15rem;
}

#section-blog #blog-post-form .blog-editor-mode-tab {
  border-radius: 0.35rem;
  padding: 0.36rem 0.52rem;
  font-size: 0.69rem;
}

#section-blog #blog-post-form .blog-editor-utilitybar {
  min-height: 2.75rem;
  border: 0;
  border-bottom: 1px solid rgb(232 68 122 / 0.1);
  background: rgb(14 11 20 / 0.96);
  padding: 0.35rem 0.95rem;
}

#section-blog #blog-post-form .blog-editor-tool-button {
  width: 1.9rem;
  height: 1.9rem;
  border-radius: 0.35rem;
}

#section-blog #blog-post-form .blog-editor-font-size-control {
  gap: 0.35rem;
}

#section-blog #blog-post-form .blog-editor-format-row__input {
  width: 8rem;
  border-radius: 0.4rem;
}

#section-blog #blog-post-form .blog-editor__surface {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

#section-blog #blog-post-form .blog-editor__container .ql-editor,
#section-blog #blog-post-form .blog-editor__preview {
  max-width: 45rem;
  min-height: 31rem !important;
  margin: 0 auto;
  padding: 1.8rem 1.7rem !important;
  font-family: 'Merriweather', Georgia, serif;
  font-size: 1rem;
  line-height: 1.85;
}

#section-blog #blog-post-form .blog-editor-settings-panel {
  border-left: 1px solid rgb(232 68 122 / 0.15);
  background: rgb(22 18 31 / 0.98);
}

#section-blog #blog-post-form .blog-editor-settings-heading {
  display: none;
}

#section-blog #blog-post-form .blog-editor-settings-group > summary {
  min-height: 3rem;
  padding: 0.8rem 1rem;
  border-radius: 0;
  background: transparent;
  color: #f0ecf8;
}

#section-blog #blog-post-form .blog-editor-settings-group:first-of-type > summary {
  font-weight: 800;
}

#section-blog #blog-post-form .blog-editor-settings-group__content {
  gap: 0.8rem;
  padding: 0.1rem 1rem 1rem;
}

#section-blog #blog-post-form .blog-editor-insert-panel {
  width: min(26.25rem, calc(100vw - 2rem));
  gap: 0.8rem;
  border-color: rgb(232 68 122 / 0.32);
  border-radius: 0.85rem;
  background: #17121f;
  padding: 1.8rem;
  box-shadow: 0 0 0 100vmax rgb(0 0 0 / 0.74), 0 28px 80px -30px rgb(0 0 0 / 0.98);
}

#section-blog #blog-post-form .blog-editor-insert-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #f0ecf8;
  font-size: 1rem;
  font-weight: 800;
}

#section-blog #blog-post-form .blog-editor-insert-panel__description {
  margin: 0;
  color: rgb(190 174 218 / 0.82);
  font-size: 0.75rem;
  line-height: 1.5;
}

#section-blog #blog-post-form .blog-editor-insert-panel__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.65rem;
  margin-top: 0.2rem;
}

#section-blog #blog-post-form .blog-editor-platforms {
  margin-top: 0.1rem;
}

#section-blog #blog-post-form .blog-editor-platforms span {
  border-radius: 0.45rem;
  background: rgb(36 29 48 / 0.82);
  padding: 0.4rem 0.65rem;
}

/* Blog list: one calm surface with separated rows, as in the template. */

#section-blog #blog-posts-table {
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.9rem;
  background: rgb(22 18 31 / 0.84);
}

#section-blog #blog-posts-table tbody {
  gap: 0;
  padding: 0;
}

#section-blog #blog-posts-table tr.admin-blog-row {
  grid-template-columns: minmax(0, 1fr) auto minmax(9rem, auto) auto;
  gap: 1rem;
  min-height: 5.85rem;
  border: 0;
  border-bottom: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0;
  background: transparent !important;
  padding: 0.85rem 1rem;
  transform: none !important;
}

#section-blog #blog-posts-table tr.admin-blog-row:last-child {
  border-bottom: 0;
}

#section-blog #blog-posts-table tr.admin-blog-row:hover {
  border-color: rgb(232 68 122 / 0.14) !important;
  background: rgb(232 68 122 / 0.035) !important;
}

#section-blog #blog-posts-table .admin-blog-row__media {
  width: 3.8rem;
  height: 3.2rem;
  flex-basis: 3.8rem;
  border-radius: 0.65rem;
}

#section-blog #blog-posts-table .admin-blog-row__content strong {
  font-size: 0.9rem;
}

@media (max-width: 980px) {
  #section-blog #blog-post-form .blog-editor-workspace {
    grid-template-columns: minmax(0, 1fr) 16.5rem;
  }

  #section-blog #blog-post-form .blog-editor-toolbar-shell {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  #section-blog #blog-post-form #blog-post-editor-toolbar {
    flex-basis: 100%;
  }
}

@media (max-width: 760px) {
  #section-blog,
  #section-blog .blog-admin-shell,
  #section-blog #blog-editor-view,
  #section-blog #blog-post-form,
  #section-blog #blog-post-form .blog-editor-form,
  #section-blog #blog-post-form .blog-editor-workspace,
  #section-blog #blog-post-form .blog-editor-body-section,
  #section-blog #blog-post-form .blog-editor-settings-panel,
  #section-blog #blog-post-form .blog-editor-toolbar-shell,
  #section-blog #blog-post-form #blog-post-editor-toolbar {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }

  #section-blog #blog-post-form.blog-editor-form {
    overflow: hidden;
  }

  #section-blog #blog-post-form .blog-editor-topbar {
    align-items: flex-start;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  #section-blog #blog-post-form .blog-editor-topbar__actions {
    width: 100%;
    min-width: 0;
    flex-wrap: wrap;
    justify-content: flex-end;
  }

  #section-blog #blog-post-form .blog-editor-workspace {
    display: flex;
    flex-direction: column;
  }

  #section-blog #blog-post-form .blog-editor-settings-panel {
    border-top: 1px solid rgb(232 68 122 / 0.15);
    border-left: 0;
  }

  #section-blog #blog-post-form .blog-editor-toolbar-shell {
    display: block;
    overflow: hidden;
    padding-inline: 0.55rem;
  }

  #section-blog #blog-post-form #blog-post-editor-toolbar {
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }

  #section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar.ql-snow {
    width: -moz-max-content;
    width: max-content;
    min-width: -moz-max-content;
    min-width: max-content;
    max-width: none;
  }

  #section-blog #blog-post-form .blog-editor-mode-tabs {
    width: 100%;
    margin-top: 0.35rem;
    margin-left: 0;
    justify-content: flex-end;
  }

  #section-blog #blog-posts-table tr.admin-blog-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.55rem;
  }
}

/*
  Theme contract for the public experience. The NewDesignTemplate composition
  stays intact while every visual role follows the palette published in Admin.
*/

html[data-app-context='public'] body {
  background-color: rgb(var(--color-surface)) !important;
  color: rgb(var(--color-tertiary-text) / var(--color-tertiary-text-alpha, 1)) !important;
}

html[data-app-context='public'] .public-language-switcher__button {
  border-color: rgb(var(--color-accent) / 0.2) !important;
  background: rgb(var(--color-secondary) / 0.82) !important;
  color: rgb(var(--color-tertiary-text) / 0.68) !important;
}

html[data-app-context='public'] .public-language-switcher__button:hover,
html[data-app-context='public'] .public-language-switcher__button:focus-visible {
  border-color: rgb(var(--color-accent) / 0.48) !important;
  color: rgb(var(--color-tertiary-text) / 1) !important;
}

html[data-app-context='public'] .public-language-switcher__button--active {
  border-color: rgb(var(--color-accent) / 0.62) !important;
  background: rgb(var(--color-accent) / 1) !important;
  color: rgb(var(--md-sys-color-on-primary) / 1) !important;
}

html[data-app-context='public'] .btn-public-primary {
  border-color: rgb(var(--color-accent) / 0.42) !important;
  background: linear-gradient(
    135deg,
    rgb(var(--color-accent) / 1),
    color-mix(in srgb, rgb(var(--color-accent)) 72%, rgb(var(--color-surface)))
  ) !important;
  color: rgb(var(--md-sys-color-on-primary) / 1) !important;
  box-shadow: 0 12px 28px rgb(var(--color-accent) / 0.24) !important;
}

html[data-app-context='public'] .btn-public-primary:hover:not(:disabled),
html[data-app-context='public'] .btn-public-primary:focus-visible {
  border-color: rgb(var(--color-accent) / 0.62) !important;
  background: color-mix(in srgb, rgb(var(--color-accent)) 88%, rgb(var(--color-surface))) !important;
  box-shadow: 0 16px 32px rgb(var(--color-accent) / 0.3) !important;
}

html[data-app-context='public'] .home-section-title,
html[data-app-context='public'] #profileName,
html[data-app-context='public'] .home-link-anchor .link-text,
html[data-app-context='public'] .home-poll-card__question,
html[data-app-context='public'] .home-poll-option__text,
html[data-app-context='public'] .home-album-card__title {
  color: rgb(var(--color-tertiary-text) / var(--color-tertiary-text-alpha, 1)) !important;
}

html[data-app-context='public'] .home-section-title,
html[data-app-context='public'] #profileName {
  text-shadow: 0 0 40px rgb(var(--color-accent) / 0.28) !important;
}

html[data-app-context='public'] #profile-home-link {
  background: linear-gradient(
    135deg,
    rgb(var(--color-accent) / 1),
    color-mix(in srgb, rgb(var(--color-accent)) 64%, rgb(var(--color-tertiary-text))),
    color-mix(in srgb, rgb(var(--color-accent)) 46%, rgb(var(--color-surface)))
  ) !important;
}

html[data-app-context='public'] .home-link-primary {
  border-color: rgb(var(--color-accent) / 0.56) !important;
  background: linear-gradient(
    135deg,
    color-mix(in srgb, rgb(var(--color-accent)) 36%, rgb(var(--color-surface))) 0%,
    rgb(var(--color-accent) / 0.24) 50%,
    color-mix(in srgb, rgb(var(--color-accent)) 36%, rgb(var(--color-surface))) 100%
  ) !important;
  color: rgb(var(--color-tertiary-text) / 1) !important;
}

html[data-app-context='public'] .home-link-secondary {
  border-color: rgb(var(--color-tertiary-text) / 0.1) !important;
  background: rgb(var(--color-secondary) / 0.78) !important;
  color: rgb(var(--color-tertiary-text) / 1) !important;
}

html[data-app-context='public'] .home-link-anchor {
  --home-link-glow-color: rgb(var(--color-accent) / 0.46);
  --home-link-glow-color-hover: var(--home-link-glow-color);
}

html[data-app-context='public'] .home-link-primary:hover,
html[data-app-context='public'] .home-link-primary:focus-visible,
html[data-app-context='public'] .home-link-secondary:hover,
html[data-app-context='public'] .home-link-secondary:focus-visible,
html[data-app-context='public'] .home-link-anchor:hover,
html[data-app-context='public'] .home-link-anchor:focus-visible {
  border-color: rgb(var(--color-accent) / 0.62) !important;
  box-shadow:
    0 0 0 1px rgb(var(--color-accent) / 0.28) inset,
    0 18px 44px -22px var(--home-link-glow-color-hover),
    0 0 42px -16px var(--home-link-glow-color-hover) !important;
}

html[data-app-context='public'] .home-link-anchor .link-icon,
html[data-app-context='public'] .home-link-secondary[data-link-type='privacy'] .link-icon,
html[data-app-context='public'] .home-link-anchor[data-link-type='instagram'] .link-icon {
  background: linear-gradient(
    135deg,
    rgb(var(--color-accent) / 1),
    color-mix(in srgb, rgb(var(--color-accent)) 76%, rgb(var(--color-surface)))
  ) !important;
  color: rgb(var(--md-sys-color-on-primary) / 1) !important;
}

html[data-app-context='public'] .home-link-sublabel,
html[data-app-context='public'] .home-album-card__description {
  color: rgb(var(--color-tertiary-text) / 0.62) !important;
}

html[data-app-context='public'] .home-link-premium,
html[data-app-context='public'] .home-poll-option__vote-label,
html[data-app-context='public'] .home-poll-option__result,
html[data-app-context='public'] .home-blog-see-all,
html[data-app-context='public'] #blog-posts-section .mt-6 > a {
  color: rgb(var(--color-accent) / 1) !important;
}

html[data-app-context='public'] .home-poll-card,
html[data-app-context='public'] .home-album-card,
html[data-app-context='public'] .public-blog-card,
html[data-app-context='public'] #blog-posts-section[data-blog-list-variant='archive'] .public-blog-card--archive {
  border-color: rgb(var(--color-accent) / 0.16) !important;
  background: rgb(var(--color-secondary) / 0.76) !important;
}

html[data-app-context='public'] .home-poll-option {
  border-color: rgb(var(--color-tertiary-text) / 0.12) !important;
  background: rgb(var(--color-surface) / 0.42) !important;
}

html[data-app-context='public'] .home-poll-option--active:hover,
html[data-app-context='public'] .home-poll-option--active:focus-visible {
  border-color: rgb(var(--color-accent) / 0.48) !important;
  background: rgb(var(--color-accent) / 0.08) !important;
}

html[data-app-context='public'] .home-poll-option__progress {
  background: rgb(var(--color-accent) / 0.14) !important;
}

html[data-app-context='public'] .public-blog-pagination__link {
  border-color: rgb(var(--color-accent) / 0.2) !important;
  background: rgb(var(--color-secondary) / 0.82) !important;
  color: rgb(var(--color-accent) / 1) !important;
}

html[data-app-context='public'] .public-blog-pagination__link:hover,
html[data-app-context='public'] .public-blog-pagination__link:focus-visible {
  border-color: rgb(var(--color-accent) / 0.52) !important;
  color: color-mix(in srgb, rgb(var(--color-accent)) 78%, rgb(var(--color-tertiary-text))) !important;
}

html[data-app-context='public'] .public-blog-pagination__link--active {
  border-color: rgb(var(--color-accent) / 1) !important;
  background: rgb(var(--color-accent) / 1) !important;
  color: rgb(var(--md-sys-color-on-primary) / 1) !important;
}

html[data-app-context='public'] #gallery-close-btn:hover,
html[data-app-context='public'] #gallery-close-btn:focus-visible,
html[data-app-context='public'] #gallery-modal .swiper-button-prev:hover,
html[data-app-context='public'] #gallery-modal .swiper-button-prev:focus-visible,
html[data-app-context='public'] #gallery-modal .swiper-button-next:hover,
html[data-app-context='public'] #gallery-modal .swiper-button-next:focus-visible {
  border-color: rgb(var(--color-accent) / 0.42) !important;
  background: rgb(var(--color-accent) / 0.14) !important;
  color: rgb(var(--color-accent) / 1) !important;
}

/*
  Admin content workspace aligned with the template. These selectors style
  stable semantic classes only; existing IDs and event contracts remain intact.
*/

.admin-empty-state {
  display: flex;
  min-height: 12rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1rem;
  border: 1px dashed rgb(var(--admin-border-soft) / 0.28);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.34);
  padding: 2rem;
  text-align: center;
}

.admin-empty-state__icon {
  display: inline-flex;
  width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgb(var(--admin-primary) / 0.12);
  color: rgb(var(--admin-primary) / 1);
}

.admin-empty-state__icon svg {
  width: 1.25rem;
  height: 1.25rem;
}

.links-admin-shell {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.links-admin-header,
.content-manager-header,
.polls-admin-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border: 0;
  border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.16);
  border-radius: 0;
  background: transparent;
  padding: 0 0 1.25rem;
  box-shadow: none;
}

.links-admin-header .admin-section__title,
.content-manager-header .admin-section__title,
.polls-admin-header .admin-section__title {
  margin: 0 !important;
  color: rgb(var(--admin-fg) / 1) !important;
}

.links-admin-subtitle,
.content-manager-subtitle,
.polls-admin-subtitle {
  max-width: 46rem;
  margin-top: 0.35rem;
  color: rgb(var(--admin-muted) / 1) !important;
  font-size: 0.875rem;
  line-height: 1.55;
}

.links-admin-header__action,
.content-manager-header__action,
.polls-admin-header__action {
  display: inline-flex;
  min-height: 2.5rem;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
}

.links-admin-header__action svg,
.content-manager-header__action svg,
.polls-admin-header__action svg {
  width: 1rem;
  height: 1rem;
}

.links-admin-list {
  gap: 0.75rem !important;
}

.link-card {
  overflow: hidden;
  border: 1px solid rgb(var(--admin-border-soft) / 0.16) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel) / 0.78) !important;
  box-shadow: none !important;
}

.link-card:hover,
.link-card--editing,
.link-card--drag-over {
  border-color: rgb(var(--admin-primary) / 0.42) !important;
  background: rgb(var(--admin-panel) / 0.92) !important;
}

.link-card--dragging {
  opacity: 0.64;
}

.link-card__header {
  min-height: 4.5rem;
  padding: 0.75rem 0.875rem;
  border-bottom: 1px solid transparent;
}

.link-card--editing .link-card__header {
  border-bottom-color: rgb(var(--admin-border-soft) / 0.14);
}

.link-card__header-info {
  min-width: 0;
  flex: 1 1 auto;
}

.link-card__drag-handle,
.link-card__quick-feature,
.link-card__action {
  width: 2rem !important;
  height: 2rem !important;
  flex: 0 0 2rem;
  border-radius: 0.375rem !important;
}

.link-card__drag-handle {
  color: rgb(var(--admin-muted) / 0.72) !important;
}

.link-card__type-icon {
  display: inline-flex;
  width: 2.5rem !important;
  height: 2.5rem !important;
  flex: 0 0 2.5rem;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px !important;
  background: rgb(var(--admin-primary) / 0.1);
  color: rgb(var(--admin-primary) / 1);
}

.link-card__type-icon svg {
  width: 1rem !important;
  height: 1rem !important;
}

.link-card__quick-feature,
.link-card__action {
  border: 1px solid transparent;
  background: transparent;
  color: rgb(var(--admin-muted) / 0.86);
}

.link-card__quick-feature:hover,
.link-card__action:hover,
.link-card__quick-feature.is-active {
  border-color: rgb(var(--admin-primary) / 0.22);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
  transform: none;
}

.link-card__summary-title {
  color: rgb(var(--admin-fg) / 1);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
}

.link-card__summary-subtitle {
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.75rem;
  letter-spacing: 0;
}

.link-card__stats {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.4rem;
  margin-left: auto;
}

.link-card__stats-count,
.link-card__utm-badge {
  display: inline-flex;
  min-height: 1.5rem;
  align-items: center;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 999px;
  background: rgb(var(--admin-panel-2) / 0.66);
  padding: 0.15rem 0.5rem;
  color: rgb(var(--admin-muted) / 0.96);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0;
  white-space: nowrap;
}

.link-card__utm-badge {
  border-color: rgb(var(--admin-primary) / 0.28);
  color: rgb(var(--admin-primary) / 1);
}

.link-card__stats-url {
  max-width: 11rem;
  overflow: hidden;
  flex: 0 1 11rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: normal;
  color: rgb(var(--admin-muted) / 0.86) !important;
}

.link-card__body {
  gap: 1rem !important;
  padding: 1rem;
  background: rgb(var(--admin-panel-2) / 0.28);
}

.link-card__appearance {
  border: 1px solid rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.75rem;
  background: rgb(var(--admin-panel) / 0.42);
  padding: 0.875rem;
}

.link-card__appearance-title {
  margin: 0 0 0.75rem;
  color: rgb(var(--admin-fg) / 0.92);
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.01em;
}

.link-card__featured,
.link-card__show-icon {
  background: transparent !important;
}

.link-card__glow {
  display: flex;
  align-items: center;
  min-height: 3.5rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.75rem;
  background: rgb(var(--admin-panel-2) / 0.32);
  padding: 0.8rem 0.95rem;
}

.link-card__glow-field {
  width: 100%;
}

.link-card__glow-field input[type='color'] {
  flex: 0 0 3rem;
  border-radius: 0.625rem !important;
}

.link-card__utm {
  border: 1px solid rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.42);
  padding: 0.875rem;
}

.link-card__utm summary {
  color: rgb(var(--admin-muted) / 1) !important;
  letter-spacing: 0;
}

.link-card__switch:has(.link-featured:checked),
.link-card__switch:has(.link-show-icon:checked) {
  border-color: rgb(var(--admin-primary) / 0.22) !important;
  background: rgb(var(--admin-primary) / 0.07) !important;
}

.content-manager-shell,
.polls-admin-shell {
  gap: 1rem !important;
}

.content-manager-summary,
.polls-admin-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-block: 1px solid rgb(var(--admin-border-soft) / 0.14);
}

.content-manager-summary__item,
.polls-admin-summary__item {
  display: grid;
  min-width: 0;
  grid-template-columns: auto 1fr;
  align-items: center;
  -moz-column-gap: 0.625rem;
       column-gap: 0.625rem;
  padding: 0.875rem 1rem;
  border-right: 1px solid rgb(var(--admin-border-soft) / 0.14);
}

.content-manager-summary__item:last-child,
.polls-admin-summary__item:last-child {
  border-right: 0;
}

.content-manager-summary__item > svg {
  width: 1rem;
  height: 1rem;
  grid-row: 1 / 3;
  color: rgb(var(--admin-primary) / 0.9);
}

.content-manager-summary__value,
.polls-admin-summary__value {
  color: rgb(var(--admin-fg) / 1);
  font-size: 1.125rem;
  font-weight: 800;
  line-height: 1.1;
}

.content-manager-summary__label,
.polls-admin-summary__label {
  overflow: hidden;
  color: rgb(var(--admin-muted) / 0.92);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#section-content-manager .content-manager-albums-card,
#section-content-manager .content-manager-gallery-card,
#polls-admin-card {
  border-color: rgb(var(--admin-border-soft) / 0.14) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel) / 0.72) !important;
  box-shadow: none !important;
}

#section-content-manager .albums-management {
  grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr);
  gap: 1rem !important;
}

.content-manager-panel {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.content-manager-panel--form {
  border-left: 1px solid rgb(var(--admin-border-soft) / 0.14);
  padding-left: 1rem;
}

#section-content-manager .content-manager-panel > h3,
#section-content-manager .content-manager-gallery-card > h3,
#polls-admin-card h4 {
  color: rgb(var(--admin-fg) / 1) !important;
  font-size: 0.9rem !important;
  letter-spacing: 0;
}

#album-create-form,
#photo-upload-form,
#section-polls #poll-create-form {
  border: 1px solid rgb(var(--admin-border-soft) / 0.14) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel-2) / 0.42) !important;
}

#section-content-manager .admin-album-card {
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 5rem;
  border-color: rgb(var(--admin-border-soft) / 0.14) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel-2) / 0.42) !important;
}

#section-content-manager .admin-album-card[data-state='archived'] {
  opacity: 0.72;
}

.admin-album-row__thumb {
  width: 3.25rem;
  height: 3.25rem;
  flex-basis: 3.25rem;
  border-color: rgb(var(--admin-border-soft) / 0.16);
  border-radius: 0.375rem;
  background: rgb(var(--admin-panel) / 0.72);
}

#section-content-manager .admin-album-row__title {
  color: rgb(var(--admin-fg) / 1) !important;
  letter-spacing: 0;
}

#section-content-manager .admin-album-row__description {
  color: rgb(var(--admin-muted) / 0.9) !important;
}

#section-content-manager .admin-album-row__meta {
  color: rgb(var(--admin-primary) / 0.92);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.admin-album__badge {
  border-radius: 999px;
  padding: 0.15rem 0.45rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.admin-album__badge--active {
  border: 1px solid rgb(34 197 94 / 0.24);
  background: rgb(34 197 94 / 0.1);
  color: rgb(134 239 172 / 1);
}

.admin-album__badge--archived {
  border: 1px solid rgb(var(--admin-border-soft) / 0.2);
  background: rgb(var(--admin-panel) / 0.64);
  color: rgb(var(--admin-muted) / 1);
}

.admin-album-row__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.75rem !important;
}

.admin-album-row__reorder {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.album-upload-trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.album-upload-trigger svg {
  width: 0.875rem;
  height: 0.875rem;
}

#section-content-manager .admin-album__archive-btn {
  min-height: 2rem;
  border-radius: 0.375rem !important;
  letter-spacing: 0;
}

#section-content-manager .admin-album-photos {
  border-top-color: rgb(var(--admin-border-soft) / 0.14);
  background: rgb(var(--admin-panel) / 0.34);
}

#section-content-manager .admin-album-photos__summary {
  color: rgb(var(--admin-muted) / 1);
  letter-spacing: 0;
  text-transform: none;
}

#section-content-manager .admin-album-photos__summary::after {
  border-color: rgb(var(--admin-border-soft) / 0.22);
  background: rgb(var(--admin-panel-2) / 0.72);
  color: rgb(var(--admin-fg) / 1);
}

#section-content-manager .admin-album-photos[open] .admin-album-photos__summary::after {
  background: rgb(var(--admin-primary) / 0.1);
  color: rgb(var(--admin-primary) / 1);
}

#section-content-manager .admin-album-photo,
.admin-gallery-photo-card {
  border-color: rgb(var(--admin-border-soft) / 0.14);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.48);
}

#photo-upload-form input[type='file'] {
  border-color: rgb(var(--admin-primary) / 0.28);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.42);
}

#polls-admin-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.polls-admin-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.polls-admin-summary__item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  justify-content: stretch;
  gap: 0 0.625rem;
  text-align: left;
}

.polls-admin-summary__item > svg {
  width: 1rem;
  height: 1rem;
  grid-row: 1 / 3;
  color: rgb(var(--admin-primary) / 0.92);
}

.poll-editor-row {
  overflow: hidden;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.78);
  padding: 1rem;
  box-shadow: 0 20px 48px -44px rgb(var(--admin-primary) / 0.68);
}

.poll-editor-row.hidden {
  display: none;
}

.poll-editor-row--open {
  animation: pollEditorReveal 220ms ease-out both;
}

.poll-editor-row__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.poll-editor-row__title,
.polls-admin-list-section__header h4 {
  margin: 0;
  color: rgb(var(--admin-fg) / 1);
  font-size: 0.9375rem;
  font-weight: 750;
  letter-spacing: 0;
}

.poll-editor-row__description,
.polls-admin-list-section__header p {
  margin: 0.25rem 0 0;
  color: rgb(var(--admin-muted) / 0.9);
  font-size: 0.75rem;
  line-height: 1.5;
}

.poll-editor-row__dismiss {
  flex: 0 0 auto;
}

#section-polls #poll-create-form {
  display: flex;
  flex-direction: column;
  gap: 0.875rem !important;
  max-height: none;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

#section-polls #poll-create-form .field-outlined-wrap {
  margin: 0;
}

.poll-options-heading {
  color: rgb(var(--admin-muted) / 1);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0;
}

.poll-options-list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem !important;
}

.poll-option-remove-btn {
  width: 2.75rem !important;
  height: 2.75rem !important;
  flex: 0 0 2.75rem;
  border-radius: 0.5rem !important;
}

.poll-add-option-btn {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 2rem;
  align-items: center;
  justify-content: flex-start;
  gap: 0.4rem;
  border-color: transparent !important;
  background: transparent !important;
  padding-inline: 0.25rem !important;
  color: rgb(var(--admin-primary) / 1) !important;
  box-shadow: none !important;
}

.poll-add-option-btn:hover {
  background: rgb(var(--admin-primary) / 0.07) !important;
}

.poll-add-option-btn svg {
  width: 0.875rem;
  height: 0.875rem;
}

.poll-editor-row__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.625rem;
  padding-top: 0.25rem;
}

.polls-admin-list-section {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}

.polls-admin-list-section__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.25rem 0;
}

.polls-admin-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.polls-list-controls {
  display: flex;
  justify-content: flex-end;
  min-height: 2rem;
}

.polls-deactivate-all-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.polls-deactivate-all-btn svg {
  width: 0.875rem;
  height: 0.875rem;
}

.polls-deactivate-all-btn:disabled {
  opacity: 0.42;
  cursor: not-allowed;
}

.admin-poll-card {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.15);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel) / 0.74);
  padding: 1rem;
  box-shadow: 0 16px 36px -38px rgb(var(--admin-primary) / 0.72);
  transition:
    border-color 180ms ease,
    background-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.admin-poll-card:hover {
  border-color: rgb(var(--admin-primary) / 0.3);
  background: rgb(var(--admin-panel) / 0.9);
  box-shadow: 0 22px 44px -38px rgb(var(--admin-primary) / 0.72);
  transform: translateY(-1px);
}

.admin-poll-card[data-editing='true'] {
  border-color: rgb(var(--admin-primary) / 0.54);
  box-shadow: 0 0 0 2px rgb(var(--admin-primary) / 0.09);
}

.admin-poll-card__header {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.admin-poll-card__identity {
  min-width: 0;
  flex: 1 1 auto;
}

.admin-poll-card__question {
  overflow-wrap: anywhere;
  margin: 0;
  color: rgb(var(--admin-fg) / 1) !important;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
}

.admin-poll-card__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.2rem;
  color: rgb(var(--admin-muted) / 0.84);
  font-size: 0.72rem;
}

.admin-poll-card__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.admin-poll-card__status {
  display: inline-flex;
  min-height: 1.4rem;
  align-items: center;
  border: 1px solid rgb(251 191 36 / 0.24);
  border-radius: 999px;
  background: rgb(251 191 36 / 0.1);
  padding: 0.12rem 0.5rem;
  color: rgb(251 191 36 / 1) !important;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0;
}

.admin-poll-card__status[data-state='active'] {
  border-color: rgb(74 222 128 / 0.24);
  background: rgb(74 222 128 / 0.1);
  color: rgb(74 222 128 / 1) !important;
}

.admin-poll-card__state-action {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  border: 1px solid rgb(var(--admin-border-soft) / 0.16);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.58);
  padding: 0.35rem 0.625rem;
  color: rgb(var(--admin-muted) / 1);
  cursor: pointer;
  font-size: 0.7rem;
  font-weight: 650;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.admin-poll-card__state-action:hover {
  border-color: rgb(var(--admin-primary) / 0.3);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
}

.admin-poll-card__state-action svg {
  width: 0.875rem;
  height: 0.875rem;
}

.admin-poll-card__icon-action,
.admin-poll-card__results-action {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  background: transparent;
  color: rgb(var(--admin-muted) / 0.92);
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.admin-poll-card__icon-action:hover,
.admin-poll-card__results-action:hover {
  border-color: rgb(var(--admin-primary) / 0.22);
  background: rgb(var(--admin-primary) / 0.08);
  color: rgb(var(--admin-primary) / 1);
}

.admin-poll-card__icon-action--danger {
  color: rgb(var(--admin-danger) / 0.9);
}

.admin-poll-card__icon-action--danger:hover {
  border-color: rgb(var(--admin-danger) / 0.24);
  background: rgb(var(--admin-danger) / 0.08);
  color: rgb(var(--admin-danger) / 1);
}

.admin-poll-card__icon-action svg,
.admin-poll-card__results-action svg {
  width: 0.875rem;
  height: 0.875rem;
}

.admin-poll-card__state-action:disabled,
.admin-poll-card__icon-action:disabled,
.admin-poll-card__results-action:disabled {
  opacity: 0.48;
  cursor: wait;
}

.refresh-poll-results-btn:disabled svg {
  animation: pollResultsRefreshSpin 720ms linear infinite;
}

.admin-poll-card__results-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  padding-top: 0.75rem;
}

.admin-poll-card__results-title {
  color: rgb(var(--admin-muted) / 0.92);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0;
}

.admin-poll-card__results-actions {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.poll-results {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.poll-results.hidden {
  display: none;
}

.poll-result-option {
  min-width: 0;
}

.poll-result-option__header {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.4rem;
  color: rgb(var(--admin-fg) / 0.92);
  font-size: 0.75rem;
  font-weight: 600;
}

.poll-result-option__header span:first-child {
  overflow: hidden;
  min-width: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.poll-result-option__header span:last-child {
  flex: 0 0 auto;
  color: rgb(var(--admin-muted) / 0.9);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.poll-result-option__track {
  width: 100%;
  height: 0.375rem;
  overflow: hidden;
  border-radius: 999px;
  background: rgb(var(--admin-panel-2) / 0.9);
}

.poll-result-option__bar {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(
    90deg,
    rgb(var(--admin-primary) / 1),
    rgb(var(--admin-primary-2) / 1)
  );
  transform-origin: left center;
  animation: pollResultReveal 620ms ease-out both;
}

@keyframes pollEditorReveal {
  from {
    opacity: 0;
    transform: translateY(-0.35rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pollResultReveal {
  from {
    opacity: 0.35;
    transform: scaleX(0);
  }
  to {
    opacity: 1;
    transform: scaleX(1);
  }
}

@keyframes pollResultsRefreshSpin {
  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 900px) {
  .content-manager-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .content-manager-summary__item:nth-child(2) {
    border-right: 0;
  }

  .content-manager-summary__item:nth-child(-n + 2) {
    border-bottom: 1px solid rgb(var(--admin-border-soft) / 0.14);
  }

  #section-content-manager .albums-management {
    grid-template-columns: minmax(0, 1fr);
  }

  .content-manager-panel--form {
    border-top: 1px solid rgb(var(--admin-border-soft) / 0.14);
    border-left: 0;
    padding-top: 1rem;
    padding-left: 0;
  }

}

@media (max-width: 640px) {
  .links-admin-header,
  .content-manager-header,
  .polls-admin-header {
    flex-direction: column;
  }

  .links-admin-header__action,
  .content-manager-header__action,
  .polls-admin-header__action {
    width: 100%;
  }

  .link-card__header {
    align-items: center !important;
    flex-wrap: wrap;
  }

  .link-card__header-info {
    width: 100%;
  }

  .link-card__stats {
    display: none;
  }

  .link-card__actions {
    width: 100%;
    justify-content: flex-end;
  }

  .content-manager-summary__item,
  .polls-admin-summary__item {
    padding: 0.75rem;
  }

  #section-content-manager .admin-album-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .admin-album-row__actions {
    width: 100%;
    justify-content: flex-start;
    border-top: 1px solid rgb(var(--admin-border-soft) / 0.12);
  }

  .admin-album-row__actions .album-upload-trigger {
    flex: 1 1 auto;
    justify-content: center;
  }

  .admin-poll-card__header {
    flex-direction: column;
  }

  .admin-poll-card__actions {
    width: 100%;
    justify-content: flex-start;
  }

  .poll-editor-row__actions {
    align-items: stretch;
    flex-direction: column-reverse;
  }

  .poll-editor-row__actions > button {
    width: 100%;
  }

  .poll-result-option__header {
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .poll-editor-row--open,
  .poll-result-option__bar,
  .refresh-poll-results-btn:disabled svg {
    animation: none;
  }

  .admin-poll-card {
    transition: none;
  }

  .admin-poll-card:hover {
    transform: none;
  }
}

/* Final album workspace overrides must follow the legacy admin compatibility layer. */

#section-content-manager .content-manager-albums-card {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#section-content-manager .albums-management {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  grid-template-columns: none;
  gap: 1rem !important;
}

#section-content-manager .content-manager-panel--list {
  width: 100%;
}

#section-content-manager .content-manager-panel--form.album-create-row {
  width: 100%;
  border: 1px solid rgb(var(--admin-border-soft) / 0.18);
  border-radius: 0.5rem;
  background: rgb(var(--admin-panel-2) / 0.48);
  padding: 1rem;
}

#section-content-manager .admin-album-card {
  display: block !important;
  width: 100%;
  min-height: 0;
}

#section-content-manager .admin-album-card[data-state='archived'] {
  opacity: 1;
}

#section-content-manager .admin-album-photos {
  grid-column: auto;
  background: transparent;
  padding: 1rem 1.25rem 1.25rem !important;
}

#section-content-manager .admin-album-photos__empty {
  margin: 0 0 0.25rem;
  border: 0;
  background: transparent;
  padding: 0.25rem 0;
}

@media (max-width: 640px) {
  #section-content-manager .admin-album-row__actions {
    width: 100%;
    justify-content: flex-end;
    border-top: 0;
    padding-left: 3.25rem !important;
  }

  #section-content-manager .admin-album-photos {
    padding: 0.9rem !important;
  }
}

/* Final gallery stats/tool and dark-palette precedence. */

#section-content-manager .gallery-tools-disclosure {
  display: block;
  overflow: hidden;
  border: 1px dashed rgb(var(--admin-border-soft) / 0.24) !important;
  border-radius: 0.5rem !important;
  background: rgb(var(--admin-panel) / 0.54) !important;
  padding: 0 !important;
}

#section-content-manager .gallery-tools-disclosure:not([open]) > .gallery-tools-disclosure__body {
  display: none !important;
}

#section-content-manager .gallery-tools-disclosure[open] > .gallery-tools-disclosure__body {
  display: grid;
}

#section-content-manager .admin-album-stats-action {
  display: inline-flex;
}

body[data-admin-theme='dark'] .admin-sidebar,
body[data-admin-theme='dark'] .admin-main__header,
body[data-admin-theme='dark'] .admin-card,
body[data-admin-theme='dark'] #section-content-manager .admin-album-card,
body[data-admin-theme='dark'] .album-stats-dialog {
  background-color: rgb(var(--admin-panel) / 1) !important;
}

body[data-admin-theme='dark'] #dashboard-screen input:not([type='hidden']):not([type='checkbox']):not([type='radio']):not([type='color']):not([type='range']),
body[data-admin-theme='dark'] #dashboard-screen textarea,
body[data-admin-theme='dark'] #dashboard-screen select,
body[data-admin-theme='dark'] .admin-card--muted,
body[data-admin-theme='dark'] .admin-card--panel {
  background-color: rgb(var(--admin-panel-2) / 1) !important;
}

body[data-admin-theme='dark'] .admin-main__action-btn,
body[data-admin-theme='dark'] .btn-surface--accent {
  background: rgb(var(--admin-primary) / 1) !important;
}

/*
  Final precedence for NewDesignTemplate geometry.
  This remains after the legacy compatibility layer by design.
*/

.link-card {
  border-radius: 1rem !important;
}

.link-card__summary-subtitle {
  color: rgb(var(--admin-primary) / 0.92) !important;
  font-weight: 650;
}

.link-card__stats {
  margin-left: 0;
}

.link-card__utm,
.link-card__fields > div,
.link-card__featured,
.link-card__show-icon,
.link-card__language,
.poll-results,
.poll-result-option,
#dashboard-screen .md3-switch-control {
  border-radius: 0.75rem !important;
}

#section-content-manager .content-manager-gallery-card,
#section-content-manager .gallery-tools-disclosure,
#section-content-manager .admin-album-card,
#section-content-manager .content-manager-panel--form.album-create-row,
#section-content-manager #album-create-form,
#section-content-manager #photo-upload-form,
#section-polls #polls-admin-card,
#section-polls #poll-create-form,
.admin-poll-card,
.poll-editor-row {
  border-radius: 1rem !important;
}

#section-content-manager .gallery-upload-dropzone {
  border-radius: 0.75rem;
}

@media (prefers-reduced-motion: no-preference) {
  .admin-modal-backdrop:not(.hidden) .admin-modal-content {
    animation: admin-modal-enter 160ms ease-out both;
  }
}

@keyframes admin-modal-enter {
  from {
    opacity: 0;
    transform: translateY(0.5rem) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/*
  Post editor delivery: responsive publication controls, reusable media input,
  CodeMirror HTML source, SEO preview, and a wrapping toolbar.
*/

#section-blog #blog-post-form .blog-editor-workspace {
  grid-template-columns: minmax(0, 1fr) minmax(21rem, 23rem);
}

#section-blog #blog-post-form .blog-editor-settings-panel {
  min-width: 0;
}

#section-blog #blog-post-form .blog-editor-settings-group__content {
  min-width: 0;
}

#section-blog #blog-post-form .blog-publication-state {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.4rem;
}

#section-blog #blog-post-form .blog-editor-settings-group--publication .blog-editor-settings-group__content {
  grid-template-columns: minmax(0, 1fr) !important;
}

#section-blog #blog-post-form #blog-post-featured-image.sr-only {
  position: absolute !important;
  width: 1px !important;
  min-width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

#section-blog #blog-post-form .blog-publication-state__button {
  min-height: 2.75rem;
  gap: 0.4rem;
  overflow: visible;
  padding: 0.55rem 0.45rem;
  box-shadow: none;
}

#section-blog #blog-post-form .blog-publication-state__button span {
  overflow: visible;
  font-size: 0.7rem;
  text-overflow: clip;
}

#section-blog #blog-post-form .blog-publication-state__button svg {
  width: 0.9rem;
  height: 0.9rem;
  flex-basis: 0.9rem;
}

#section-blog #blog-post-form .blog-featured-image-dropzone {
  width: 100%;
  min-height: 8.5rem;
  border-radius: 0.75rem;
}

#section-blog #blog-post-form .blog-featured-image-library {
  display: grid;
  gap: 0.4rem;
}

#section-blog #blog-post-form .blog-featured-image-library label {
  font-size: 0.7rem;
  font-weight: 700;
}

#section-blog #blog-post-form .blog-seo-flags {
  display: grid;
  gap: 0.6rem;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 0.75rem;
  background: rgb(10 8 15 / 0.36);
  padding: 0.75rem;
}

#section-blog #blog-post-form .blog-seo-preview {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.75rem;
  background: rgb(10 8 15 / 0.54);
  padding: 0.9rem;
}

#section-blog #blog-post-form .blog-seo-preview__url {
  overflow: hidden;
  color: #74d39b;
  font-size: 0.68rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#section-blog #blog-post-form .blog-seo-preview strong {
  color: #8ab4f8;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.25;
}

#section-blog #blog-post-form .blog-seo-preview p {
  margin: 0;
  color: rgb(218 210 229 / 0.82);
  font-size: 0.72rem;
  line-height: 1.5;
}

#section-blog #blog-post-form .blog-editor-toolbar-shell {
  align-items: flex-start;
  overflow: visible !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar {
  display: block;
  min-width: 0;
  overflow: visible !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar.ql-snow,
#section-blog #blog-post-form .blog-editor-toolbar {
  display: flex !important;
  width: 100%;
  min-width: 0 !important;
  max-width: 100%;
  flex-wrap: wrap !important;
  align-items: center;
  gap: 0.2rem 0;
  overflow: visible !important;
}

#section-blog #blog-post-form .blog-editor-toolbar__group {
  min-height: 2.35rem;
  flex-wrap: nowrap;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label {
  width: 2.35rem;
  min-width: 2.35rem;
  height: 2.35rem;
  min-height: 2.35rem;
  overflow: visible;
  box-shadow: none !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header {
  width: 3.25rem !important;
  min-width: 3.25rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-options {
  z-index: 40;
}

#section-blog #blog-post-form .blog-editor-mode-tabs {
  min-width: -moz-max-content;
  min-width: max-content;
  padding-top: 0.15rem;
}

#section-blog #blog-post-form [data-blog-editor-toggle='preview'] {
  display: inline-flex !important;
}

#section-blog #blog-post-form .blog-editor__source-panel {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
}

#section-blog #blog-post-form .blog-editor__source-panel.hidden {
  display: none !important;
}

#section-blog #blog-post-form .blog-html-editor-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

#section-blog #blog-post-form .CodeMirror {
  width: 100%;
  min-width: 0;
  height: 34rem;
  border: 1px solid rgb(232 68 122 / 0.22);
  border-radius: 0.75rem;
  background: #0a0810;
  color: #eee9f4;
  font-family: 'Cascadia Code', 'SFMono-Regular', Consolas, monospace;
  font-size: 0.82rem;
  line-height: 1.65;
}

#section-blog #blog-post-form .CodeMirror-gutters {
  border-right-color: rgb(232 68 122 / 0.16);
  background: #120e19;
}

#section-blog #blog-post-form .CodeMirror-linenumber {
  color: rgb(190 174 218 / 0.52);
}

#section-blog #blog-post-form .CodeMirror-focused {
  border-color: rgb(232 68 122 / 0.58);
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.1);
}

#section-blog #blog-post-form .blog-html-validation {
  min-height: 1.25rem;
  color: rgb(190 174 218 / 0.76);
  font-size: 0.72rem;
  line-height: 1.5;
}

#section-blog #blog-post-form .blog-html-validation[data-state='success'] {
  color: #5ee5a5;
}

#section-blog #blog-post-form .blog-html-validation[data-state='error'] {
  color: #ff8a9b;
}

#section-blog #blog-post-form .blog-html-validation ul {
  margin: 0.35rem 0 0;
  padding-left: 1rem;
}

.rich-text-emoji-picker__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.rich-text-emoji-picker__selection {
  display: inline-flex;
  min-width: 2rem;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(232 68 122 / 0.2);
  border-radius: 0.5rem;
  background: rgb(10 8 15 / 0.64);
  font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', sans-serif;
  font-size: 1.2rem;
}

.rich-text-emoji-picker__search {
  width: 100%;
  min-height: 2.5rem;
  margin-bottom: 0.65rem;
  border: 1px solid rgb(232 68 122 / 0.22);
  border-radius: 0.6rem;
  background: rgb(10 8 15 / 0.72);
  color: #f0ecf8;
  padding: 0.55rem 0.7rem;
  outline: none;
}

.rich-text-emoji-picker__search:focus {
  border-color: rgb(232 68 122 / 0.58);
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.1);
}

.rich-text-emoji-picker__item {
  font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', sans-serif;
}

.rich-text-emoji-picker__item[aria-selected='true'] {
  border-color: rgb(232 68 122 / 0.6);
  background: rgb(232 68 122 / 0.2);
}

.rich-text-emoji-picker__empty {
  margin: 0.65rem 0 0;
  color: rgb(190 174 218 / 0.72);
  font-size: 0.72rem;
  text-align: center;
}

@media (max-width: 1180px) {
  #section-blog #blog-post-form .blog-editor-workspace {
    display: flex;
    flex-direction: column;
  }

  #section-blog #blog-post-form .blog-editor-settings-panel {
    border-top: 1px solid rgb(232 68 122 / 0.15);
    border-left: 0;
  }

  #section-blog #blog-post-form .blog-editor-settings-group__content {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #section-blog #blog-post-form .blog-editor-settings-group__content > * {
    min-width: 0;
  }
}

@media (max-width: 700px) {
  #section-blog #blog-post-form .blog-editor-settings-group__content {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #section-blog #blog-post-form .blog-publication-state {
    grid-template-columns: minmax(0, 1fr);
  }

  #section-blog #blog-post-form .blog-editor-toolbar-shell {
    display: flex;
    padding-inline: 0.55rem;
  }

  #section-blog #blog-post-form #blog-post-editor-toolbar,
  #section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar.ql-snow {
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
    overflow: visible !important;
  }

  #section-blog #blog-post-form .blog-editor-mode-tabs {
    width: 100%;
    margin: 0.35rem 0 0;
    justify-content: flex-start;
  }

  #section-blog #blog-post-form .blog-html-editor-heading {
    align-items: stretch;
    flex-direction: column;
  }
}

/* Blog components: visible activation, public-like preview, and Home gallery parity. */

#section-blog #blog-post-form .blog-component-activation-zone {
  position: relative;
  z-index: 3;
  display: flex;
  width: calc(100% - 1rem);
  min-height: 2.15rem;
  margin: 0.5rem;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  border: 1px dashed rgb(232 68 122 / 0.58);
  border-radius: 0.55rem;
  background: rgb(10 8 15 / 0.84);
  color: rgb(240 236 248 / 0.78);
  cursor: pointer;
  font-family: var(--font-body, 'Montserrat', sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.25;
  padding: 0.4rem 0.7rem;
  text-align: center;
}

#section-blog #blog-post-form .blog-component-activation-zone:hover,
#section-blog #blog-post-form .blog-component-activation-zone:focus-visible {
  border-color: rgb(232 68 122 / 0.9);
  background: rgb(232 68 122 / 0.12);
  color: #ffb0ca;
  outline: none;
}

#section-blog #blog-post-form .blog-component-activation-zone svg {
  width: 1rem;
  height: 1rem;
  flex: 0 0 1rem;
}

#section-blog #blog-post-form .blog-embed > .blog-component-activation-zone {
  position: absolute;
  top: 0;
  left: 0;
}

#section-blog #blog-post-form .blog-embed {
  position: relative;
  padding-top: 3.15rem;
  border: 1px dashed rgb(232 68 122 / 0.3);
  border-radius: 1rem;
  background: rgb(10 8 15 / 0.35);
}

#section-blog #blog-post-form .blog-embed.is-active,
#section-blog #blog-post-form .md3-featured-gallery-placeholder.is-active {
  border-color: rgb(232 68 122 / 0.82);
}

#section-blog #blog-post-form .md3-featured-gallery-placeholder > .blog-component-activation-zone {
  position: absolute;
  top: 0;
  left: 0;
}

.blog-media-resize-overlay {
  border-style: dashed;
}

.blog-gallery-component-dialog {
  width: min(34rem, calc(100vw - 2rem));
  border: 0;
  border-radius: 1rem;
  background: transparent;
  color: #f0ecf8;
  padding: 0;
}

.blog-gallery-component-dialog::backdrop {
  background: rgb(0 0 0 / 0.76);
  backdrop-filter: blur(6px);
}

.blog-gallery-component-dialog__surface {
  display: grid;
  gap: 1rem;
  border: 1px solid rgb(232 68 122 / 0.24);
  border-radius: 1rem;
  background: rgb(22 18 31 / 0.98);
  padding: 1.25rem;
  box-shadow: 0 26px 70px -28px rgb(0 0 0 / 0.96);
}

.blog-gallery-component-dialog__heading h3,
.blog-gallery-component-dialog__heading p {
  margin: 0;
}

.blog-gallery-component-dialog__heading h3 {
  color: #f0ecf8;
  font-size: 1.15rem;
}

.blog-gallery-component-dialog__heading p {
  margin-top: 0.35rem;
  color: rgb(190 174 218 / 0.76);
  font-size: 0.75rem;
  line-height: 1.5;
}

.blog-gallery-component-dialog__surface > .field-outlined {
  display: grid;
  gap: 0.4rem;
  color: rgb(218 210 229 / 0.82);
  font-size: 0.75rem;
}

.blog-gallery-component-dialog__surface input,
.blog-gallery-component-dialog__surface textarea {
  width: 100%;
  border: 1px solid rgb(232 68 122 / 0.2);
  border-radius: 0.7rem;
  background: rgb(10 8 15 / 0.7);
  color: #f0ecf8;
  padding: 0.7rem 0.8rem;
  outline: none;
}

.blog-gallery-component-dialog__surface input:focus,
.blog-gallery-component-dialog__surface textarea:focus {
  border-color: rgb(232 68 122 / 0.68);
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.12);
}

.blog-gallery-component-dialog__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.65rem;
}

#section-blog #blog-post-form .blog-editor-preview-shell {
  width: 100%;
  min-height: 32rem;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.14);
  border-radius: 1rem;
  background: rgb(14 11 20 / 0.96);
}

#section-blog #blog-post-form .blog-editor-preview-hero {
  position: relative;
  display: grid;
  min-height: 14rem;
  place-items: end start;
  overflow: hidden;
  background: linear-gradient(135deg, rgb(32 24 43), rgb(10 8 15));
  padding: clamp(1.25rem, 4vw, 2.5rem);
}

#section-blog #blog-post-form .blog-editor-preview-hero__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

#section-blog #blog-post-form .blog-editor-preview-hero::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 20%, rgb(8 6 12 / 0.9) 100%);
  content: '';
}

#section-blog #blog-post-form .blog-editor-preview-hero__title {
  position: relative;
  z-index: 1;
  max-width: 42rem;
  margin: 0;
  color: #fff;
  font-family: UnifrakturMaguntia, cursive;
  font-size: clamp(2rem, 6vw, 3.75rem);
  font-weight: 400;
  line-height: 1.05;
}

#section-blog #blog-post-form .blog-editor-preview-lead,
#section-blog #blog-post-form .blog-editor-preview-shell > .public-post-content {
  width: min(100% - 2rem, 45rem);
  margin-right: auto;
  margin-left: auto;
}

#section-blog #blog-post-form .blog-editor-preview-lead {
  margin-top: 1.5rem;
  margin-bottom: 0;
  color: rgb(240 236 248 / 0.76);
  font-family: Merriweather, Georgia, serif;
  font-size: 0.9rem;
  line-height: 1.75;
}

#section-blog #blog-post-form .blog-editor-preview-shell > .public-post-content {
  padding-top: 1.25rem;
  padding-bottom: 2.5rem;
}

/* The post reuses the exact Home gallery visual contract. */

html[data-app-context='post'] .home-album-card {
  margin-bottom: 2rem;
  overflow: hidden;
  border: 1px solid rgb(var(--color-accent) / 0.16);
  border-radius: 1rem;
  background: rgb(var(--color-secondary) / 0.76);
  box-shadow: none;
  backdrop-filter: blur(8px);
}

html[data-app-context='post'] .home-album-card__title {
  margin: 0;
  padding: 1.25rem 1.25rem 0.25rem;
  color: rgb(var(--color-tertiary-text) / var(--color-tertiary-text-alpha, 1));
  font-family: UnifrakturMaguntia, cursive;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.2;
}

html[data-app-context='post'] .home-album-card__description {
  margin: 0;
  padding: 0 1.25rem 0.75rem;
  color: rgb(var(--color-tertiary-text) / 0.62);
  font-family: Merriweather, Georgia, serif;
  font-size: 0.8rem;
  line-height: 1.6;
}

html[data-app-context='post'] .home-album-grid {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.25rem;
  padding: 0.25rem;
}

html[data-app-context='post'] .home-album-tile {
  position: relative;
  width: 100%;
  aspect-ratio: 2 / 3;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0.375rem;
  background: transparent;
  padding: 0;
  box-shadow: none;
  cursor: zoom-in;
}

html[data-app-context='post'] .home-album-tile__image {
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  border: 0;
  border-radius: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

html[data-app-context='post'] .home-album-tile__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(0 0 0 / 0.5);
  opacity: 0;
  pointer-events: none;
  transition: opacity 250ms ease;
}

html[data-app-context='post'] .home-album-tile:hover .home-album-tile__overlay,
html[data-app-context='post'] .home-album-tile:focus-visible .home-album-tile__overlay {
  opacity: 1;
}

html[data-app-context='post'] .home-album-tile__icon {
  width: 1.375rem;
  height: 1.375rem;
  color: #fff;
  opacity: 1;
}

html[data-app-context='post'] #post-gallery-modal {
  padding: 1rem !important;
  background: rgb(0 0 0 / 0.96) !important;
  backdrop-filter: blur(8px) !important;
}

html[data-app-context='post'] #post-gallery-modal .swiper {
  width: 100% !important;
  max-width: min(100vw, 72rem) !important;
  height: min(80vh, 48rem) !important;
  max-height: 80vh !important;
}

html[data-app-context='post'] #post-gallery-modal .swiper-slide {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}

html[data-app-context='post'] #post-gallery-modal .public-gallery-modal__image {
  display: block !important;
  width: auto !important;
  max-width: min(100%, 72rem) !important;
  height: auto !important;
  max-height: 78vh !important;
  margin: auto !important;
  border: 0 !important;
  border-radius: 0.75rem !important;
  background: transparent !important;
  box-shadow: none !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

html[data-app-context='post'] #post-gallery-close-btn,
html[data-app-context='post'] #post-gallery-modal .swiper-button-prev,
html[data-app-context='post'] #post-gallery-modal .swiper-button-next {
  width: 2.5rem !important;
  height: 2.5rem !important;
  border: 1px solid rgb(255 255 255 / 0.15) !important;
  border-radius: 999px !important;
  background: rgb(255 255 255 / 0.08) !important;
  color: #fff !important;
  box-shadow: none !important;
}

html[data-app-context='post'] #post-gallery-modal .swiper-button-prev,
html[data-app-context='post'] #post-gallery-modal .swiper-button-next {
  top: 50% !important;
  width: 2.25rem !important;
  height: 2.25rem !important;
  margin-top: -1.125rem !important;
}

html[data-app-context='post'] #post-gallery-modal .swiper-button-prev::after,
html[data-app-context='post'] #post-gallery-modal .swiper-button-next::after {
  font-size: 0.875rem !important;
  font-weight: 700 !important;
}

html[data-app-context='post'] #post-gallery-photo-description {
  max-width: min(100%, 42rem);
  min-height: 1.25rem;
  margin-top: 1rem;
  color: rgb(240 236 248 / 0.72);
  font-family: Merriweather, Georgia, serif;
  font-size: 0.8125rem;
  line-height: 1.5;
}

html[data-app-context='post'] #post-gallery-photo-counter {
  margin-top: 0.25rem;
  color: rgb(191 191 191 / 0.5);
  font-size: 0.75rem;
}

/* Final toolbar sizing contract: H, Fn and Sz share height, border and baseline. */

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label,
#section-blog #blog-post-form .blog-editor-font-control,
#section-blog #blog-post-form .blog-editor-size-control {
  height: 2.125rem !important;
  min-height: 2.125rem !important;
  border-radius: 0.5rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button {
  width: 2.125rem !important;
  min-width: 2.125rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header {
  width: 4rem !important;
  min-width: 4rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label {
  width: 4rem !important;
  justify-content: flex-start !important;
  gap: 0.35rem;
  border: 1px solid rgb(232 68 122 / 0.18) !important;
  background: rgb(10 8 15 / 0.54) !important;
  padding: 0 0.45rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label::before {
  color: #ff75a4 !important;
  content: 'H' !important;
  font-size: 0.68rem !important;
  line-height: 1 !important;
}

#section-blog #blog-post-form .blog-editor-font-control,
#section-blog #blog-post-form .blog-editor-size-control {
  box-sizing: border-box;
  gap: 0.3rem !important;
  border: 1px solid rgb(232 68 122 / 0.18) !important;
  background: rgb(10 8 15 / 0.54) !important;
  padding-left: 0.45rem !important;
}

#section-blog #blog-post-form .blog-editor-font-control__label,
#section-blog #blog-post-form .blog-editor-size-control__label {
  min-width: 1.15rem;
  color: #ff75a4;
  font-size: 0.68rem;
  line-height: 1;
  text-align: center;
}

#section-blog #blog-post-form .blog-editor-font-control__select,
#section-blog #blog-post-form .blog-editor-size-control__select,
#section-blog #blog-post-form .blog-editor-size-control__input {
  height: 2rem !important;
  min-height: 2rem !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;
  font-size: 0.68rem !important;
}

/* Blog editor: selected formatting values and standalone photo controls. */

#section-blog #blog-post-form [data-blog-font-family][data-mixed='true'],
#section-blog #blog-post-form [data-blog-size-preset][data-mixed='true'],
#section-blog #blog-post-form [data-blog-editor-font-size][data-mixed='true'] {
  color: rgb(190 174 218 / 0.7) !important;
  font-style: italic;
}

.blog-image-options-dialog__surface {
  width: min(94vw, 42rem);
}

.blog-image-options-dialog__dimensions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.blog-image-options-dialog__size-hint,
.blog-image-options-dialog__validation {
  margin: -0.25rem 0 0;
  color: rgb(190 174 218 / 0.76);
  font-size: 0.72rem;
  line-height: 1.45;
}

.blog-image-options-dialog__validation {
  color: #ff9fba;
}

.blog-image-options-dialog__toggles {
  display: grid;
  gap: 0.65rem;
}

.blog-image-options-dialog__toggle {
  display: flex;
  min-height: 3.5rem;
  align-items: center;
  gap: 0.75rem;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.75rem;
  background: rgb(10 8 15 / 0.52);
  padding: 0.65rem 0.8rem;
  cursor: pointer;
}

.blog-image-options-dialog__toggle input {
  width: 1.1rem;
  height: 1.1rem;
  flex: 0 0 1.1rem;
  accent-color: #e8447a;
}

.blog-image-options-dialog__toggle > span {
  display: grid;
  gap: 0.12rem;
}

.blog-image-options-dialog__toggle strong {
  color: #f0ecf8;
  font-size: 0.8rem;
}

.blog-image-options-dialog__toggle small {
  color: rgb(190 174 218 / 0.72);
  font-size: 0.68rem;
}

.ql-render .blog-content-image-block {
  position: relative;
  isolation: isolate;
}

.ql-render .blog-content-image-block > .blog-content-image:not([style*='width']) {
  width: 100%;
}

.ql-render .blog-content-image-caption {
  position: relative;
  z-index: 2;
  margin-top: 0.65rem;
  color: rgb(var(--color-tertiary-text) / 0.7);
  font-size: 0.78rem;
  font-style: italic;
  line-height: 1.5;
  text-align: inherit;
}

.ql-render .blog-content-image-block[data-blog-watermark='true']::after {
  position: absolute;
  z-index: 1;
  inset: var(--blog-watermark-margin, 12px);
  background-image: var(--blog-watermark-image, none);
  background-position: var(--blog-watermark-position, center center);
  background-repeat: var(--blog-watermark-repeat, no-repeat);
  background-size: var(--blog-watermark-size, 28%);
  content: '';
  opacity: var(--blog-watermark-opacity, 0.35);
  pointer-events: none;
}

html[data-app-context='post'] .blog-content-image-block--fullscreen > .blog-content-image {
  cursor: zoom-in;
}

html[data-app-context='post'] .blog-content-image-block--fullscreen > .blog-content-image:focus-visible {
  outline: 3px solid rgb(var(--color-accent) / 0.82);
  outline-offset: 4px;
}

/* A nested code element must inherit the dark code-block surface. */

.ql-render pre code,
.ql-render pre code *,
.ql-editor pre code,
.ql-editor pre code * {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit !important;
  padding: 0 !important;
}

/* Public post hero: full-bleed editorial image with a readable blurred title surface. */

html[data-app-context='post'] {
  --public-post-reading-width: 48rem;
  --public-post-gutter: clamp(1.125rem, 5vw, 4rem);
}

html[data-app-context='post'] .public-post-hero {
  position: relative;
  display: grid;
  min-height: clamp(34rem, 72svh, 46rem);
  overflow: hidden;
  margin: 0 !important;
  isolation: isolate;
  background: #0d0b12;
}

html[data-app-context='post'] .public-post-hero__figure,
html[data-app-context='post'] .public-post-topbar,
html[data-app-context='post'] .public-post-hero__content {
  grid-area: 1 / 1;
}

html[data-app-context='post'] .public-post-hero__figure {
  z-index: 0;
  width: 100% !important;
  height: 100% !important;
  min-height: clamp(34rem, 72svh, 46rem) !important;
  max-height: none !important;
  margin: 0 !important;
}

html[data-app-context='post'] .public-post-hero__figure img {
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

html[data-app-context='post'] .public-post-hero__scrim {
  background:
    linear-gradient(90deg, rgb(5 4 8 / 0.82) 0%, rgb(5 4 8 / 0.18) 32%, rgb(5 4 8 / 0.12) 68%, rgb(5 4 8 / 0.68) 100%),
    linear-gradient(180deg, rgb(5 4 8 / 0.54) 0%, transparent 26%, rgb(5 4 8 / 0.18) 48%, rgb(5 4 8 / 0.94) 100%) !important;
}

html[data-app-context='post'] .public-post-topbar {
  position: relative;
  z-index: 4;
  align-self: start;
  display: flex;
  width: min(100%, 72rem);
  margin: 0 auto;
  align-items: center;
  justify-content: flex-start;
  padding: 1.35rem clamp(1.125rem, 4vw, 3rem) 4rem;
  background: linear-gradient(180deg, rgb(5 4 8 / 0.62), transparent);
}

html[data-app-context='post'] .public-post-back-link {
  color: rgb(255 255 255 / 0.82);
}

html[data-app-context='post'] .public-post-hero__content {
  position: relative;
  z-index: 3;
  align-self: end;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(5rem, 12vh, 8rem) var(--public-post-gutter) clamp(1.5rem, 4vh, 2.75rem) !important;
  background: linear-gradient(180deg, transparent 0%, rgb(5 4 8 / 0.38) 18%, rgb(5 4 8 / 0.78) 58%, rgb(5 4 8 / 0.9) 100%);
  text-align: center;
  backdrop-filter: blur(5px);
}

html[data-app-context='post'] .public-post-eyebrow {
  margin: 0 0 0.85rem;
  color: rgb(var(--color-accent) / 1);
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

html[data-app-context='post'] .public-post-title {
  max-width: 20ch !important;
  margin: 0 auto 1.25rem !important;
  color: #fff !important;
  font-size: clamp(2.35rem, 5.2vw, 4.6rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.025em !important;
  text-wrap: balance;
  text-shadow: 0 3px 24px rgb(0 0 0 / 0.74) !important;
}

html[data-app-context='post'] .public-post-meta {
  justify-content: center;
  margin-bottom: 1.3rem !important;
}

html[data-app-context='post'] .public-post-meta__badge {
  color: rgb(255 255 255 / 0.78) !important;
}

html[data-app-context='post'] .public-post-breadcrumbs {
  width: min(100%, var(--public-post-reading-width));
  margin: 0 auto !important;
  border-top: 1px solid rgb(255 255 255 / 0.18);
  padding-top: 1.15rem !important;
  color: rgb(255 255 255 / 0.68) !important;
  text-align: left;
}

html[data-app-context='post'] .public-post-breadcrumbs ol {
  justify-content: flex-start;
}

html[data-app-context='post'] .public-post-breadcrumbs a,
html[data-app-context='post'] .public-post-breadcrumbs [aria-current='page'] {
  color: inherit;
}

html[data-app-context='post'] .public-post-body {
  position: relative;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(2.75rem, 6vw, 4.5rem) var(--public-post-gutter) clamp(4rem, 8vw, 6.5rem) !important;
  border-top: 1px solid rgb(var(--color-accent) / 0.12) !important;
  background:
    radial-gradient(circle at 50% -9rem, rgb(var(--color-accent) / 0.14), transparent 30rem),
    linear-gradient(180deg, #0d0b12 0%, rgb(10 8 15 / 0.98) 12rem, #0d0b12 100%) !important;
}

html[data-app-context='post'] .public-post-body > .space-y-8 {
  position: relative;
  z-index: 1;
  width: min(100%, var(--public-post-reading-width));
  margin-right: auto;
  margin-left: auto;
}

html[data-app-context='post'] .public-post-content {
  margin-right: 0;
  margin-left: 0;
  padding: clamp(1.35rem, 3.5vw, 2.35rem);
  border-color: rgb(var(--color-accent) / 0.11);
  border-radius: 1.25rem;
  background:
    linear-gradient(145deg, rgb(var(--color-secondary) / 0.38), rgb(var(--color-primary) / 0.16)),
    rgb(9 7 13 / 0.9);
  box-shadow:
    0 1px 0 rgb(255 255 255 / 0.025) inset,
    0 28px 72px -56px rgb(0 0 0 / 0.96);
}

html[data-app-context='post'] #post-hero-figure.hidden ~ .public-post-topbar,
html[data-app-context='post'] #post-hero-figure.hidden ~ .post-hero-title-wrap {
  grid-area: 1 / 1;
}

html[data-app-context='post'] #post-hero-figure.hidden ~ .post-hero-title-wrap {
  margin: 0 !important;
}

@media (max-width: 640px) {
  .blog-image-options-dialog__dimensions {
    grid-template-columns: 1fr;
  }

  html[data-app-context='post'] .public-post-hero,
  html[data-app-context='post'] .public-post-hero__figure {
    min-height: clamp(32rem, 72svh, 40rem) !important;
  }

  html[data-app-context='post'] .public-post-topbar {
    padding: 1rem 1.125rem 3rem;
  }

  html[data-app-context='post'] .public-post-hero__content {
    padding: 5rem 1.125rem 1.4rem !important;
  }

  html[data-app-context='post'] .public-post-title {
    font-size: clamp(2rem, 10vw, 3rem) !important;
  }

  html[data-app-context='post'] .public-post-meta {
    gap: 0.55rem 0.85rem !important;
  }

  html[data-app-context='post'] .public-post-breadcrumbs {
    font-size: 0.7rem;
  }

  html[data-app-context='post'] .public-post-body {
    padding: 2.35rem 1.125rem 4rem !important;
  }

  html[data-app-context='post'] .public-post-content {
    padding: 1.25rem;
    border-radius: 1rem;
  }
}

/* Blog editor V4: exact toolbar baseline, accessible tooltips and post parity. */

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar.ql-snow,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-formats,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label {
  vertical-align: middle !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-formats,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label {
  align-self: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  transform: none !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.35rem !important;
  line-height: 1 !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-color,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-background {
  height: 2.125rem !important;
  min-height: 2.125rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-color,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-background,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-color .ql-picker-label,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-background .ql-picker-label {
  width: 2.125rem !important;
  min-width: 2.125rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label {
  height: 2.125rem !important;
  min-height: 2.125rem !important;
  padding: 0 0.45rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar [data-tooltip] {
  position: relative;
}

#section-blog #blog-post-form #blog-post-editor-toolbar [data-tooltip]:not(select):not(input)::after {
  position: absolute;
  z-index: 200;
  top: calc(100% + 0.5rem);
  left: 50%;
  width: -moz-max-content;
  width: max-content;
  max-width: 14rem;
  border: 1px solid rgb(232 68 122 / 0.28);
  border-radius: 0.42rem;
  background: rgb(8 6 12 / 0.98);
  box-shadow: 0 10px 26px rgb(0 0 0 / 0.42);
  color: #f0ecf8;
  content: attr(data-tooltip);
  font-family: var(--font-body, 'Montserrat', sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.25;
  opacity: 0;
  padding: 0.38rem 0.5rem;
  pointer-events: none;
  text-align: center;
  transform: translate(-50%, -0.2rem);
  transition: opacity 120ms ease, transform 120ms ease;
  white-space: normal;
}

#section-blog #blog-post-form #blog-post-editor-toolbar [data-tooltip]:not(select):not(input):hover::after,
#section-blog #blog-post-form #blog-post-editor-toolbar [data-tooltip]:not(select):not(input):focus-visible::after {
  opacity: 1;
  transform: translate(-50%, 0);
}

/* Code blocks stay readable in the editor, internal preview and published post. */

.ql-render pre,
.ql-render pre.ql-syntax,
.ql-render .ql-code-block-container,
.ql-editor pre.ql-syntax,
.ql-editor .ql-code-block-container {
  overflow-x: auto;
  border: 1px solid rgb(232 68 122 / 0.2) !important;
  border-radius: 0.7rem !important;
  background: #09070d !important;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.035);
  color: #f1eaf7 !important;
  padding: 1rem 1.1rem !important;
  font-family: 'Fira Code', 'Cascadia Code', Consolas, monospace !important;
  line-height: 1.65 !important;
  -moz-tab-size: 2;
    -o-tab-size: 2;
       tab-size: 2;
}

.ql-render :not(pre) > code,
.ql-editor :not(pre) > code {
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.32rem;
  background: rgb(9 7 13 / 0.9);
  color: #ffb2cc;
  padding: 0.08em 0.32em;
}

/* Font choices authored in Quill remain visible in every rendering surface. */

.ql-render .ql-font-montserrat,
html[data-app-context='post'] .public-post-content .ql-font-montserrat {
  font-family: 'Montserrat', 'DM Sans', Arial, sans-serif !important;
}

.ql-render .ql-font-merriweather,
html[data-app-context='post'] .public-post-content .ql-font-merriweather {
  font-family: 'Merriweather', Georgia, serif !important;
}

.ql-render .ql-font-cormorant-garamond,
html[data-app-context='post'] .public-post-content .ql-font-cormorant-garamond {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}

.ql-render .ql-font-unifrakturmaguntia,
html[data-app-context='post'] .public-post-content .ql-font-unifrakturmaguntia {
  font-family: 'UnifrakturMaguntia', 'Cormorant Garamond', cursive !important;
}

#section-blog #blog-post-form .blog-editor-preview-shell[data-layout-background='true'] {
  background-clip: padding-box;
}

#section-blog #blog-post-form .blog-editor-preview-shell[data-layout-background='true'] > .blog-editor-preview-lead,
#section-blog #blog-post-form .blog-editor-preview-shell[data-layout-background='true'] > .public-post-content {
  border-radius: 0.85rem;
  background: rgb(9 7 13 / 0.76);
  backdrop-filter: blur(8px);
}

/* Poll component in the editor and its library selector. */

#section-blog #blog-post-form .blog-poll-placeholder {
  position: relative;
  display: flex;
  min-height: 9rem;
  margin: 1.5rem 0;
  align-items: center;
  gap: 1rem;
  overflow: hidden;
  border: 1px dashed rgb(232 68 122 / 0.48);
  border-radius: 1rem;
  background: rgb(16 12 23 / 0.92);
  color: #f0ecf8;
  padding: 3.65rem 1.2rem 1.2rem;
}

#section-blog #blog-post-form .blog-poll-placeholder > .blog-component-activation-zone {
  position: absolute;
  top: 0;
  left: 0;
}

#section-blog #blog-post-form .blog-poll-placeholder__icon,
.blog-media-library-card__poll-icon {
  display: inline-flex;
  width: 3rem;
  height: 3rem;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.8rem;
  background: rgb(232 68 122 / 0.14);
  color: #ff75a4;
}

#section-blog #blog-post-form .blog-poll-placeholder__icon svg,
.blog-media-library-card__poll-icon svg {
  width: 1.4rem;
  height: 1.4rem;
}

#section-blog #blog-post-form .blog-poll-placeholder__body {
  display: grid;
  min-width: 0;
  gap: 0.28rem;
}

#section-blog #blog-post-form .blog-poll-placeholder__badge,
#section-blog #blog-post-form .blog-poll-placeholder__meta {
  color: rgb(190 174 218 / 0.76);
  font-size: 0.68rem;
}

#section-blog #blog-post-form .blog-poll-placeholder__question {
  overflow: hidden;
  font-size: 1rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.blog-media-library-card--poll {
  display: flex;
  min-height: 10rem;
  align-items: center;
  justify-content: center;
  padding: 1rem 1rem 4rem;
}

.blog-media-library-card--poll .blog-media-library-card__overlay {
  padding-top: 2rem;
}

/* Interactive poll embedded inside a published post. */

.post-poll-card {
  position: relative;
  display: grid;
  gap: 1rem;
  margin: 2rem 0;
  overflow: hidden;
  border: 1px solid rgb(var(--color-accent) / 0.22);
  border-radius: 1rem;
  background:
    radial-gradient(circle at 100% 0, rgb(var(--color-accent) / 0.13), transparent 38%),
    rgb(var(--color-secondary) / 0.84);
  padding: clamp(1rem, 3vw, 1.5rem);
}

.post-poll-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.post-poll-card__eyebrow {
  color: rgb(var(--color-accent) / 1);
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.post-poll-card__status {
  border: 1px solid rgb(var(--color-tertiary-text) / 0.14);
  border-radius: 999px;
  color: rgb(var(--color-tertiary-text) / 0.7);
  padding: 0.28rem 0.55rem;
  font-size: 0.65rem;
}

.post-poll-card__status--active {
  border-color: rgb(42 183 117 / 0.32);
  background: rgb(42 183 117 / 0.1);
  color: #6ceab0;
}

.post-poll-card__question {
  margin: 0 !important;
  color: rgb(var(--color-tertiary-text) / 1) !important;
  font-family: 'Playfair Display', 'Cormorant Garamond', Georgia, serif !important;
  font-size: clamp(1.2rem, 3vw, 1.65rem) !important;
  line-height: 1.3 !important;
}

.post-poll-card__options {
  display: grid;
  gap: 0.55rem;
}

.post-poll-option {
  position: relative;
  width: 100%;
  min-height: 3rem;
  overflow: hidden;
  border: 1px solid rgb(var(--color-tertiary-text) / 0.12);
  border-radius: 0.7rem;
  background: rgb(var(--color-surface) / 0.62);
  color: rgb(var(--color-tertiary-text) / 0.94);
  padding: 0;
  text-align: left;
}

.post-poll-option--active {
  cursor: pointer;
}

.post-poll-option--active:hover,
.post-poll-option--active:focus-visible {
  border-color: rgb(var(--color-accent) / 0.58);
  background: rgb(var(--color-accent) / 0.1);
  outline: none;
}

.post-poll-option__bar {
  position: absolute;
  inset: 0 auto 0 0;
  background: linear-gradient(90deg, rgb(var(--color-accent) / 0.24), rgb(var(--color-accent) / 0.1));
}

.post-poll-option__row {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: 3rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.65rem 0.85rem;
}

.post-poll-option__text {
  font-weight: 650;
}

.post-poll-option__result {
  color: rgb(var(--color-accent) / 1);
  font-size: 0.72rem;
  font-weight: 800;
}

.post-poll-card__footer {
  color: rgb(var(--color-tertiary-text) / 0.62);
  font-size: 0.72rem;
}

.post-poll-card--unavailable {
  color: rgb(var(--color-tertiary-text) / 0.7);
}

/* The featured image fades into the page instead of ending on a hard edge. */

html[data-app-context='post'] .public-post-hero__figure img {
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 70%, rgb(0 0 0 / 0.9) 80%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 70%, rgb(0 0 0 / 0.9) 80%, transparent 100%);
}

html[data-app-context='post'] .public-post-content img.home-album-tile__image {
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

@media (max-width: 640px) {
  html[data-app-context='post'] .home-album-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-app-context='post'] #post-gallery-modal {
    padding: 0.75rem !important;
  }

  html[data-app-context='post'] #post-gallery-close-btn {
    top: 1rem !important;
    right: 1rem !important;
  }
}

/*
  Blog authoring media contracts:
  - the title and formatting controls share one sticky stack;
  - a standalone image remains a plain resizable image block;
  - an inserted album reuses the exact public Home gallery components.
*/

#section-blog #blog-post-form.blog-editor-form {
  overflow: visible !important;
}

#section-blog #blog-post-form .blog-editor-sticky-header {
  position: sticky;
  top: 4.5rem;
  z-index: 29;
  overflow: visible;
  background: rgb(22 18 31 / 0.98);
  box-shadow: 0 16px 30px -26px rgb(0 0 0 / 0.94);
}

#section-blog #blog-post-form .blog-editor-sticky-header .blog-editor-topbar,
#section-blog #blog-post-form .blog-editor-sticky-header .blog-editor-toolbar-shell {
  position: relative;
  top: auto;
}

.ql-render .blog-content-image-block {
  display: block;
  max-width: 100%;
  margin: 1.75rem 0;
  border: 0;
  background: transparent;
  padding: 0;
}

.ql-render .blog-content-image-block > .blog-content-image {
  display: block;
  max-width: 100%;
  height: auto;
  margin-top: 0;
  margin-bottom: 0;
}

.ql-render .home-album-card {
  margin: 2.2rem 0;
}

.ql-render .home-album-card__title {
  margin: 0;
}

.ql-render .home-album-grid {
  margin-bottom: 0;
  padding-left: 0;
}

.ql-render .home-album-tile {
  margin: 0;
}

.ql-render .home-album-tile__image {
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  border: 0;
  border-radius: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 760px) {
  #section-blog #blog-post-form .blog-editor-sticky-header {
    top: 4.5rem;
  }
}

/* Admin profile focal point, compact editor controls and featured galleries */

#section-profile-appearance #profile-image-preview {
  --profile-image-preview-size: clamp(12rem, 24vw, 16rem) !important;
  position: relative;
  width: var(--profile-image-preview-size) !important;
  height: var(--profile-image-preview-size) !important;
  min-width: var(--profile-image-preview-size) !important;
  min-height: var(--profile-image-preview-size) !important;
  flex: 0 0 var(--profile-image-preview-size) !important;
  cursor: grab;
  touch-action: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

#section-profile-appearance .profile-image-editor-stage {
  --profile-image-preview-size: clamp(12rem, 24vw, 16rem);
  display: flex;
  width: calc(var(--profile-image-preview-size) + 3.5rem);
  min-width: calc(var(--profile-image-preview-size) + 3.5rem);
  flex: 0 0 calc(var(--profile-image-preview-size) + 3.5rem);
  align-items: center;
  justify-content: center;
  gap: 0.85rem;
}

#section-profile-appearance #profile-image-preview:active {
  cursor: grabbing;
}

#section-profile-appearance #profile-image-preview:focus-visible {
  outline: 3px solid rgb(232 68 122 / 0.52);
  outline-offset: 4px;
}

#section-profile-appearance #profile-image-preview-image {
  position: absolute;
  display: block;
  max-width: none;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

#section-profile-appearance #profile-image-preview-image.hidden {
  display: none !important;
}

.profile-image-zoom-control {
  position: relative;
  display: grid;
  width: 2.65rem;
  height: var(--profile-image-preview-size, 16rem);
  min-height: 12rem;
  flex: 0 0 2.65rem;
  grid-template-rows: auto minmax(0, 1fr) auto;
  justify-items: center;
  gap: 0.55rem;
  color: rgb(190 174 218 / 0.9);
}

.profile-image-zoom-control__icon {
  display: inline-flex;
  grid-row: 1;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 999px;
  background: rgb(18 14 28 / 0.9);
  color: rgb(var(--admin-primary) / 1);
}

.profile-image-zoom-control__icon svg {
  width: 1rem;
  height: 1rem;
}

#profile-image-zoom {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(var(--profile-image-preview-size, 16rem) - 5rem);
  min-width: 7rem;
  height: 1.5rem;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  accent-color: rgb(var(--admin-primary) / 1);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: ns-resize;
  direction: ltr;
  transform: translate(-50%, -50%) rotate(-90deg);
  transform-origin: center;
  writing-mode: horizontal-tb;
}

#profile-image-zoom::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.42rem;
  border: 1px solid rgb(232 68 122 / 0.32);
  border-radius: 999px;
  background: rgb(240 236 248 / 0.22);
}

#profile-image-zoom::-webkit-slider-thumb {
  width: 1.15rem;
  height: 1.15rem;
  margin-top: -0.42rem;
  border: 2px solid rgb(18 14 28);
  border-radius: 999px;
  -webkit-appearance: none;
          appearance: none;
  background: rgb(var(--admin-primary) / 1);
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.2);
}

#profile-image-zoom::-moz-range-track {
  width: 100%;
  height: 0.42rem;
  border: 1px solid rgb(232 68 122 / 0.32);
  border-radius: 999px;
  background: rgb(240 236 248 / 0.22);
}

#profile-image-zoom::-moz-range-thumb {
  width: 1.15rem;
  height: 1.15rem;
  border: 2px solid rgb(18 14 28);
  border-radius: 999px;
  background: rgb(var(--admin-primary) / 1);
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.2);
}

#profile-image-zoom:focus-visible {
  border-radius: 999px;
  outline: 3px solid rgb(232 68 122 / 0.36);
  outline-offset: 3px;
}

#profile-image-zoom:disabled {
  cursor: not-allowed;
  opacity: 0.38;
}

#profile-image-zoom-value {
  position: relative;
  z-index: 1;
  grid-row: 3;
  min-width: 2.5rem;
  border: 1px solid rgb(232 68 122 / 0.16);
  border-radius: 999px;
  background: rgb(18 14 28 / 0.82);
  color: #f0ecf8;
  font-size: 0.72rem;
  font-weight: 750;
  line-height: 1;
  padding: 0.42rem 0.5rem;
  text-align: center;
}

#section-profile-appearance #profile-image-preview[data-dirty='true'] {
  box-shadow:
    0 0 0 3px rgb(232 68 122 / 0.18),
    0 20px 54px -25px rgb(232 68 122 / 0.95) !important;
}

#section-profile-appearance #profile-image-upload.sr-only {
  position: absolute !important;
  width: 1px !important;
  min-width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

.profile-image-focal-marker {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid rgb(255 255 255 / 0.78);
  border-radius: 999px;
  box-shadow: 0 0 0 1px rgb(10 8 15 / 0.55);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: opacity 160ms ease;
}

.profile-image-focal-marker::before,
.profile-image-focal-marker::after {
  position: absolute;
  background: rgb(255 255 255 / 0.82);
  content: '';
}

.profile-image-focal-marker::before {
  top: 50%;
  left: -0.45rem;
  width: 3.15rem;
  height: 1px;
}

.profile-image-focal-marker::after {
  top: -0.45rem;
  left: 50%;
  width: 1px;
  height: 3.15rem;
}

#section-profile-appearance #profile-image-preview:hover .profile-image-focal-marker,
#section-profile-appearance #profile-image-preview:focus-visible .profile-image-focal-marker,
#section-profile-appearance #profile-image-preview[data-dragging='true'] .profile-image-focal-marker {
  opacity: 1;
}

.profile-image-position-hint {
  max-width: 38rem;
  margin: 0;
  color: rgb(190 174 218 / 0.78);
  font-size: 0.75rem;
  line-height: 1.55;
}

.profile-identity-card__header {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  margin-bottom: 1.35rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgb(232 68 122 / 0.12);
}

.profile-identity-card__header p {
  max-width: 50rem;
  margin: 0;
  color: rgb(190 174 218 / 0.76);
  font-size: 0.82rem;
  line-height: 1.55;
}

.profile-identity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}

.profile-identity-field {
  min-width: 0;
  margin: 0 !important;
}

.profile-identity-field--wide {
  grid-column: 1 / -1;
}

#section-profile-appearance .field-outlined--profile {
  min-height: 3.65rem;
  border-color: rgb(232 68 122 / 0.18);
  border-radius: 0.8rem;
  background: rgb(18 14 28 / 0.72);
  color: #f0ecf8;
  padding: 1.45rem 1rem 0.55rem;
}

#section-profile-appearance .field-outlined--profile:hover {
  border-color: rgb(232 68 122 / 0.32);
}

#section-profile-appearance .field-outlined--profile:focus {
  border-color: rgb(var(--admin-primary) / 0.72);
  background: rgb(18 14 28 / 0.94);
  box-shadow: 0 0 0 3px rgb(var(--admin-primary) / 0.13);
}

#section-profile-appearance .profile-identity-field > .field-outlined-label {
  left: 1rem;
  top: 1.08rem;
  color: rgb(190 174 218 / 0.72);
  font-size: 0.82rem;
}

#section-profile-appearance .profile-identity-field > .field-outlined--profile:not(:-moz-placeholder) + .field-outlined-label {
  top: 0.43rem;
  color: rgb(var(--admin-primary) / 0.96);
  font-size: 0.68rem;
}

#section-profile-appearance .profile-identity-field > .field-outlined--profile:focus + .field-outlined-label,
#section-profile-appearance .profile-identity-field > .field-outlined--profile:not(:placeholder-shown) + .field-outlined-label {
  top: 0.43rem;
  color: rgb(var(--admin-primary) / 0.96);
  font-size: 0.68rem;
}

#section-profile-appearance .profile-identity-field > .field-outlined-helper {
  margin: 0.45rem 0 0;
  color: rgb(190 174 218 / 0.68);
  font-size: 0.72rem;
  line-height: 1.45;
  opacity: 1;
}

@media (max-width: 760px) {
  .profile-identity-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .profile-identity-field--wide {
    grid-column: auto;
  }

  #section-profile-appearance .profile-image-editor-stage {
    --profile-image-preview-size: min(68vw, 15rem);
    width: calc(var(--profile-image-preview-size) + 3.25rem);
    min-width: 0;
    max-width: 100%;
    flex-basis: auto;
    justify-content: center;
  }

  #section-profile-appearance #profile-image-preview {
    --profile-image-preview-size: min(68vw, 15rem) !important;
  }
}

#section-blog #blog-post-form .blog-editor-toolbar-shell {
  display: block;
  padding: 0.38rem 0.65rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar.ql-snow,
#section-blog #blog-post-form .blog-editor-toolbar {
  display: flex !important;
  flex-flow: row wrap !important;
  gap: 0.3rem 0 !important;
}

#section-blog #blog-post-form .blog-editor-toolbar__group,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-formats {
  min-height: 2rem;
  flex-wrap: nowrap;
  margin-right: 0.18rem;
  padding-right: 0.18rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label,
#section-blog #blog-post-form .blog-editor-tool-button {
  width: 2rem;
  min-width: 2rem;
  height: 2rem;
  min-height: 2rem;
  border-radius: 0.48rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header {
  width: 3.65rem !important;
  min-width: 3.65rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label {
  width: 3.65rem !important;
  justify-content: flex-start;
  gap: 0.25rem;
  border: 1px solid rgb(232 68 122 / 0.2);
  padding: 0 0.45rem;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label::before {
  content: 'Tt' !important;
  font-size: 0.72rem;
  letter-spacing: -0.03em;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-options {
  width: 10rem;
  border: 1px solid rgb(232 68 122 / 0.25);
  border-radius: 0.65rem;
  background: rgb(18 14 28 / 0.98);
  padding: 0.35rem;
  box-shadow: 0 18px 42px rgb(0 0 0 / 0.42);
}

#section-blog #blog-post-form .blog-editor-size-control__select {
  width: 3.45rem;
  padding-right: 0.9rem;
}

#section-blog #blog-post-form .blog-editor-size-control__input {
  width: 3rem;
}

#section-blog #blog-post-form .blog-editor-mode-tabs {
  width: 100%;
  margin: 0 0 0.75rem;
  padding: 0;
}

#section-blog #blog-post-form .blog-editor-mode-tabs__inner {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#section-blog #blog-post-form .blog-editor-mode-tab {
  min-height: 2.35rem;
  justify-content: center;
}

#section-blog #blog-post-form .blog-editor-toolbar-shell--inactive,
#section-blog #blog-post-form .blog-editor-utilitybar--inactive {
  opacity: 0.46;
}

#section-blog #blog-post-form .blog-editor-toolbar-shell--inactive *,
#section-blog #blog-post-form .blog-editor-utilitybar--inactive * {
  cursor: not-allowed !important;
}

#section-blog #blog-post-form input[readonly] {
  border-style: dashed;
  color: rgb(190 174 218 / 0.78);
  cursor: default;
}

#section-blog #blog-post-form input[type='datetime-local'] {
  color-scheme: dark;
}

#section-blog #blog-post-form input[type='datetime-local']::-webkit-calendar-picker-indicator {
  width: 1.15rem;
  height: 1.15rem;
  opacity: 0.92;
  filter: invert(82%) sepia(20%) saturate(888%) hue-rotate(286deg) brightness(106%);
  cursor: pointer;
}

.rich-text-emoji-picker__system {
  display: flex;
  gap: 0.45rem;
  margin-top: 0.7rem;
}

.rich-text-emoji-picker__system-input {
  min-width: 0;
  min-height: 2.4rem;
  flex: 1 1 auto;
  border: 1px solid rgb(232 68 122 / 0.22);
  border-radius: 0.6rem;
  background: rgb(10 8 15 / 0.72);
  color: #f0ecf8;
  padding: 0.5rem 0.65rem;
  font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', sans-serif;
}

.rich-text-emoji-picker__system-button {
  min-height: 2.4rem;
  border: 1px solid rgb(232 68 122 / 0.4);
  border-radius: 0.6rem;
  background: rgb(232 68 122 / 0.16);
  color: #ffb5cf;
  padding: 0.5rem 0.75rem;
  font-size: 0.72rem;
  font-weight: 800;
}

.blog-media-library-modal {
  z-index: 120;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.blog-media-library-modal:not(.hidden) {
  display: flex;
}

.blog-media-library-modal__content {
  width: min(64rem, 96vw);
  max-height: min(48rem, 90vh);
  overflow: auto;
}

.blog-media-library-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.blog-media-library-modal__header h3 {
  margin: 0;
  color: #f0ecf8;
  font-size: 1.25rem;
}

.blog-media-library-modal__header p {
  margin: 0.25rem 0 0;
  color: rgb(190 174 218 / 0.78);
  font-size: 0.78rem;
}

.blog-media-library-modal__filter {
  display: grid;
  gap: 0.35rem;
  margin-bottom: 1rem;
  color: rgb(218 210 229 / 0.86);
  font-size: 0.75rem;
}

.blog-media-library-modal__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
  gap: 0.8rem;
}

.blog-media-library-card {
  position: relative;
  min-height: 10rem;
  overflow: hidden;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 0.85rem;
  background: rgb(10 8 15 / 0.75);
  text-align: left;
}

.blog-media-library-card:hover,
.blog-media-library-card:focus-visible {
  border-color: rgb(232 68 122 / 0.62);
  outline: none;
  box-shadow: 0 0 0 3px rgb(232 68 122 / 0.12);
}

.blog-media-library-card > img {
  width: 100%;
  height: 10rem;
  -o-object-fit: cover;
     object-fit: cover;
}

.blog-media-library-card__overlay {
  position: absolute;
  inset: auto 0 0;
  display: grid;
  gap: 0.15rem;
  background: linear-gradient(transparent, rgb(5 4 8 / 0.95));
  color: #fff;
  padding: 2.5rem 0.7rem 0.65rem;
}

.blog-media-library-card__overlay strong,
.blog-media-library-card__overlay small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.blog-media-library-modal__empty {
  color: rgb(190 174 218 / 0.78);
  padding: 2rem 0;
  text-align: center;
}

.md3-featured-gallery-placeholder {
  position: relative;
  min-height: 15rem;
  margin: 1.5rem 0;
  overflow: hidden;
  border: 2px dashed rgb(232 68 122 / 0.48);
  border-radius: 1rem;
  background: #100c17;
}

.md3-featured-gallery-placeholder__image {
  width: 100%;
  height: 15rem;
  opacity: 0.48;
  -o-object-fit: cover;
     object-fit: cover;
}

.md3-featured-gallery-placeholder__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.3rem;
  background: linear-gradient(rgb(8 5 12 / 0.2), rgb(8 5 12 / 0.82));
  color: #fff;
  text-align: center;
}

.md3-featured-gallery-placeholder__badge,
.md3-featured-gallery__eyebrow {
  color: #ff75a4;
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.md3-featured-gallery-placeholder__title {
  font-size: clamp(1.15rem, 3vw, 1.75rem);
}

.md3-featured-gallery-placeholder__count {
  color: rgb(255 255 255 / 0.75);
  font-size: 0.75rem;
}

.md3-featured-gallery {
  margin: 2.2rem 0;
  border: 1px solid rgb(232 68 122 / 0.18);
  border-radius: 1rem;
  background: rgb(18 14 28 / 0.7);
  padding: clamp(0.75rem, 2vw, 1.25rem);
}

.md3-featured-gallery__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.md3-featured-gallery__title {
  margin: 0.2rem 0 0;
  font-size: clamp(1.25rem, 3vw, 1.9rem);
}

.md3-featured-gallery__count {
  color: rgb(218 210 229 / 0.72);
  font-size: 0.75rem;
  white-space: nowrap;
}

.md3-featured-gallery__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
}

.md3-featured-gallery__item {
  position: relative;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: 0.75rem;
  background: #08060c;
  cursor: zoom-in;
}

.md3-featured-gallery__image {
  width: 100%;
  aspect-ratio: 4 / 3;
  -o-object-fit: cover;
     object-fit: cover;
}

.md3-featured-gallery__caption {
  position: absolute;
  inset: auto 0 0;
  overflow: hidden;
  background: linear-gradient(transparent, rgb(5 4 8 / 0.92));
  color: #fff;
  padding: 2rem 0.65rem 0.55rem;
  font-size: 0.7rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.md3-featured-gallery__empty {
  margin: 0;
  color: rgb(190 174 218 / 0.78);
  padding: 1.5rem;
  text-align: center;
}

@media (min-width: 720px) {
  .md3-featured-gallery__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  #section-profile-appearance #profile-image-preview {
    --profile-image-preview-size: min(72vw, 15rem) !important;
  }

  #section-blog #blog-post-form .blog-editor-mode-tabs {
    margin-top: 0;
  }

  .blog-media-library-modal__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .blog-media-library-card,
  .blog-media-library-card > img {
    min-height: 8rem;
    height: 8rem;
  }
}

/* Keep every toolbar selector on the same final visual baseline. */

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button,
#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker-label,
#section-blog #blog-post-form .blog-editor-font-control,
#section-blog #blog-post-form .blog-editor-size-control {
  box-sizing: border-box;
  height: 2.125rem !important;
  min-height: 2.125rem !important;
  border-radius: 0.5rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar button {
  width: 2.125rem !important;
  min-width: 2.125rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header {
  width: 4rem !important;
  min-width: 4rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label {
  width: 4rem !important;
  justify-content: flex-start !important;
  gap: 0.35rem;
  border: 1px solid rgb(232 68 122 / 0.18) !important;
  background: rgb(10 8 15 / 0.54) !important;
  padding: 0 0.45rem !important;
}

#section-blog #blog-post-form #blog-post-editor-toolbar .ql-toolbar .ql-picker.ql-header .ql-picker-label::before {
  color: #ff75a4 !important;
  content: 'H' !important;
  font-size: 0.68rem !important;
  line-height: 1 !important;
}

#section-blog #blog-post-form .blog-editor-font-control,
#section-blog #blog-post-form .blog-editor-size-control {
  gap: 0.3rem !important;
  border: 1px solid rgb(232 68 122 / 0.18) !important;
  background: rgb(10 8 15 / 0.54) !important;
  padding-left: 0.45rem !important;
}

#section-blog #blog-post-form .blog-editor-font-control__label,
#section-blog #blog-post-form .blog-editor-size-control__label {
  min-width: 1.15rem;
  color: #ff75a4;
  font-size: 0.68rem;
  line-height: 1;
  text-align: center;
}

#section-blog #blog-post-form .blog-editor-font-control__select,
#section-blog #blog-post-form .blog-editor-size-control__select,
#section-blog #blog-post-form .blog-editor-size-control__input {
  height: 2rem !important;
  min-height: 2rem !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;
  font-size: 0.68rem !important;
}

@media (min-width: 768px){

  .public-language-switcher > .md\:text-xl {
    display: none;
  }
}

.hover\:-translate-y-1:hover{
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-105:hover{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:bg-error\/10:hover{
  background-color: rgb(var(--md-sys-color-error) / 0.1);
}

.hover\:bg-secondary\/30:hover{
  background-color: rgb(var(--color-secondary) / 0.3);
}

.hover\:bg-opacity-80:hover{
  --tw-bg-opacity: 0.8;
}

.hover\:text-primary:hover{
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity, 1));
}

.hover\:text-tertiary:hover{
  --tw-text-opacity: 1;
  color: rgb(var(--md-sys-color-tertiary) / var(--tw-text-opacity, 1));
}

.hover\:underline:hover{
  text-decoration-line: underline;
}

.hover\:brightness-110:hover{
  --tw-brightness: brightness(1.1);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.hover\:brightness-125:hover{
  --tw-brightness: brightness(1.25);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.focus\:not-sr-only:focus{
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.focus\:absolute:focus{
  position: absolute;
}

.focus\:left-4:focus{
  left: 1rem;
}

.focus\:top-4:focus{
  top: 1rem;
}

.focus\:border-primary:focus{
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.focus\:outline-none:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-1:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-2:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-accent:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--color-accent) / var(--tw-ring-opacity, 1));
}

.focus\:ring-primary:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(var(--color-primary) / var(--tw-ring-opacity, 1));
}

.focus\:ring-primary\/30:focus{
  --tw-ring-color: rgb(var(--color-primary) / 0.3);
}

.focus\:ring-offset-2:focus{
  --tw-ring-offset-width: 2px;
}

.group:focus-within .group-focus-within\:opacity-100{
  opacity: 1;
}

.group:hover .group-hover\:opacity-100{
  opacity: 1;
}

@media (min-width: 640px){

  .sm\:left-auto{
    left: auto;
  }

  .sm\:right-8{
    right: 2rem;
  }

  .sm\:max-w-md{
    max-width: 28rem;
  }

  .sm\:max-w-xs{
    max-width: 20rem;
  }

  .sm\:flex-1{
    flex: 1 1 0%;
  }

  .sm\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sm\:flex-row{
    flex-direction: row;
  }

  .sm\:items-start{
    align-items: flex-start;
  }

  .sm\:items-center{
    align-items: center;
  }

  .sm\:justify-end{
    justify-content: flex-end;
  }

  .sm\:justify-between{
    justify-content: space-between;
  }

  .sm\:gap-3{
    gap: 0.75rem;
  }

  .sm\:gap-4{
    gap: 1rem;
  }
}

@media (min-width: 768px){

  .md\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .md\:col-span-4{
    grid-column: span 4 / span 4;
  }

  .md\:col-start-2{
    grid-column-start: 2;
  }

  .md\:my-16{
    margin-top: 4rem;
    margin-bottom: 4rem;
  }

  .md\:mb-0{
    margin-bottom: 0px;
  }

  .md\:inline-flex{
    display: inline-flex;
  }

  .md\:h-32{
    height: 8rem;
  }

  .md\:max-h-full{
    max-height: 100%;
  }

  .md\:w-32{
    width: 8rem;
  }

  .md\:w-auto{
    width: auto;
  }

  .md\:max-w-\[45\%\]{
    max-width: 45%;
  }

  .md\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .md\:flex-row{
    flex-direction: row;
  }

  .md\:items-center{
    align-items: center;
  }

  .md\:justify-start{
    justify-content: flex-start;
  }

  .md\:justify-between{
    justify-content: space-between;
  }

  .md\:p-8{
    padding: 2rem;
  }

  .md\:px-10{
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .md\:py-10{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .md\:text-5xl{
    font-size: 3rem;
    line-height: 1;
  }

  .md\:text-7xl{
    font-size: 4.5rem;
    line-height: 1;
  }

  .md\:text-base{
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .md\:text-xl{
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1024px){

  .lg\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .lg\:w-auto{
    width: auto;
  }

  .lg\:max-w-lg{
    max-width: 32rem;
  }

  .lg\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .lg\:flex-row{
    flex-direction: row;
  }

  .lg\:items-end{
    align-items: flex-end;
  }

  .lg\:justify-between{
    justify-content: space-between;
  }
}

@media (min-width: 1280px){

  .xl\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .xl\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .xl\:grid-cols-\[minmax\(0\2c 0\.85fr\)_minmax\(0\2c 1\.4fr\)\]{
    grid-template-columns: minmax(0,0.85fr) minmax(0,1.4fr);
  }
}
