/* foto.fasolirabaioli.com — login restyle. Injected by efesto's nginx (sub_filter),
   structural selectors only: Ente's class names are hashed per build. */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300;9..144,500&family=Inter:wght@400;500&display=swap');

main:has(img[src*="auth-ducky"]) {
  background: #0d0f0e !important;
  min-height: 100vh;
}
main:has(img[src*="auth-ducky"]) > div {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  max-width: none !important;
  width: 100% !important;
  min-height: 100vh;
  margin: 0 !important;
}
/* left panel: kill the marketing, keep the bird */
main > div > div:has(img[src*="auth-ducky"]) {
  background: #0d0f0e !important;
  color: #e9e6df !important;
  position: relative;
}
main > div > div:has(img[src*="auth-ducky"]) ul,
main > div > div:has(img[src*="auth-ducky"]) p,
main > div > div:has(img[src*="auth-ducky"]) > div > div:first-child svg { display: none !important; }
main > div > div:has(img[src*="auth-ducky"]) h1 {
  font: 300 clamp(44px, 5.2vw, 76px)/1 'Fraunces', Georgia, serif !important;
  letter-spacing: -0.02em;
  color: #e9e6df !important;
  font-size: 0 !important;
}
main > div > div:has(img[src*="auth-ducky"]) h1::before {
  content: 'Fasoli Rabaioli';
  display: block;
  font: 300 clamp(44px, 5.2vw, 76px)/1 'Fraunces', Georgia, serif;
  letter-spacing: -0.02em;
}
main > div > div:has(img[src*="auth-ducky"]) h1::after {
  content: 'Le foto di casa, dal 2000.';
  display: block;
  margin-top: 18px;
  font: 400 15px/1.5 'Inter', system-ui, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #00c600;
}
main > div > div:has(img[src*="auth-ducky"]) > div { padding: 56px !important; }
main > div > div:has(img[src*="auth-ducky"]) img[src*="auth-ducky"] {
  width: min(70%, 620px) !important;
  max-width: none !important;
  height: auto !important;
  filter: drop-shadow(0 30px 40px rgba(0,0,0,.45));
}
/* right: the form */
main:has(img[src*="auth-ducky"]) section {
  background: #f4f2ec !important;
  border-radius: 0 !important;
  display: flex; align-items: center; justify-content: center;
}
main:has(img[src*="auth-ducky"]) section h1 {
  font: 500 34px/1.1 'Fraunces', Georgia, serif !important;
  color: #14181a !important;
}
main:has(img[src*="auth-ducky"]) section p { color: #6b6f6a !important; font-family: 'Inter', system-ui, sans-serif !important; }
main:has(img[src*="auth-ducky"]) section label { font-family: 'Inter', system-ui, sans-serif !important; letter-spacing: .04em; text-transform: uppercase; font-size: 11px !important; color: #6b6f6a !important; }
main:has(img[src*="auth-ducky"]) section input { font-family: 'Inter', system-ui, sans-serif !important; }
main:has(img[src*="auth-ducky"]) section button[type="submit"] {
  background: #0d0f0e !important; color: #f4f2ec !important;
  border-radius: 4px !important; font-family: 'Inter', system-ui, sans-serif !important; letter-spacing: .06em; text-transform: uppercase; font-size: 13px !important;
}
main:has(img[src*="auth-ducky"]) section button[type="submit"]:hover { background: #00a300 !important; }
/* registrations are closed: no signup link */
main:has(img[src*="auth-ducky"]) section form > div:last-child > div > div:first-child { display: none !important; }
main:has(img[src*="auth-ducky"]) section form > div:last-child > div > div:last-child { color: #a3a69f !important; font: 400 11px/1 'Inter', system-ui, sans-serif !important; letter-spacing: .06em; }

/* --- pass 2: the green + noise texture lives on an inner layer --- */
main > div > div:has(img[src*="auth-ducky"]),
main > div > div:has(img[src*="auth-ducky"]) > div,
main > div > div:has(img[src*="auth-ducky"]) > div > div {
  background: #0d0f0e !important;
  background-image: none !important;
}
main > div > div:has(img[src*="auth-ducky"])::before,
main > div > div:has(img[src*="auth-ducky"])::after,
main > div > div:has(img[src*="auth-ducky"]) > div::before,
main > div > div:has(img[src*="auth-ducky"]) > div::after { display: none !important; }
main > div > div:has(img[src*="auth-ducky"]) > div {
  display: flex !important; flex-direction: column !important; justify-content: space-between !important;
  min-height: 100vh; box-sizing: border-box;
}
main > div > div:has(img[src*="auth-ducky"]) div:has(> img[src*="auth-ducky"]) {
  width: min(78%, 640px) !important; max-width: none !important; margin: 0 !important; align-self: flex-start;
}
main > div > div:has(img[src*="auth-ducky"]) img[src*="auth-ducky"] { width: 100% !important; }
main > div > div:has(img[src*="auth-ducky"]) h1::after { color: #7ee07e; }

/* --- pass 3: half/half split, bigger bird --- */
main > div > div:has(img[src*="auth-ducky"]) { flex: 0 0 48% !important; width: 48% !important; max-width: 48% !important; }
main:has(img[src*="auth-ducky"]) section { flex: 1 1 auto !important; }
main > div > div:has(img[src*="auth-ducky"]) div:has(> img[src*="auth-ducky"]) { width: auto !important; height: auto !important; max-height: none !important; }
main > div > div:has(img[src*="auth-ducky"]) img[src*="auth-ducky"] {
  width: min(88%, 680px) !important; max-width: none !important; height: auto !important; max-height: none !important; filter: none !important;
}
main > div > div:has(img[src*="auth-ducky"]) > div { padding: 64px 64px 0 64px !important; }

/* --- pass 4: bird to full column width, title a touch lower --- */
main > div > div:has(img[src*="auth-ducky"]) div:has(> img[src*="auth-ducky"]) { width: 100% !important; }
main > div > div:has(img[src*="auth-ducky"]) img[src*="auth-ducky"] { width: 100% !important; max-width: 720px !important; }
main > div > div:has(img[src*="auth-ducky"]) > div { padding: 96px 64px 0 64px !important; }
@media (max-width: 900px) {
  main > div > div:has(img[src*="auth-ducky"]) { width: 100% !important; max-width: 100% !important; flex-basis: auto !important; }
  main > div > div:has(img[src*="auth-ducky"]) > div { min-height: 0; padding: 40px 28px 0 28px !important; }
  main > div > div:has(img[src*="auth-ducky"]) img[src*="auth-ducky"] { max-width: 320px !important; }
}

/* --- pass 5: phone header = name + tagline, no bird --- */
@media (max-width: 900px) {
  main > div > div:has(img[src*="auth-ducky"]) { height: auto !important; min-height: 0 !important; }
  main > div > div:has(img[src*="auth-ducky"]) > div { display: block !important; padding: 36px 24px 28px 24px !important; }
  main > div > div:has(img[src*="auth-ducky"]) div:has(> img[src*="auth-ducky"]) { display: none !important; }
  main > div > div:has(img[src*="auth-ducky"]) h1::before { font-size: 38px; }
  main > div > div:has(img[src*="auth-ducky"]) h1::after { font-size: 11px; margin-top: 12px; white-space: nowrap; }
}

/* --- pass 6: every primary button dark, text links muted --- */
main:has(img[src*="auth-ducky"]) section form button:not(:has(svg)) {
  background: #0d0f0e !important; color: #f4f2ec !important; border-radius: 4px !important;
  font-family: 'Inter', system-ui, sans-serif !important; letter-spacing: .06em; text-transform: uppercase; font-size: 13px !important;
}
main:has(img[src*="auth-ducky"]) section form button:not(:has(svg)):hover { background: #00a300 !important; }
main:has(img[src*="auth-ducky"]) section form > div:last-child button[type="button"] { background: transparent !important; color: #6b6f6a !important; text-transform: none; letter-spacing: 0; font-size: 13px !important; }

/* ===== sidebar (drawer) ===== */
.MuiDrawer-paper { background: #f4f2ec !important; }
/* logo: magpie + name instead of the ente wordmark */
.MuiDrawer-paper > div > div:first-child > div:first-child svg { display: none !important; }
.MuiDrawer-paper > div > div:first-child > div:first-child {
  display: flex !important; align-items: center; gap: 12px; min-height: 44px;
  font: 500 19px/1 'Fraunces', Georgia, serif; color: #14181a; letter-spacing: -0.01em;
}
.MuiDrawer-paper > div > div:first-child > div:first-child::before {
  content: ''; width: 44px; height: 34px; flex: 0 0 auto;
  background: url('/images/auth-ducky.svg') no-repeat center / contain;
}
.MuiDrawer-paper > div > div:first-child > div:first-child::after { content: 'Fasoli Rabaioli'; }
/* storage card: dark, no marketing image, no plan line */
.MuiDrawer-paper img[src*="subscription-card-background"] { visibility: hidden; }
.MuiDrawer-paper div:has(> img[src*="subscription-card-background"]) { background: #0d0f0e !important; border-radius: 8px; overflow: hidden; }
.MuiDrawer-paper div:has(> img[src*="subscription-card-background"]) h3 { font: 500 24px/1.1 'Fraunces', Georgia, serif !important; }
.MuiDrawer-paper div:has(> img[src*="subscription-card-background"]) + div { display: none !important; }   /* "You are on a free plan" */
.MuiDrawer-paper button:has(> div > div > div > p:only-child):is(:has(p:not(:empty))) { }

/* ===== accent: dark teal instead of Ente green (MUI palette variables) ===== */
:root, [data-mui-color-scheme], .MuiCssBaseline-root {
  --mui-palette-accent-main: #0f8a7a !important;
  --mui-palette-accent-dark: #0b6b5f !important;
  --mui-palette-accent-light: #16a394 !important;
  --mui-palette-accent-mainChannel: 15 138 122 !important;
  --mui-palette-accent-darkChannel: 11 107 95 !important;
  --mui-palette-accent-lightChannel: 22 163 148 !important;
}
main > div > div:has(img[src*="auth-ducky"]) h1::after { color: #2fb3a0 !important; }
main:has(img[src*="auth-ducky"]) section button[type="submit"]:hover,
main:has(img[src*="auth-ducky"]) section form button:not(:has(svg)):hover { background: #0f8a7a !important; }
main:has(img[src*="auth-ducky"]) section input:focus, main:has(img[src*="auth-ducky"]) section .Mui-focused { border-color: #0f8a7a !important; }

/* ===== sidebar: always dark (Giobi uses the dark theme; a light drawer with light text was unreadable) ===== */
.MuiDrawer-paper { background: #0d0f0e !important; color: #e9e6df !important; }
.MuiDrawer-paper p, .MuiDrawer-paper h3, .MuiDrawer-paper button, .MuiDrawer-paper span, .MuiDrawer-paper svg { color: #e9e6df !important; }
.MuiDrawer-paper > div > div:first-child > div:first-child { color: #e9e6df !important; }
.MuiDrawer-paper button.MuiButton-contained { background: #171a18 !important; }
.MuiDrawer-paper button.MuiButton-contained:hover { background: #222623 !important; }
.MuiDrawer-paper div:has(> img[src*="subscription-card-background"]) { background: #10201d !important; }
.MuiDrawer-paper hr, .MuiDrawer-paper [class*="MuiDivider"] { border-color: #2a2e2b !important; }
