/* Made for LPHL - lphl.nekten.eu - by Nekten - lphl@nekten.eu - */
/* =============================================================================
   ntfy — injected by Apache (proxy/ntfy.conf) as /lphl/theme/ntfy.css, after the app's own styles
   =============================================================================
   palette: house — what the box runs today — earthy greens, orange with ink on it. Generated from themes/_palettes.json; edit the palette there, not here.
   The web app is React + MUI; its colours live in generated classes, so the sheet overrides the stable
   .Mui*-root classes rather than variables. Dark hangs off prefers-color-scheme: ntfy's own Theme setting
   defaults to "System" — leave it there, or the two disagree. Fonts and this file are same-origin under
   /lphl/ (see proxy/ntfy.conf): no CORS entry, no CSP change. Untested against the live app.
   ========================================================================== */
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 200 800; font-display: swap; src: url('/lphl/fonts/manrope-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 200 800; font-display: swap; src: url('/lphl/fonts/manrope-greek.woff2') format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; }
:root {
  --lphl-bg: #EDEFEA; --lphl-surface: #FFFFFF; --lphl-soft: #F6F6F6; --lphl-text: #16211A; --lphl-muted: #575F58;
  --lphl-accent: #FF9900; --lphl-accent-ink: #16211A; --lphl-accent-hover: #C77700; --lphl-accent-text: #7D4A00; --lphl-link: #2E6E6B;
  --lphl-tint: #FFE7C2; --lphl-on-tint: #5C3600; --lphl-line: rgba(22,33,26,.4); --lphl-hairline: rgba(22,33,26,.12);
}
@media (prefers-color-scheme: dark) { :root {
  --lphl-bg: #141A16; --lphl-surface: #1C231E; --lphl-soft: #2C332E; --lphl-text: #E6E9E3; --lphl-muted: #A7ABA5;
  --lphl-accent: #FF9900; --lphl-accent-ink: #16211A; --lphl-accent-hover: #FFB84D; --lphl-accent-text: #FFC061; --lphl-link: #6FAEA9;
  --lphl-tint: #5C3600; --lphl-on-tint: #FFD290; --lphl-line: rgba(230,233,227,.4); --lphl-hairline: rgba(230,233,227,.14);
} }
body, .MuiTypography-root, .MuiButton-root, .MuiInputBase-root, .MuiListItemText-primary, .MuiListItemText-secondary,
.MuiTab-root, .MuiChip-root, .MuiMenuItem-root, .MuiAlert-root, .MuiTooltip-tooltip { font-family: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans', sans-serif !important; }
body { background: var(--lphl-bg) !important; color: var(--lphl-text) !important; }
/* surfaces: flat, ruled — and the bar and drawer are the ground, not a colour */
.MuiPaper-root { background-color: var(--lphl-surface) !important; background-image: none !important; color: var(--lphl-text) !important; box-shadow: none !important; }
.MuiCard-root { border: 1px solid var(--lphl-hairline); }
.MuiDialog-paper, .MuiMenu-paper, .MuiPopover-paper, .MuiSnackbarContent-root { border: 2px solid var(--lphl-line); }
.MuiAppBar-root.MuiPaper-root { background-color: var(--lphl-bg) !important; color: var(--lphl-text) !important; border-bottom: 2px solid var(--lphl-line); }
.MuiAppBar-root .MuiIconButton-root, .MuiAppBar-root .MuiTypography-root { color: var(--lphl-text) !important; }
/* v0.9.220 (measured on lphl): the teal gradient is on the Toolbar inside the AppBar, not on the AppBar */
.MuiAppBar-root .MuiToolbar-root { background-image: none !important; background-color: transparent !important; }
/* v0.9.221 (measured): the main pane is main.MuiBox-root on MUI's #f5f5f5; the logo is img[alt="ntfy logo"] — swap it
   for the house mark, keep the title beside it (it becomes the topic name once one is open) */
main.MuiBox-root { background-color: var(--lphl-bg) !important; }
.MuiAppBar-root img[alt="ntfy logo"] { content: url('/lphl/theme/brand/mark.svg'); height: 28px !important; width: auto !important; }
@media (prefers-color-scheme: dark) { .MuiAppBar-root img[alt="ntfy logo"] { content: url('/lphl/theme/brand/mark-paper.svg'); } }
.MuiDrawer-paper { background-color: var(--lphl-bg) !important; border-right: 2px solid var(--lphl-line) !important; }
.MuiDivider-root { border-color: var(--lphl-hairline) !important; }
.MuiPaper-rounded, .MuiButton-root, .MuiChip-root, .MuiFab-root, .MuiOutlinedInput-root, .MuiAlert-root, .MuiDialog-paper,
.MuiMenu-paper, .MuiAvatar-root, .MuiTooltip-tooltip, .MuiSnackbarContent-root, .MuiLinearProgress-root, .MuiBadge-badge { border-radius: 0 !important; }
/* the accent, with its own ink; labels flush left, no shouting */
.MuiButton-containedPrimary, .MuiFab-primary { background-color: var(--lphl-accent) !important; color: var(--lphl-accent-ink) !important; box-shadow: none !important; }
.MuiButton-containedPrimary:hover, .MuiFab-primary:hover { background-color: var(--lphl-accent-hover) !important; }
.MuiButton-root { font-weight: 800 !important; text-transform: none !important; justify-content: flex-start; }
.MuiButton-textPrimary, .MuiButton-outlinedPrimary, .MuiIconButton-colorPrimary, .MuiLink-root, .MuiTab-root.Mui-selected,
.MuiInputLabel-root.Mui-focused, .MuiCheckbox-colorPrimary.Mui-checked, .MuiRadio-colorPrimary.Mui-checked,
.MuiSwitch-switchBase.Mui-checked, .MuiCircularProgress-colorPrimary { color: var(--lphl-accent-text) !important; }
.MuiButton-outlinedPrimary { border: 2px solid var(--lphl-text) !important; color: var(--lphl-text) !important; }
.MuiSwitch-switchBase.Mui-checked + .MuiSwitch-track, .MuiTabs-indicator, .MuiLinearProgress-barColorPrimary, .MuiSlider-track,
.MuiSlider-thumb { background-color: var(--lphl-accent) !important; }
.MuiSwitch-switchBase.Mui-checked .MuiSwitch-thumb { background-color: var(--lphl-accent) !important; }
.MuiBadge-colorPrimary { background-color: var(--lphl-accent) !important; color: var(--lphl-accent-ink) !important; }
.MuiChip-colorPrimary { background-color: var(--lphl-tint) !important; color: var(--lphl-on-tint) !important; }
a { color: var(--lphl-link); }
/* the subscription list */
.MuiListItemButton-root.Mui-selected, .MuiMenuItem-root.Mui-selected { background-color: color-mix(in srgb, var(--lphl-accent) 16%, transparent) !important; }
.MuiListItemButton-root.Mui-selected .MuiListItemText-primary { font-weight: 800; }
.MuiListItemButton-root:hover, .MuiMenuItem-root:hover { background-color: color-mix(in srgb, var(--lphl-text) 7%, transparent) !important; }
/* fields */
.MuiOutlinedInput-notchedOutline { border-color: var(--lphl-line) !important; }
.Mui-focused .MuiOutlinedInput-notchedOutline { border-color: var(--lphl-accent) !important; border-width: 2px !important; }
.MuiInputBase-root { background-color: var(--lphl-surface); }
*:focus-visible { outline: 2px solid var(--lphl-accent) !important; outline-offset: 2px; }
