@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@400;500;600;700&display=swap"); :root {  --color-primary-50: #f0fdfa;
--color-primary-100: #ccfbf1;
--color-primary-200: #99f6e4;
--color-primary-300: #5eead4;
--color-primary-400: #2dd4bf;
--color-primary-500: #14b8a6; --color-primary-600: #0d9488;
--color-primary-700: #0f766e;
--color-primary-800: #115e59;
--color-primary-900: #134e4a; --color-accent-300: #6ee7b7;
--color-accent-400: #34d399;
--color-accent-500: #10b981; --color-accent-600: #059669;
--color-accent-700: #047857; --color-slate-50: #f8fafc;
--color-slate-100: #f1f5f9;
--color-slate-200: #e2e8f0;
--color-slate-300: #cbd5e1;
--color-slate-400: #94a3b8;
--color-slate-500: #64748b;
--color-slate-600: #475569;
--color-slate-700: #334155;
--color-slate-800: #1e293b;
--color-slate-900: #0f172a; --color-success: #10b981;
--color-warning: #f59e0b;
--color-error: #ef4444;
--color-info: #3b82f6; --color-surface: #ffffff;
--color-surface-secondary: var(--color-slate-50);
--color-background: var(--color-primary-50); --color-text-primary: var(--color-slate-900);
--color-text-secondary: var(--color-slate-700);
--color-text-muted: var(--color-slate-500);
--color-text-disabled: var(--color-slate-400); --color-border: var(--color-slate-200);
--color-border-hover: var(--color-primary-400);
--color-border-focus: var(--color-primary-500);  --font-display: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
--font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
--font-mono: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', monospace; --text-xs: 0.75rem; --text-sm: 0.875rem; --text-base: 1rem; --text-lg: 1.125rem; --text-xl: 1.25rem; --text-2xl: 1.5rem; --text-3xl: 1.875rem; --text-4xl: 2.25rem; --text-5xl: 3rem;  --font-light: 300;
--font-normal: 400;
--font-medium: 500;
--font-semibold: 600;
--font-bold: 700; --leading-none: 1;
--leading-tight: 1.25;
--leading-snug: 1.375;
--leading-normal: 1.5;
--leading-relaxed: 1.625;
--leading-loose: 2; --tracking-tighter: -0.05em;
--tracking-tight: -0.025em;
--tracking-normal: 0;
--tracking-wide: 0.025em;
--tracking-wider: 0.05em;
--tracking-widest: 0.1em; --space-0: 0;
--space-px: 1px;
--space-0-5: 0.125rem; --space-1: 0.25rem; --space-1-5: 0.375rem; --space-2: 0.5rem; --space-2-5: 0.625rem; --space-3: 0.75rem; --space-3-5: 0.875rem; --space-4: 1rem; --space-5: 1.25rem; --space-6: 1.5rem; --space-7: 1.75rem; --space-8: 2rem; --space-9: 2.25rem; --space-10: 2.5rem; --space-11: 2.75rem; --space-12: 3rem; --space-14: 3.5rem; --space-16: 4rem; --space-20: 5rem; --space-24: 6rem;   --radius-none: 0;
--radius-sm: 0.375rem; --radius-md: 0.5rem; --radius-lg: 0.75rem; --radius-xl: 1rem; --radius-2xl: 1.5rem; --radius-3xl: 2rem; --radius-full: 9999px; --border-0: 0;
--border-1: 1px;
--border-2: 2px;
--border-4: 4px;
--border-8: 8px; --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.05);
--shadow-none: 0 0 #0000; --shadow-primary: 0 4px 12px rgba(13, 148, 136, 0.3);
--shadow-primary-lg: 0 10px 30px rgba(13, 148, 136, 0.4);
--shadow-accent: 0 4px 12px rgba(16, 185, 129, 0.3); --z-0: 0;
--z-10: 10;
--z-20: 20;
--z-30: 30;
--z-40: 40;
--z-50: 50;
--z-dropdown: 1000;
--z-sticky: 1020;
--z-fixed: 1030;
--z-modal-backdrop: 1040;
--z-modal: 1050;
--z-popover: 1060;
--z-tooltip: 1070;  --duration-75: 75ms;
--duration-100: 100ms;
--duration-150: 150ms;
--duration-200: 200ms;
--duration-300: 300ms;
--duration-500: 500ms;
--duration-700: 700ms;
--duration-1000: 1000ms; --ease-linear: linear;
--ease-in: cubic-bezier(0.4, 0, 1, 1);
--ease-out: cubic-bezier(0, 0, 0.2, 1);
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
--ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
--ease-smooth: cubic-bezier(0.4, 0, 0.2, 1); --transition-base: all var(--duration-200) var(--ease-smooth);
--transition-fast: all var(--duration-150) var(--ease-smooth);
--transition-slow: all var(--duration-300) var(--ease-smooth);
--transition-colors: color var(--duration-200) var(--ease-smooth),
background-color var(--duration-200) var(--ease-smooth),
border-color var(--duration-200) var(--ease-smooth);
--transition-transform: transform var(--duration-200) var(--ease-smooth);
--transition-opacity: opacity var(--duration-200) var(--ease-smooth); --breakpoint-sm: 640px;
--breakpoint-md: 768px;
--breakpoint-lg: 1024px;
--breakpoint-xl: 1280px;
--breakpoint-2xl: 1536px;  --touch-target-min: 44px; --player-height-mobile: 140px;
--player-height-desktop: 100px; --card-padding: var(--space-4);
--card-gap: var(--space-4);
} .dark,
html.dark { --color-surface: var(--color-slate-800);
--color-surface-secondary: var(--color-slate-900);
--color-background: var(--color-slate-900); --color-text-primary: var(--color-slate-50);
--color-text-secondary: var(--color-slate-200);
--color-text-muted: var(--color-slate-400);
--color-text-disabled: var(--color-slate-600); --color-border: var(--color-slate-700);
--color-border-hover: var(--color-primary-500);
--color-border-focus: var(--color-primary-400); --color-primary-main: var(--color-primary-400); --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.4), 0 1px 2px -1px rgba(0, 0, 0, 0.4);
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.4);
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.5);
--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.6), 0 8px 10px -6px rgba(0, 0, 0, 0.6);
} *,
*::before,
*::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html {
font-size: 16px;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
body {
font-family: var(--font-body);
font-size: var(--text-base);
line-height: var(--leading-normal);
color: var(--color-text-primary);
background-color: var(--color-background);
transition: background-color var(--duration-300) var(--ease-smooth),
color var(--duration-300) var(--ease-smooth);
} @keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@keyframes slideUp {
from {
transform: translateY(10px);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
@keyframes slideDown {
from {
transform: translateY(-10px);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
@keyframes slideInLeft {
from {
transform: translateX(-10px);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
@keyframes slideInRight {
from {
transform: translateX(10px);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
@keyframes scaleIn {
from {
transform: scale(0.95);
opacity: 0;
}
to {
transform: scale(1);
opacity: 1;
}
}
@keyframes pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
@keyframes pulseGentle {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.8;
}
}
@keyframes pulseDot {
0%, 100% {
opacity: 1;
transform: scale(1);
}
50% {
opacity: 0.5;
transform: scale(0.9);
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes bounce {
0%, 100% {
transform: translateY(0);
}
50% {
transform: translateY(-10px);
}
}
@keyframes shimmer {
0% {
background-position: -1000px 0;
}
100% {
background-position: 1000px 0;
}
} @keyframes pulseRing {
0% {
box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
}
70% {
box-shadow: 0 0 0 10px rgba(16, 185, 129, 0);
}
100% {
box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
}
}  .hidden {
display: none !important;
}
.block {
display: block !important;
}
.inline-block {
display: inline-block !important;
}
.flex {
display: flex !important;
}
.inline-flex {
display: inline-flex !important;
}
.grid {
display: grid !important;
} .invisible {
visibility: hidden !important;
}
.visible {
visibility: visible !important;
} .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;
} .not-sr-only {
position: static;
width: auto;
height: auto;
padding: 0;
margin: 0;
overflow: visible;
clip: auto;
white-space: normal;
} .pointer-events-none {
pointer-events: none !important;
}
.pointer-events-auto {
pointer-events: auto !important;
} .select-none {
user-select: none !important;
-webkit-user-select: none !important;
}
.select-text {
user-select: text !important;
-webkit-user-select: text !important;
} .tap-highlight-none {
-webkit-tap-highlight-color: transparent !important;
} .truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} .line-clamp-1 {
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
}
.line-clamp-2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.line-clamp-3 {
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
} .animate-fadeIn {
animation: fadeIn var(--duration-300) var(--ease-smooth);
}
.animate-slideUp {
animation: slideUp var(--duration-300) var(--ease-smooth);
}
.animate-slideDown {
animation: slideDown var(--duration-300) var(--ease-smooth);
}
.animate-scaleIn {
animation: scaleIn var(--duration-200) var(--ease-smooth);
}
.animate-pulse {
animation: pulse 2s var(--ease-in-out) infinite;
}
.animate-spin {
animation: spin 1s linear infinite;
} .transition-base {
transition: var(--transition-base);
}
.transition-fast {
transition: var(--transition-fast);
}
.transition-slow {
transition: var(--transition-slow);
}
.transition-colors {
transition: var(--transition-colors);
}
.transition-transform {
transition: var(--transition-transform);
}
.transition-opacity {
transition: var(--transition-opacity);
}
.transition-all {
transition: all var(--duration-200) var(--ease-smooth);
}
.transition-none {
transition: none !important;
}  *:focus:not(:focus-visible) {
outline: none;
} *:focus-visible {
outline: 2px solid var(--color-primary-500);
outline-offset: 2px;
} .focus-ring:focus-visible {
outline: none;
box-shadow: 0 0 0 3px var(--color-primary-200);
}
.dark .focus-ring:focus-visible {
box-shadow: 0 0 0 3px rgba(45, 212, 191, 0.3);
}  .custom-scrollbar::-webkit-scrollbar {
width: 8px;
height: 8px;
}
.custom-scrollbar::-webkit-scrollbar-track {
background: var(--color-slate-100);
border-radius: var(--radius-full);
}
.dark .custom-scrollbar::-webkit-scrollbar-track {
background: var(--color-slate-800);
}
.custom-scrollbar::-webkit-scrollbar-thumb {
background: var(--color-slate-300);
border-radius: var(--radius-full);
transition: background-color var(--duration-200);
}
.dark .custom-scrollbar::-webkit-scrollbar-thumb {
background: var(--color-slate-600);
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
background: var(--color-slate-400);
}
.dark .custom-scrollbar::-webkit-scrollbar-thumb:hover {
background: var(--color-slate-500);
} .scrollbar-thin {
scrollbar-width: thin;
scrollbar-color: var(--color-slate-300) var(--color-slate-100);
}
.dark .scrollbar-thin {
scrollbar-color: var(--color-slate-600) var(--color-slate-800);
} .scrollbar-hide {
-ms-overflow-style: none;
scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
display: none;
} .container {
width: 100%;
margin-left: auto;
margin-right: auto;
padding-left: var(--space-4);
padding-right: var(--space-4);
}
@media (min-width: 640px) {
.container {
max-width: 640px;
padding-left: var(--space-6);
padding-right: var(--space-6);
}
}
@media (min-width: 768px) {
.container {
max-width: 768px;
}
}
@media (min-width: 1024px) {
.container {
max-width: 1024px;
}
}
@media (min-width: 1280px) {
.container {
max-width: 1280px;
}
} @media print {
*,
*::before,
*::after {
background: transparent !important;
color: #000 !important;
box-shadow: none !important;
text-shadow: none !important;
}
a,
a:visited {
text-decoration: underline;
}
img {
page-break-inside: avoid;
}
h2,
h3,
p {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
}.station-card {
position: relative;
background: var(--color-surface);
border: var(--border-1) solid var(--color-border);
border-radius: var(--radius-2xl);
box-shadow: var(--shadow-md);
overflow: hidden;
transition: all var(--duration-300) var(--ease-smooth);
cursor: pointer;
padding: var(--space-4);
display: flex;
flex-direction: column;
gap: var(--space-3);
}
.dark .station-card {
background: var(--color-slate-800);
border-color: var(--color-slate-700);
}
.station-card:hover {
transform: translateY(-4px);
box-shadow: var(--shadow-xl);
border-color: var(--color-primary-400);
} .station-card__header {
position: relative;
display: flex;
align-items: flex-start;
gap: var(--space-3);
} .station-card__logo-container {
flex-shrink: 0;
width: 64px;
height: 64px;
border-radius: var(--radius-lg);
overflow: hidden;
background: linear-gradient(135deg, var(--color-slate-100), var(--color-slate-200));
display: flex;
align-items: center;
justify-content: center;
}
.dark .station-card__logo-container {
background: linear-gradient(135deg, var(--color-slate-700), var(--color-slate-800));
}
.station-card__logo {
width: 100%;
height: 100%;
object-fit: cover;
}
.station-card__logo-fallback {
font-size: 2.5rem;
color: var(--color-slate-400);
} .station-card__badges {
position: absolute;
top: 0;
right: 0;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: var(--space-2);
} .station-card__body {
flex: 1;
display: flex;
flex-direction: column;
gap: var(--space-1);
}
.station-card__name {
font-family: var(--font-display);
font-size: var(--text-lg);
font-weight: var(--font-bold);
color: var(--color-text-primary);
margin: 0;
line-height: var(--leading-tight);
}
.dark .station-card__name {
color: var(--color-slate-100);
}
.station-card__meta {
display: flex;
align-items: center;
gap: var(--space-2);
font-size: var(--text-xs);
color: var(--color-text-muted);
margin: 0;
}
.station-card__genre {
color: var(--color-text-secondary);
}
.station-card__separator {
color: var(--color-slate-400);
}
.station-card__location {
color: var(--color-text-secondary);
} .station-card__listeners {
display: flex;
align-items: center;
gap: var(--space-1-5);
font-size: var(--text-xs);
color: var(--color-text-muted);
margin-top: var(--space-0-5);
}
.station-card__listeners i {
font-size: var(--text-sm);
color: var(--color-primary-500);
} .station-card__actions {
display: flex;
gap: var(--space-2);
margin-top: var(--space-1);
}
.station-card__play-btn {
flex: 1;
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--space-2);
padding: var(--space-2-5) var(--space-4);
background: linear-gradient(135deg, var(--color-primary-500), var(--color-primary-600));
color: white;
border: none;
border-radius: var(--radius-lg);
font-size: var(--text-sm);
font-weight: var(--font-semibold);
cursor: pointer;
transition: all var(--duration-200) var(--ease-smooth);
box-shadow: var(--shadow-primary);
}
.station-card__play-btn:hover {
background: linear-gradient(135deg, var(--color-primary-600), var(--color-primary-700));
box-shadow: var(--shadow-primary-lg);
transform: translateY(-1px);
}
.station-card__play-btn:active {
transform: translateY(0);
}
.station-card__play-btn i {
font-size: var(--text-sm);
}
.station-card__fav-btn {
flex-shrink: 0;
display: inline-flex;
align-items: center;
justify-content: center;
padding: var(--space-2-5) var(--space-3);
background: transparent;
color: var(--color-slate-600);
border: var(--border-1) solid var(--color-slate-300);
border-radius: var(--radius-lg);
font-size: var(--text-sm);
font-weight: var(--font-semibold);
cursor: pointer;
transition: all var(--duration-200) var(--ease-smooth);
}
.dark .station-card__fav-btn {
color: var(--color-slate-300);
border-color: var(--color-slate-600);
}
.station-card__fav-btn:hover {
background: var(--color-slate-50);
border-color: var(--color-primary-500);
color: var(--color-primary-600);
}
.dark .station-card__fav-btn:hover {
background: var(--color-slate-700);
border-color: var(--color-primary-400);
color: var(--color-primary-400);
}
.station-card__fav-btn.is-favorite {
background: var(--color-primary-50);
border-color: var(--color-primary-500);
color: var(--color-primary-600);
}
.dark .station-card__fav-btn.is-favorite {
background: rgba(13, 148, 136, 0.2);
border-color: var(--color-primary-400);
color: var(--color-primary-400);
}
.station-card__fav-btn i {
font-size: var(--text-base);
} @media (max-width: 640px) {
.station-card {
padding: var(--space-4);
}
.station-card__logo-container {
width: 64px;
height: 64px;
}
.station-card__name {
font-size: var(--text-lg);
}
.station-card__actions {
flex-direction: column;
}
.station-card__fav-btn {
width: 100%;
}
} .station-card:focus-visible {
outline: 2px solid var(--color-primary-500);
outline-offset: 2px;
}
.station-card__play-btn:focus-visible,
.station-card__fav-btn:focus-visible {
outline: 2px solid var(--color-primary-500);
outline-offset: 2px;
} .station-card__play-btn.playing {
background: linear-gradient(135deg, #14b8a6, #0d9488) !important;
color: white !important;
box-shadow: 0 4px 12px rgba(20, 184, 166, 0.4) !important;
animation: pulse-playing 2s ease-in-out infinite;
}
@keyframes pulse-playing {
0%, 100% {
box-shadow: 0 4px 12px rgba(20, 184, 166, 0.4);
}
50% {
box-shadow: 0 4px 20px rgba(20, 184, 166, 0.6);
}
} @media (max-width: 768px) { .stations-grid {
grid-template-columns: repeat(2, 1fr) !important;
gap: 12px !important;
} .station-card {
flex-direction: column !important;
padding: 12px !important;
align-items: stretch !important;
} .station-card__header {
display: flex !important;
justify-content: space-between !important;
align-items: flex-start !important;
width: 100% !important;
margin-bottom: 12px !important;
order: -1 !important;
} .station-card__logo {
width: 80px !important;
height: 80px !important;
border-radius: 8px !important;
flex-shrink: 0 !important;
} .station-card__actions {
display: flex !important;
flex-direction: column !important;
gap: 8px !important;
align-items: flex-end !important;
} .station-card__play-btn {
width: 48px !important;
height: 48px !important;
min-width: 48px !important;
border-radius: 50% !important;
padding: 0 !important;
font-size: 16px !important;
background: linear-gradient(135deg, #14b8a6, #0d9488) !important;
color: white !important;
box-shadow: 0 4px 12px rgba(20, 184, 166, 0.3) !important;
}
.station-card__play-btn:hover {
transform: scale(1.05) !important;
box-shadow: 0 6px 16px rgba(20, 184, 166, 0.4) !important;
} .station-card__fav-btn {
width: 48px !important;
height: 48px !important;
min-width: 48px !important;
border-radius: 50% !important;
padding: 0 !important;
font-size: 16px !important;
background: #f1f5f9 !important;
color: #64748b !important;
border: 1px solid #e2e8f0 !important;
}
.station-card__fav-btn.is-favorite {
background: #fef3c7 !important;
color: #f59e0b !important;
border-color: #fde68a !important;
}
.station-card__fav-btn:hover {
background: #e2e8f0 !important;
color: #14b8a6 !important;
}
.station-card__fav-btn.is-favorite:hover {
background: #fde68a !important;
} .station-card__body {
text-align: center !important;
width: 100% !important;
display: flex !important;
flex-direction: column !important;
align-items: center !important;
gap: 8px !important;
} .station-card__name {
font-size: 15px !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: 0.3px !important;
line-height: 1.3 !important;
margin: 0 !important;
width: 100% !important;
} .station-card__listeners {
font-size: 13px !important;
color: #14b8a6 !important;
font-weight: 500 !important;
margin: 0 !important;
}
.station-card__listeners i {
color: #14b8a6 !important;
font-size: 14px !important;
} .station-card__bitrate,
.station-card__country,
.station-card__genre {
display: none !important;
} .station-card:hover {
transform: translateY(-2px) !important;
}
} @media (max-width: 400px) {
.stations-grid {
grid-template-columns: 1fr !important;
}
.station-card__logo {
width: 70px !important;
height: 70px !important;
}
.station-card__play-btn,
.station-card__fav-btn {
width: 44px !important;
height: 44px !important;
min-width: 44px !important;
font-size: 14px !important;
}
.station-card__name {
font-size: 14px !important;
}
.station-card__listeners {
font-size: 12px !important;
}
} @media (max-width: 768px) { .station-card .badge--quality,
.station-card .badge.badge--quality {
display: none !important;
visibility: hidden !important;
} .station-card__header {
display: flex !important;
flex-direction: row !important;
justify-content: space-between !important;
align-items: flex-start !important;
width: 100% !important;
margin-bottom: 12px !important;
order: -2 !important; } .station-card__logo-container {
order: 1 !important;
} .station-card__badges {
display: none !important;
} .station-card__actions {
order: 2 !important;
position: static !important;
margin-left: auto !important;
} .station-card__body {
order: -1 !important;
width: 100% !important;
}
} @media (max-width: 768px) { .station-card__play-btn,
.station-card__fav-btn {
width: 48px !important;
height: 48px !important;
min-width: 48px !important;
min-height: 48px !important;
border-radius: 50% !important;
padding: 0 !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
} .station-card__play-btn {
background: linear-gradient(135deg, #14b8a6, #0d9488) !important;
color: white !important;
border: none !important;
box-shadow: 0 4px 12px rgba(20, 184, 166, 0.3) !important;
font-size: 16px !important;
}
.station-card__play-btn i {
margin: 0 !important;
font-size: 16px !important;
} .station-card__play-btn {
font-size: 0 !important;
}
.station-card__play-btn i {
font-size: 16px !important;
} .station-card__fav-btn {
background: #f1f5f9 !important;
color: #64748b !important;
border: 1px solid #e2e8f0 !important;
font-size: 18px !important;
}
.station-card__fav-btn.is-favorite {
background: #fef3c7 !important;
color: #f59e0b !important;
border-color: #fde68a !important;
} .station-card__logo {
width: 80px !important;
height: 80px !important;
border-radius: 12px !important;
} .station-card__name {
font-size: 16px !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: 0.5px !important;
line-height: 1.3 !important;
color: #1e293b !important;
} .station-card__listeners {
font-size: 14px !important;
color: #14b8a6 !important;
font-weight: 500 !important;
}
.station-card__listeners i {
color: #14b8a6 !important;
font-size: 14px !important;
margin-right: 4px !important;
} .station-card__body {
margin-top: 12px !important;
gap: 8px !important;
}
} @media (max-width: 768px) { .station-card {
display: flex !important;
flex-direction: column !important;
} .station-card__header {
order: 1 !important;
display: flex !important;
flex-direction: row !important;
justify-content: flex-start !important;
align-items: flex-start !important;
margin-bottom: 12px !important;
} .station-card__logo-container {
flex-shrink: 0 !important;
} .station-card__body {
order: 2 !important;
text-align: center !important;
width: 100% !important;
} .station-card__actions {
position: absolute !important;
top: 12px !important;
right: 12px !important;
display: flex !important;
flex-direction: column !important;
gap: 8px !important;
order: 3 !important;
} .station-card {
position: relative !important;
}
} @media (max-width: 768px) { .station-card {
padding: 16px !important;
} .station-card__logo-container {
margin-left: 4px !important;
} .station-card__actions {
top: 16px !important;
right: 16px !important;
gap: 12px !important; } .station-card__body {
margin-top: 16px !important;
padding-top: 12px !important;
border-top: 1px solid #f1f5f9 !important;
}
.dark .station-card__body {
border-top-color: #334155 !important;
} .station-card__name {
margin-bottom: 10px !important;
}
} @media (max-width: 768px) { .station-card__logo-container {
display: flex !important;
align-items: center !important;
justify-content: center !important;
min-height: 108px !important; padding: 8px !important;
background: #f8fafc !important;
border: 1px solid #e2e8f0 !important;
border-radius: 12px !important;
margin-left: 8px !important;
margin-right: auto !important;
}
.dark .station-card__logo-container {
background: #334155 !important;
border-color: #475569 !important;
} .station-card__logo {
width: 80px !important;
height: 80px !important;
border-radius: 8px !important;
} .station-card__actions {
top: 16px !important;
right: 24px !important; gap: 12px !important;
} .station-card__header {
display: flex !important;
flex-direction: row !important;
justify-content: space-between !important;
align-items: center !important;
margin-bottom: 16px !important;
}
} @media (max-width: 768px) { .station-card__logo-container {
display: flex !important;
align-items: center !important;
justify-content: center !important;
width: 96px !important; height: 96px !important;
min-height: auto !important;
padding: 8px !important;
background: #f8fafc !important;
border: 1px solid #e2e8f0 !important;
border-radius: 12px !important;
margin: 0 !important;
flex-shrink: 0 !important;
} .station-card__name,
.station-card__listeners {
background: none !important;
}
} @media (max-width: 768px) { .station-card__logo-container {
width: 70% !important;
max-width: 280px !important;
height: auto !important;
min-height: 120px !important;
padding: 20px !important; background: white !important;
border: none !important;
border-radius: 16px !important;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important; display: flex !important;
flex-direction: column !important;
align-items: center !important;
justify-content: center !important;
gap: 12px !important;
margin: 0 !important;
}
.dark .station-card__logo-container {
background: #1e293b !important;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3) !important;
} .station-card__logo {
width: 80px !important;
height: 80px !important;
border-radius: 12px !important;
flex-shrink: 0 !important;
} .station-card__brand-text {
display: block !important;
font-size: 16px !important;
font-weight: 700 !important;
color: #1e293b !important;
text-align: center !important;
line-height: 1.3 !important;
max-width: 100% !important;
word-wrap: break-word !important;
}
.dark .station-card__brand-text {
color: #f1f5f9 !important;
} @media (min-width: 769px) {
.station-card__brand-text {
display: none !important;
}
} .station-card__play-btn,
.station-card__fav-btn {
width: 64px !important;
height: 64px !important;
min-width: 64px !important;
min-height: 64px !important;
font-size: 20px !important;
}
.station-card__play-btn i {
font-size: 20px !important;
} .station-card__play-btn {
box-shadow: 0 6px 20px rgba(20, 184, 166, 0.4) !important;
}
.station-card__play-btn:hover {
box-shadow: 0 8px 24px rgba(20, 184, 166, 0.5) !important;
} .station-card__actions {
gap: 16px !important;
right: 20px !important;
top: 20px !important;
} .station-card__body {
margin-top: 24px !important;
padding-top: 20px !important;
border-top: 2px solid #f1f5f9 !important;
}
.dark .station-card__body {
border-top-color: #334155 !important;
} .station-card__name {
font-size: 18px !important;
font-weight: 700 !important;
color: #1e293b !important;
margin-bottom: 12px !important;
}
.dark .station-card__name {
color: #f1f5f9 !important;
} .station-card__listeners {
font-size: 16px !important;
color: #14b8a6 !important;
font-weight: 500 !important;
}
.station-card__listeners i {
font-size: 16px !important;
margin-right: 6px !important;
} .station-card {
padding: 20px !important;
}
} @media (max-width: 768px) { .station-card__play-btn {
font-size: 0 !important;
}
.station-card__play-btn i {
font-size: 20px !important;
}
}  @media (min-width: 769px) {
.station-card__brand-text {
display: none !important;
} .station-card__logo-container {
width: auto !important;
max-width: none !important;
height: auto !important;
min-height: auto !important;
padding: 0 !important;
background: transparent !important;
border: none !important;
border-radius: 0 !important;
box-shadow: none !important;
display: block !important;
flex-direction: row !important;
gap: 0 !important;
}
.station-card__logo {
width: 64px !important;
height: 64px !important;
}
}.audio-player-wrapper {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: var(--z-fixed);
transform: translateY(100%);
transition: transform var(--duration-300) var(--ease-smooth);
}
.audio-player-wrapper.is-visible {
transform: translateY(0);
}
#audioPlayer {
background: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border-top: var(--border-1) solid rgba(0, 0, 0, 0.05);
box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
}
.dark #audioPlayer {
background: rgba(30, 41, 59, 0.95);
border-top-color: rgba(255, 255, 255, 0.05);
box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.3);
} #visualizer {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0.3;
pointer-events: none;
z-index: 0;
} .audio-player {
position: relative;
z-index: 1;
padding: var(--space-4) var(--space-6);
} .audio-player-controls {
display: grid;
grid-template-columns: auto 1fr auto auto auto;
gap: var(--space-6);
align-items: center;
margin-bottom: var(--space-3);
} .audio-player-info-section {
display: flex;
align-items: center;
gap: var(--space-4);
min-width: 200px;
max-width: 300px;
}
.player-logo {
width: 52px;
height: 52px;
border-radius: var(--radius-lg);
object-fit: cover;
box-shadow: var(--shadow-md);
flex-shrink: 0;
background: var(--color-slate-200);
}
.dark .player-logo {
background: var(--color-slate-700);
}
.audio-player-info {
flex: 1;
min-width: 0;
display: flex;
flex-direction: column;
gap: var(--space-1);
}
.station-name {
font-family: var(--font-display);
font-size: var(--text-base);
font-weight: var(--font-semibold);
color: var(--color-text-primary);
margin: 0;
line-height: var(--leading-tight);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.station-genre {
font-size: var(--text-sm);
color: var(--color-text-muted);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} .audio-player-now-playing {
display: flex;
align-items: center;
gap: var(--space-3);
min-width: 0;
flex: 1;
}
.now-playing-icon {
color: var(--color-primary-500);
font-size: var(--text-lg);
flex-shrink: 0;
animation: pulseGentle 2s ease-in-out infinite;
}
.dark .now-playing-icon {
color: var(--color-primary-400);
}
.audio-player-metadata {
flex: 1;
min-width: 0;
}
#metadataDisplay {
font-size: var(--text-base);
font-weight: var(--font-medium);
color: var(--color-text-primary);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
}
.metadata-placeholder {
color: var(--color-text-muted);
font-style: italic;
} .playback-controls {
display: flex;
align-items: center;
gap: var(--space-3);
}
.play-pause-btn {
width: 56px;
height: 56px;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, var(--color-primary-500), var(--color-primary-600));
color: white;
border: none;
border-radius: 50%;
cursor: pointer;
box-shadow: var(--shadow-primary);
transition: all var(--duration-200) var(--ease-smooth);
flex-shrink: 0;
}
.play-pause-btn:hover {
background: linear-gradient(135deg, var(--color-primary-600), var(--color-primary-700));
box-shadow: var(--shadow-primary-lg);
transform: scale(1.05);
}
.play-pause-btn:active {
transform: scale(1);
}
.play-pause-btn.playing {
animation: pulseGentle 3s ease-in-out infinite;
}
.play-pause-btn i {
font-size: var(--text-xl);
} .volume-control {
display: flex;
align-items: center;
gap: var(--space-3);
min-width: 150px;
}
.volume-control i {
color: var(--color-slate-500);
font-size: var(--text-sm);
flex-shrink: 0;
}
.dark .volume-control i {
color: var(--color-slate-400);
}
#volumeSlider {
flex: 1;
min-width: 80px;
} .audio-player-extras {
display: flex;
align-items: center;
gap: var(--space-2);
} #searchLinks {
display: flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-2) 0;
margin-top: var(--space-2);
}
#searchLinks button {
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
background: var(--color-slate-100);
color: var(--color-slate-600);
border: none;
border-radius: var(--radius-full);
cursor: pointer;
transition: all var(--duration-200) var(--ease-smooth);
}
.dark #searchLinks button {
background: var(--color-slate-700);
color: var(--color-slate-300);
}
#searchLinks button:hover {
background: var(--color-primary-50);
color: var(--color-primary-600);
transform: scale(1.1);
border-radius: var(--radius-full);
}
.dark #searchLinks button:hover {
background: rgba(13, 148, 136, 0.2);
color: var(--color-primary-400);
border-radius: var(--radius-full);
} #searchLinks button[title*="YouTube"]:hover {
background: #ff0000;
color: white;
border-radius: var(--radius-full);
}
#searchLinks button[title*="Spotify"]:hover {
background: #1db954;
color: white;
border-radius: var(--radius-full);
}
#searchLinks button[title*="Apple"]:hover {
background: #fa243c;
color: white;
border-radius: var(--radius-full);
} .progress-container {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 4px;
background: var(--color-slate-200);
cursor: pointer;
}
.dark .progress-container {
background: var(--color-slate-700);
}
#progressBar {
height: 100%;
background: linear-gradient(90deg, var(--color-primary-500), var(--color-accent-500));
width: 0%;
transition: width var(--duration-300) var(--ease-smooth);
position: relative;
}
#progressBar::after {
content: '';
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 10px;
background: rgba(255, 255, 255, 0.4);
filter: blur(4px);
} .progress-container.buffering #progressBar {
background: linear-gradient(90deg,
var(--color-primary-500) 25%,
var(--color-primary-300) 50%,
var(--color-primary-500) 75%);
background-size: 200% 100%;
animation: shimmer 1.5s ease-in-out infinite;
} .hls-status {
position: absolute;
top: var(--space-2);
right: var(--space-2);
padding: var(--space-1) var(--space-3);
background: rgba(59, 130, 246, 0.9);
color: white;
font-size: var(--text-xs);
font-weight: var(--font-semibold);
border-radius: var(--radius-full);
backdrop-filter: blur(8px);
z-index: var(--z-10);
display: none;
}
.hls-status.active {
display: block;
}
.hls-status.error {
background: rgba(239, 68, 68, 0.9);
} @media (max-width: 1024px) {
.audio-player-controls {
grid-template-columns: 1fr;
gap: var(--space-4);
}
.volume-control {
display: none;
}
.audio-player-info-section {
max-width: none;
}
}
@media (max-width: 640px) {
.audio-player {
padding: var(--space-4);
}
.audio-player-controls {
gap: var(--space-3);
}
.audio-player-info-section {
min-width: auto;
}
.player-logo {
width: 48px;
height: 48px;
}
.station-name {
font-size: var(--text-sm);
}
.station-genre {
font-size: var(--text-xs);
}
.audio-player-now-playing {
justify-content: center;
text-align: center;
}
#metadataDisplay {
font-size: var(--text-sm);
}
.playback-controls {
justify-content: center;
}
.play-pause-btn {
width: 52px;
height: 52px;
}
.audio-player-extras {
justify-content: center;
}
#searchLinks {
justify-content: center;
}
#searchLinks button {
width: 36px;
height: 36px;
}
} #eqPanel,
#historyPanel,
#sleepTimerPanel {
position: absolute;
bottom: calc(100% + var(--space-2));
right: var(--space-2);
background: var(--color-surface);
border: var(--border-1) solid var(--color-border);
border-radius: var(--radius-xl);
box-shadow: var(--shadow-xl);
z-index: var(--z-popover);
max-width: 400px;
animation: slideUp var(--duration-300) var(--ease-smooth);
}
.dark #eqPanel,
.dark #historyPanel,
.dark #sleepTimerPanel {
background: var(--color-slate-800);
border-color: var(--color-slate-700);
} #eqPanel {
width: 280px;
padding: var(--space-4);
}
.eq-panel-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--space-4);
padding-bottom: var(--space-3);
border-bottom: var(--border-1) solid var(--color-border);
}
.dark .eq-panel-header {
border-bottom-color: var(--color-slate-700);
}
.eq-panel-title {
font-family: var(--font-display);
font-size: var(--text-sm);
font-weight: var(--font-semibold);
text-transform: uppercase;
letter-spacing: var(--tracking-wide);
color: var(--color-text-primary);
margin: 0;
}
.eq-panel-actions {
display: flex;
gap: var(--space-2);
}
#eqSliders {
display: flex;
justify-content: space-between;
align-items: flex-end;
height: 120px;
gap: var(--space-2);
}
.eq-slider-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-end;
height: 100%;
flex: 1;
}
.eq-range {
-webkit-appearance: slider-vertical;
appearance: slider-vertical;
width: 4px;
height: 100px;
background: var(--color-slate-200);
outline: none;
border-radius: var(--radius-full);
cursor: pointer;
}
.dark .eq-range {
background: var(--color-slate-700);
}
.eq-range::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 14px;
height: 14px;
border-radius: 50%;
background: var(--color-primary-500);
cursor: pointer;
box-shadow: 0 0 0 2px white;
transition: all var(--duration-200);
}
.dark .eq-range::-webkit-slider-thumb {
background: var(--color-primary-400);
box-shadow: 0 0 0 2px var(--color-slate-800);
}
.eq-range::-webkit-slider-thumb:hover {
transform: scale(1.2);
} #historyPanel {
width: 320px;
max-height: 400px;
padding: var(--space-4);
display: flex;
flex-direction: column;
}
.history-panel-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--space-3);
padding-bottom: var(--space-3);
border-bottom: var(--border-1) solid var(--color-border);
}
.dark .history-panel-header {
border-bottom-color: var(--color-slate-700);
}
#historyList {
flex: 1;
overflow-y: auto;
margin: 0;
padding: 0;
list-style: none;
}
#historyList li {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--space-2) var(--space-3);
border-radius: var(--radius-md);
transition: background-color var(--duration-200);
cursor: pointer;
}
#historyList li:hover {
background: var(--color-slate-50);
}
.dark #historyList li:hover {
background: var(--color-slate-700);
}
.history-song-title {
flex: 1;
font-size: var(--text-sm);
font-weight: var(--font-medium);
color: var(--color-text-primary);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.history-song-time {
font-size: var(--text-xs);
color: var(--color-text-muted);
margin-left: var(--space-2);
flex-shrink: 0;
} #sleepTimerBadge {
position: absolute;
top: -4px;
right: -4px;
min-width: 18px;
height: 18px;
padding: 0 var(--space-1);
background: var(--color-primary-500);
color: white;
font-size: 10px;
font-weight: var(--font-semibold);
border-radius: var(--radius-full);
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 0 0 2px var(--color-surface);
}
.dark #sleepTimerBadge {
box-shadow: 0 0 0 2px var(--color-slate-800);
} .audio-player button:focus-visible {
outline: 2px solid var(--color-primary-500);
outline-offset: 2px;
} @media (prefers-reduced-motion: reduce) {
.audio-player-wrapper,
#progressBar,
.play-pause-btn,
#eqPanel,
#historyPanel {
transition: none;
animation: none;
}
.now-playing-icon,
.play-pause-btn.playing {
animation: none;
}
}.modal-backdrop {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.5);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px);
z-index: var(--z-modal-backdrop);
animation: fadeIn var(--duration-300) var(--ease-smooth);
}
.dark .modal-backdrop {
background: rgba(0, 0, 0, 0.7);
} .modal {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 90%;
max-width: 600px;
max-height: 85vh;
background: var(--color-surface);
border-radius: var(--radius-2xl);
box-shadow: var(--shadow-2xl);
z-index: var(--z-modal);
overflow: hidden;
animation: scaleIn var(--duration-300) var(--ease-smooth);
}
.dark .modal {
background: var(--color-slate-800);
} .modal__header {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--space-5) var(--space-6);
border-bottom: var(--border-1) solid var(--color-border);
background: var(--color-slate-50);
}
.dark .modal__header {
background: var(--color-slate-900);
border-bottom-color: var(--color-slate-700);
}
.modal__title {
display: flex;
align-items: center;
gap: var(--space-3);
margin: 0;
font-family: var(--font-display);
font-size: var(--text-xl);
font-weight: var(--font-semibold);
color: var(--color-text-primary);
}
.modal__title i {
color: var(--color-primary-500);
font-size: var(--text-2xl);
}
.modal__close {
width: 36px;
height: 36px;
display: flex;
align-items: center;
justify-content: center;
background: transparent;
border: none;
border-radius: var(--radius-full);
color: var(--color-slate-500);
cursor: pointer;
transition: var(--transition-base);
}
.modal__close:hover {
background: var(--color-slate-200);
color: var(--color-slate-700);
}
.dark .modal__close:hover {
background: var(--color-slate-700);
color: var(--color-slate-300);
} .modal__body {
padding: var(--space-6);
overflow-y: auto;
max-height: calc(85vh - 80px);
} .station-info {
display: flex;
flex-direction: column;
gap: var(--space-6);
}
.station-info__section {
display: flex;
flex-direction: column;
gap: var(--space-3);
}
.station-info__section-title {
font-family: var(--font-display);
font-size: var(--text-sm);
font-weight: var(--font-semibold);
text-transform: uppercase;
letter-spacing: var(--tracking-wide);
color: var(--color-text-muted);
margin: 0;
}
.station-info__item {
display: flex;
align-items: flex-start;
gap: var(--space-4);
padding: var(--space-3);
background: var(--color-slate-50);
border-radius: var(--radius-lg);
}
.dark .station-info__item {
background: var(--color-slate-900);
}
.station-info__icon {
width: 20px;
color: var(--color-primary-500);
font-size: var(--text-base);
margin-top: 2px;
flex-shrink: 0;
}
.station-info__content {
flex: 1;
display: flex;
flex-direction: column;
gap: var(--space-1);
}
.station-info__label {
font-size: var(--text-sm);
color: var(--color-text-muted);
}
.station-info__value {
font-size: var(--text-base);
font-weight: var(--font-medium);
color: var(--color-text-primary);
}
.station-info__description {
font-size: var(--text-sm);
line-height: var(--leading-relaxed);
color: var(--color-text-secondary);
margin: 0;
} .station-links {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: var(--space-3);
}
.station-link {
display: flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-3);
background: var(--color-slate-100);
color: var(--color-slate-700);
text-decoration: none;
border-radius: var(--radius-lg);
font-size: var(--text-sm);
font-weight: var(--font-medium);
transition: var(--transition-base);
}
.dark .station-link {
background: var(--color-slate-700);
color: var(--color-slate-300);
}
.station-link:hover {
background: var(--color-primary-50);
color: var(--color-primary-700);
transform: translateY(-2px);
}
.dark .station-link:hover {
background: rgba(13, 148, 136, 0.2);
color: var(--color-primary-300);
}
.station-link i {
font-size: var(--text-lg);
} .stats-dashboard {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: var(--space-4);
}
.stat-card {
padding: var(--space-4);
background: var(--color-slate-50);
border-radius: var(--radius-xl);
border: var(--border-1) solid var(--color-border);
}
.dark .stat-card {
background: var(--color-slate-900);
border-color: var(--color-slate-700);
}
.stat-card__icon {
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
background: var(--color-primary-100);
color: var(--color-primary-600);
border-radius: var(--radius-lg);
margin-bottom: var(--space-3);
}
.dark .stat-card__icon {
background: rgba(13, 148, 136, 0.2);
color: var(--color-primary-400);
}
.stat-card__value {
font-family: var(--font-display);
font-size: var(--text-3xl);
font-weight: var(--font-bold);
color: var(--color-text-primary);
margin: 0 0 var(--space-1) 0;
}
.stat-card__label {
font-size: var(--text-sm);
color: var(--color-text-muted);
margin: 0;
} .top-stations {
display: flex;
flex-direction: column;
gap: var(--space-2);
}
.top-station-item {
display: flex;
align-items: center;
gap: var(--space-3);
padding: var(--space-3);
background: var(--color-slate-50);
border-radius: var(--radius-lg);
cursor: pointer;
transition: var(--transition-base);
}
.dark .top-station-item {
background: var(--color-slate-900);
}
.top-station-item:hover {
background: var(--color-primary-50);
transform: translateX(4px);
}
.dark .top-station-item:hover {
background: rgba(13, 148, 136, 0.1);
}
.top-station-rank {
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
background: var(--color-primary-500);
color: white;
font-weight: var(--font-bold);
border-radius: var(--radius-full);
flex-shrink: 0;
}
.top-station-info {
flex: 1;
min-width: 0;
}
.top-station-name {
font-weight: var(--font-medium);
color: var(--color-text-primary);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.top-station-time {
font-size: var(--text-sm);
color: var(--color-text-muted);
} .settings-panel {
display: flex;
flex-direction: column;
gap: var(--space-5);
}
.settings-group {
display: flex;
flex-direction: column;
gap: var(--space-3);
}
.settings-group__title {
font-family: var(--font-display);
font-size: var(--text-base);
font-weight: var(--font-semibold);
color: var(--color-text-primary);
margin: 0;
}
.setting-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--space-4);
background: var(--color-slate-50);
border-radius: var(--radius-lg);
}
.dark .setting-item {
background: var(--color-slate-900);
}
.setting-item__info {
flex: 1;
}
.setting-item__label {
font-weight: var(--font-medium);
color: var(--color-text-primary);
margin-bottom: var(--space-1);
}
.setting-item__description {
font-size: var(--text-sm);
color: var(--color-text-muted);
} .toggle-switch {
position: relative;
width: 48px;
height: 28px;
background: var(--color-slate-300);
border-radius: var(--radius-full);
cursor: pointer;
transition: var(--transition-base);
}
.dark .toggle-switch {
background: var(--color-slate-600);
}
.toggle-switch.active {
background: var(--color-primary-500);
}
.toggle-switch__handle {
position: absolute;
top: 2px;
left: 2px;
width: 24px;
height: 24px;
background: white;
border-radius: 50%;
transition: transform var(--duration-200) var(--ease-smooth);
box-shadow: var(--shadow-sm);
}
.toggle-switch.active .toggle-switch__handle {
transform: translateX(20px);
} .export-import {
display: flex;
flex-direction: column;
gap: var(--space-4);
}
.export-import__actions {
display: flex;
gap: var(--space-3);
}
.export-import__info {
padding: var(--space-4);
background: var(--color-primary-50);
border-left: 4px solid var(--color-primary-500);
border-radius: var(--radius-md);
font-size: var(--text-sm);
color: var(--color-text-secondary);
}
.dark .export-import__info {
background: rgba(13, 148, 136, 0.1);
} .notification-preview {
padding: var(--space-4);
background: var(--color-slate-900);
color: white;
border-radius: var(--radius-lg);
display: flex;
align-items: flex-start;
gap: var(--space-3);
}
.notification-preview__icon {
width: 40px;
height: 40px;
background: var(--color-primary-500);
border-radius: var(--radius-md);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.notification-preview__content {
flex: 1;
}
.notification-preview__title {
font-weight: var(--font-semibold);
margin-bottom: var(--space-1);
}
.notification-preview__body {
font-size: var(--text-sm);
opacity: 0.9;
} @media (max-width: 640px) {
.modal {
width: 95%;
max-height: 90vh;
}
.modal__header {
padding: var(--space-4);
}
.modal__title {
font-size: var(--text-lg);
}
.modal__body {
padding: var(--space-4);
}
.stats-dashboard {
grid-template-columns: 1fr;
}
.station-links {
grid-template-columns: 1fr;
}
.export-import__actions {
flex-direction: column;
}
.export-import__actions .btn {
width: 100%;
}
} @keyframes slideInRight {
from {
transform: translateX(100%);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
.slide-in-right {
animation: slideInRight var(--duration-300) var(--ease-smooth);
} .modal__body {
scrollbar-width: thin;
scrollbar-color: var(--color-slate-300) transparent;
}
.modal__body::-webkit-scrollbar {
width: 8px;
}
.modal__body::-webkit-scrollbar-track {
background: transparent;
}
.modal__body::-webkit-scrollbar-thumb {
background: var(--color-slate-300);
border-radius: var(--radius-full);
}
.dark .modal__body::-webkit-scrollbar-thumb {
background: var(--color-slate-600);
}
.modal__body::-webkit-scrollbar-thumb:hover {
background: var(--color-slate-400);
}
.dark .modal__body::-webkit-scrollbar-thumb:hover {
background: var(--color-slate-500);
}.rfm-hidden, .hidden { display: none !important; } .rfm-inner {
padding: clamp(16px, 3vw, 48px);
padding-bottom: 200px; max-width: 1600px;
margin: 0 auto;
width: 100%;
} .rfm-page-header {
display: block;
padding-bottom: 24px;
margin-bottom: 28px;
border-bottom: 1px solid rgba(23, 178, 231, 0.15);
}
.rfm-header-inner {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 16px;
}
.rfm-header-text { flex: 1; }
.rfm-title {
font-size: clamp(22px, 3vw, 36px);
font-weight: 800;
margin: 0 0 6px 0;
line-height: 1.2;
}
.rfm-subtitle {
font-size: clamp(14px, 1.5vw, 18px);
color: #64748b;
margin: 0;
}
.rfm-header-actions {
display: flex;
align-items: center;
gap: 12px;
flex-shrink: 0;
}
.rfm-icon-btn {
width: 40px;
height: 40px;
border-radius: 50%;
background: white;
border: 1px solid rgba(0,0,0,0.08);
box-shadow: 0 2px 8px rgba(0,0,0,0.08);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
color: #475569;
transition: all 0.2s ease;
}
.rfm-icon-btn:hover { background: #f0f9f9; color: #17b2e7; }
.rfm-icon-sun { display: none; }
.dark .rfm-icon-moon { display: none; }
.dark .rfm-icon-sun { display: block; }
.rfm-radio-icon {
width: 48px;
height: 48px;
border-radius: 50%;
background: rgba(20, 184, 166, 0.1);
display: flex;
align-items: center;
justify-content: center;
color: #14b8a6;
font-size: 20px;
} .rfm-dashboard {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-bottom: 28px;
}
@media (max-width: 640px) {
.rfm-dashboard {
grid-template-columns: 1fr;
}
} .rfm-stations-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 16px;
margin-top: 16px;
}
@media (min-width: 640px) {
.rfm-stations-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 900px) {
.rfm-stations-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 1200px) {
.rfm-stations-grid { grid-template-columns: repeat(5, 1fr); }
} .rfm-player {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: rgba(255, 255, 255, 0.96);
backdrop-filter: blur(30px) saturate(1.6);
-webkit-backdrop-filter: blur(30px) saturate(1.6);
border-top: 1px solid rgba(255, 255, 255, 0.5);
border-radius: 28px 28px 0 0;
box-shadow: 0 -10px 50px rgba(0, 0, 0, 0.15);
z-index: 9999;
}
.rfm-visualizer {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
opacity: 0.4;
z-index: 0;
border-radius: 28px 28px 0 0;
}
.rfm-player-inner {
position: relative;
z-index: 1;
padding: 12px 20px;
} .hls-status { display: none !important; }
.audio-player-controls {
display: flex;
align-items: center;
gap: 16px;
}
.rfm-player-left {
display: flex;
align-items: center;
gap: 12px;
flex-shrink: 0;
}
.audio-player-info {
flex: 1;
min-width: 0;
overflow: hidden;
}
.rfm-meta-row {
display: flex;
align-items: center;
gap: 12px;
}
.rfm-search-links {
display: flex;
align-items: center;
gap: 6px;
}
.rfm-search-btn {
width: 28px;
height: 28px;
border-radius: 50%;
border: none;
background: transparent;
color: #64748b;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease;
}
.rfm-search-btn:hover { background: #f1f5f9; color: #17b2e7; } .volume-control {
display: flex;
align-items: center;
gap: 10px;
flex-shrink: 0;
}
.rfm-ctrl-btn {
width: 36px;
height: 36px;
border-radius: 50%;
border: none;
background: transparent;
color: #64748b;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease;
}
.rfm-ctrl-btn:hover { background: #f1f5f9; color: #14b8a6; }
.rfm-sleep-wrap { position: relative; }
.rfm-sleep-badge {
position: absolute;
top: -2px;
right: -2px;
background: #14b8a6;
color: white;
font-size: 9px;
font-weight: 700;
padding: 1px 4px;
border-radius: 999px;
min-width: 16px;
text-align: center;
line-height: 1.4;
}
.rfm-volume-row {
display: flex;
align-items: center;
gap: 8px;
color: #64748b;
}
.rfm-volume-row input[type="range"] {
width: 80px;
accent-color: #14b8a6;
cursor: pointer;
} .progress-container {
height: 3px;
background: #e2e8f0;
border-radius: 999px;
margin-top: 10px;
overflow: hidden;
}
.progress-bar {
width: 0;
height: 100%;
background: #14b8a6;
transition: width 0.3s ease;
} .rfm-panel {
position: absolute;
bottom: 100%;
right: 8px;
margin-bottom: 8px;
background: white;
border: 1px solid #e2e8f0;
border-radius: 12px;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
z-index: 10000 !important;
padding: 16px;
width: 260px;
display: none; }
.rfm-panel:not(.rfm-hidden) {
display: block !important;
}
.rfm-panel--history {
right: 56px;
width: 288px;
max-height: 320px;
overflow: hidden;
display: none;
flex-direction: column;
}
.rfm-panel--history:not(.rfm-hidden) {
display: flex !important;
}
.rfm-panel-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 12px;
padding-bottom: 8px;
border-bottom: 1px solid #f1f5f9;
}
.rfm-panel-header h4 {
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
color: #1e293b;
margin: 0;
}
.rfm-panel-actions {
display: flex;
gap: 8px;
}
.rfm-panel-actions button, .rfm-panel-header > button {
background: none;
border: none;
cursor: pointer;
color: #64748b;
font-size: 12px;
padding: 2px 4px;
border-radius: 4px;
transition: color 0.2s;
}
.rfm-panel-actions button:hover, .rfm-panel-header > button:hover { color: #1e293b; }
.rfm-eq-sliders {
display: flex;
justify-content: space-between;
align-items: flex-end;
height: 128px;
gap: 8px;
}
.rfm-eq-labels {
display: flex;
justify-content: space-between;
font-size: 10px;
color: #94a3b8;
margin-top: 6px;
padding: 0 2px;
}
.rfm-history-list {
overflow-y: auto;
flex: 1;
list-style: none !important;
margin: 0 !important;
padding: 0 !important;
}
.rfm-empty-msg {
text-align: center;
font-size: 12px;
color: #94a3b8;
padding: 16px 0;
}
@media (max-width: 640px) {
.audio-player-controls { flex-wrap: wrap; }
.rfm-volume-row input { width: 60px; }
.rfm-player-inner { padding: 10px 14px; }
}
:root { --rfm-accent: #17b2e7;
--rfm-accent-rgb: 23, 178, 231;
--rfm-bg: #f0f4f8;
--rfm-card-bg: rgba(255, 255, 255, 0.65);
--rfm-glass-bg: rgba(255, 255, 255, 0.7);
--rfm-glass-border: rgba(255, 255, 255, 0.5);
--rfm-text: #1e293b;
--rfm-text-muted: #64748b;
--rfm-radius: 16px;
--rfm-radius-lg: 24px;
--rfm-shadow: 0 10px 30px rgba(23, 178, 231, 0.08);
--z-fixed: 9999;
}
.dark, .dark-mode {
--rfm-bg: #0f172a;
--rfm-card-bg: rgba(30, 41, 59, 0.6);
--rfm-glass-bg: rgba(15, 23, 42, 0.85);
--rfm-glass-border: rgba(255, 255, 255, 0.1);
--rfm-text: #f1f5f9;
--rfm-text-muted: #94a3b8;
} .radiofm-wrapper {
font-family: 'Inter', sans-serif;
color: var(--rfm-text);
background: transparent !important;
padding: 0 !important;
margin: 0 auto !important;
max-width: 100%;
overflow: visible;
} .section-card {
background: rgba(255, 255, 255, 0.7) !important;
backdrop-filter: blur(20px) !important;
-webkit-backdrop-filter: blur(20px) !important;
border: 1px solid rgba(255, 255, 255, 0.85) !important;
border-radius: 16px !important;
box-shadow: 0 8px 32px rgba(23, 178, 231, 0.08), 0 1px 3px rgba(0,0,0,0.05) !important;
padding: 0 !important;
margin-bottom: 0 !important;
overflow: hidden;
transition: transform 0.3s ease, box-shadow 0.3s ease;
display: flex;
flex-direction: column;
}
.section-card:hover {
transform: translateY(-2px);
box-shadow: 0 12px 40px rgba(23, 178, 231, 0.14) !important;
} #romania-stations {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 16px;
} .station-card {
background: rgba(255, 255, 255, 0.8) !important;
backdrop-filter: blur(10px) !important;
-webkit-backdrop-filter: blur(10px) !important;
border: 1px solid rgba(255, 255, 255, 0.9) !important;
border-radius: 16px !important;
padding: 16px !important;
box-shadow: 0 4px 16px rgba(0,0,0,0.06) !important;
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
display: flex;
flex-direction: column;
gap: 10px;
overflow: visible !important;
}
.dark .station-card {
background: rgba(30, 41, 59, 0.7) !important;
border-color: rgba(255,255,255,0.08) !important;
}
.station-card:hover {
transform: translateY(-4px) scale(1.01);
background: rgba(255, 255, 255, 0.98) !important;
border-color: rgba(23, 178, 231, 0.35) !important;
box-shadow: 0 16px 40px rgba(23, 178, 231, 0.18), 0 4px 8px rgba(0,0,0,0.06) !important;
}
.dark .station-card:hover {
background: rgba(30, 41, 59, 0.95) !important;
} .station-card__header {
display: flex;
align-items: flex-start;
gap: 12px;
}
.station-card__logo-container {
width: 64px;
height: 64px;
border-radius: 12px;
overflow: hidden;
background: #f1f5f9;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid rgba(0,0,0,0.03);
}
.station-card__logo {
width: 100%;
height: 100%;
object-fit: cover;
}
.station-card__badges {
margin-left: auto;
display: flex;
flex-direction: column;
gap: 4px;
align-items: flex-end;
}
.badge {
font-size: 10px;
font-weight: 700;
padding: 2px 6px;
border-radius: 4px;
background: #e2e8f0;
color: #475569;
}
.badge--quality {
background: rgba(20, 184, 166, 0.1);
color: #14b8a6;
}
.station-card__body {
flex: 1;
display: flex;
flex-direction: column;
gap: 4px;
}
.station-card__name {
font-weight: 700;
font-size: 15px;
color: #1e293b;
margin: 0;
line-height: 1.25;
display: -webkit-box;
-webkit-line-clamp: 2;
line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.dark .station-card__name { color: #f8fafc; }
.station-card__meta, .station-card__listeners {
font-size: 12px;
color: #64748b;
margin: 0;
}
.station-card__listeners { margin-top: 4px; }
.station-card__listeners i { color: #14b8a6; margin-right: 4px; }
.station-card__actions {
display: flex;
gap: 8px;
margin-top: auto;
} .station-card .play-btn,
.station-card button[class*="play"],
.station-card .station-card__play-btn {
flex: 1 !important;
border-radius: 10px !important;
padding: 8px 10px !important;
background: linear-gradient(135deg, #17b2e7, #2563eb) !important;
color: white !important;
font-weight: 600 !important;
border: none !important;
cursor: pointer !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
gap: 8px !important;
width: auto !important;
margin-top: 0 !important;
} .station-card__fav-btn {
width: 40px !important;
flex-shrink: 0;
border-radius: 10px !important;
background: rgba(255,255,255,0.8) !important;
border: 1px solid rgba(0,0,0,0.1) !important;
color: #64748b !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
cursor: pointer !important;
transition: all 0.2s;
}
.station-card__fav-btn:hover {
background: white !important;
color: #f59e0b !important;
border-color: #f59e0b !important;
}
.station-card__fav-btn.is-favorite {
color: #f59e0b !important;
background: #fef3c7 !important;
border-color: #fde68a !important;
} .filter-container {
display: flex;
align-items: center;
gap: 10px;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(10px);
padding: 10px 18px;
border-radius: 100px;
border: 1px solid rgba(0,0,0,0.08);
box-shadow: 0 4px 16px rgba(0,0,0,0.04);
margin-bottom: 24px;
max-width: 400px;
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.filter-container:focus-within {
background: #ffffff;
border-color: var(--color-primary-400, #17b2e7);
box-shadow: 0 4px 16px rgba(23, 178, 231, 0.15);
transform: translateY(-2px);
}
.dark .filter-container {
background: rgba(30, 41, 59, 0.7);
border-color: rgba(255,255,255,0.1);
}
.filter-input {
border: none !important;
background: transparent !important;
outline: none !important;
padding: 0 0 0 20px !important;
box-shadow: none !important;
font-size: 15px;
flex: 1;
color: #1e293b;
font-weight: 500;
min-width: 0;
}
.dark .filter-input { color: #f8fafc; }
.filter-input::placeholder { color: #94a3b8; font-weight: 400; }
.filter-icon { color: #94a3b8; font-size: 14px; flex-shrink: 0; }
.filter-clear { 
color: #94a3b8; 
font-size: 14px; 
cursor: pointer; 
transition: color 0.2s; 
flex-shrink: 0;
}
.filter-clear:hover { color: #ef4444; } .gradient-text {
background: linear-gradient(135deg, var(--rfm-accent), #2563eb);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
font-weight: 800;
letter-spacing: -0.5px;
} #audioPlayer {
position: fixed !important;
bottom: 0 !important;
left: 0 !important;
right: 0 !important;
background: var(--rfm-glass-bg) !important;
backdrop-filter: blur(30px) saturate(1.6) !important;
-webkit-backdrop-filter: blur(30px) saturate(1.6) !important;
border-top: 1px solid var(--rfm-glass-border) !important;
border-radius: 28px 28px 0 0 !important;
box-shadow: 0 -10px 50px rgba(0, 0, 0, 0.15) !important;
padding: 12px 24px !important;
z-index: var(--z-fixed);
transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.audio-player {
max-width: 1600px;
margin: 0 auto;
width: 100%;
} .audio-player-controls {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
} .play-pause-btn {
background: linear-gradient(135deg, var(--rfm-accent), #2563eb) !important;
width: 56px !important;
height: 56px !important;
border-radius: 50% !important;
box-shadow: 0 8px 25px rgba(23, 178, 231, 0.4) !important;
color: white !important;
display: flex;
align-items: center;
justify-content: center;
font-size: 20px !important;
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
border: none !important;
cursor: pointer;
}
.play-pause-btn:hover {
transform: scale(1.1);
box-shadow: 0 12px 30px rgba(23, 178, 231, 0.5) !important;
} .station-name {
font-family: 'Poppins', sans-serif;
font-weight: 700;
font-size: 1.1rem;
color: var(--rfm-text);
}
.station-metadata {
color: var(--rfm-text-muted);
font-size: 0.9rem;
} input[type="range"] {
accent-color: var(--rfm-accent);
} .section-card__header {
background: rgba(30, 41, 59, 0.82) !important;
backdrop-filter: blur(12px) !important;
border-bottom: none !important;
padding: 14px 20px !important;
border-radius: 16px 16px 0 0 !important;
display: flex;
justify-content: space-between;
align-items: center;
flex-shrink: 0;
}
.section-card__header--favorites {
background: rgba(20, 184, 166, 0.82) !important;
}
.section-card__title {
color: #ffffff !important;
font-family: 'Poppins', sans-serif !important;
font-weight: 700 !important;
font-size: 1.1rem !important;
letter-spacing: 0.5px !important;
display: flex;
align-items: center;
gap: 12px;
margin: 0 !important;
}
.section-card__title i {
color: rgba(255,255,255,0.8) !important;
font-size: 1.1em !important;
} .section-card__action-btn {
background: rgba(255,255,255,0.15) !important;
border: 1px solid rgba(255,255,255,0.2) !important;
color: #fff !important;
box-shadow: none !important;
}
.section-card__action-btn:hover {
background: #ffffff !important;
color: var(--rfm-accent) !important;
border-color: #ffffff !important;
} #recentList, #quickFavoritesList {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
gap: 12px;
padding: 0;
margin: 0;
}
#recentList li, #quickFavoritesList li {
background: rgba(255, 255, 255, 0.5) !important;
border: 1px solid var(--rfm-glass-border) !important;
border-radius: 12px !important;
padding: 12px !important;
margin-bottom: 0 !important;
display: flex !important;
align-items: center;
gap: 12px;
transition: all 0.3s ease;
}
.list-item__icon {
width: 40px;
height: 40px;
border-radius: 10px;
background: rgba(23, 178, 231, 0.1);
color: #17b2e7;
display: flex;
align-items: center;
justify-content: center;
font-size: 16px;
flex-shrink: 0;
}
.list-item__icon--favorite {
background: rgba(20, 184, 166, 0.1);
color: #14b8a6;
}
.list-item__content {
flex: 1;
min-width: 0;
}
.list-item__name {
font-weight: 600;
color: #1e293b;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-size: 14px;
line-height: 1.3;
}
.dark .list-item__name { color: #f8fafc; }
.list-item__meta {
font-size: 12px;
color: #64748b;
}
.list-item__play-btn {
width: 36px;
height: 36px;
border-radius: 50%;
background: white;
border: 1px solid rgba(0,0,0,0.05);
color: #1e293b;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.2s;
flex-shrink: 0;
box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}
.list-item__play-btn:hover {
background: #17b2e7;
color: white;
border-color: #17b2e7;
transform: scale(1.05);
}
.dark #recentList li, .dark #quickFavoritesList li {
background: rgba(30, 41, 59, 0.4) !important;
}
#recentList li:hover, #quickFavoritesList li:hover {
transform: translateY(-2px);
background: white !important;
border-color: var(--rfm-accent) !important;
box-shadow: 0 5px 15px rgba(23, 178, 231, 0.1);
}
.dark #recentList li:hover, .dark #quickFavoritesList li:hover {
background: rgba(30, 41, 59, 0.9) !important;
} @media (max-width: 768px) {
.radiofm-wrapper {
padding-bottom: 160px !important;
}
#romania-stations {
grid-template-columns: repeat(2, 1fr);
gap: 12px;
}
.audio-player-controls {
flex-direction: column;
gap: 10px;
text-align: center;
}
.audio-player-info {
width: 100%;
}
.play-pause-btn {
width: 50px !important;
height: 50px !important;
}
}
@media (max-width: 480px) {
#romania-stations {
grid-template-columns: 1fr;
}
} .radiofm-wrapper ul, 
.radiofm-wrapper ol,
.radiofm-wrapper .section-card__body ul {
list-style: none !important;
padding: 0 !important;
margin: 0 !important;
}
.radiofm-wrapper li {
list-style: none !important;
margin: 0 0 10px 0 !important;
}
.radiofm-wrapper li::before {
content: none !important;
display: none !important;
}  body.radiofm-page #page.single,
body.radiofm-page #page,
body.radiofm-page .main-container,
body.radiofm-page .full-width-article .post-single-content,
body.radiofm-page .full-width-article .comments-area,
body.radiofm-page .full-width-article .related-posts,
body.radiofm-page .full-width-article .postauthor-container {
max-width: 100% !important;
width: 100% !important;
padding: 0 !important;
} body.radiofm-page .single_post {
background: transparent !important;
border: none !important;
border-radius: 0 !important;
padding: 0 !important;
box-shadow: none !important;
} body.radiofm-page .post-content.box,
body.radiofm-page .post-content {
background: transparent !important;
border: none !important;
padding: 0 !important;
margin: 0 !important;
-webkit-line-clamp: unset !important;
line-clamp: unset !important;
overflow: visible !important;
display: block !important;
} body.radiofm-page header .title,
body.radiofm-page .single_post > header,
body.radiofm-page .post-info {
display: none !important;
} body.radiofm-page .radiofm-wrapper {
width: 100% !important;
max-width: 100% !important;
margin: 0 !important;
padding: 0 !important;
position: static !important;
left: auto !important;
right: auto !important;
} body.radiofm-page .station-card {
background: rgba(255, 255, 255, 0.75) !important;
backdrop-filter: blur(16px) !important;
-webkit-backdrop-filter: blur(16px) !important;
border: 1px solid rgba(255, 255, 255, 0.9) !important;
box-shadow: 0 4px 20px rgba(23, 178, 231, 0.07), 0 1px 3px rgba(0,0,0,0.05) !important;
}
.radiofm-wrapper {
width: 100% !important;
max-width: 100% !important;
position: static !important;
left: auto !important;
margin: 0 !important;
box-sizing: border-box !important;
}
body.radiofm-page .radiofm-wrapper {
padding: 0 clamp(16px, 4vw, 60px) !important;
padding-bottom: 160px !important;
}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Poppins:wght@400;500;600;700&display=swap");
:root { --primary: #0d9488; --primary-light: #2dd4bf; --primary-dark: #115e59; --accent: #10b981; --accent-light: #6ee7b7; --dark: #0f172a; --dark-green: #1e293b; --light: #f0fdfa; --surface: #ffffff;
--text-main: #334155; --text-muted: #64748b; } html,
body {
background-color: var(--light) !important;
color: var(--text-main) !important;
font-family: 'Inter', sans-serif !important;
margin: 0;
padding: 0;
min-height: 100vh;
}
html.dark,
html.dark body {
background-color: #0f172a !important; color: #f1f5f9 !important;
}
.radiofm-wrapper {
font-family: 'Inter', sans-serif;
background-color: transparent; -webkit-tap-highlight-color: transparent;
transition: background-color 0.3s, color 0.3s;
color: var(--text-main);
}
.radiofm-wrapper h1,
.radiofm-wrapper h2,
.radiofm-wrapper h3,
.radiofm-wrapper h4,
.radiofm-wrapper h5,
.radiofm-wrapper h6 {
font-family: 'Poppins', sans-serif;
}
.dark .radiofm-wrapper {
background-color: var(--dark-green);
color: #f0fdfa;
} @media (max-width: 640px) {
.container {
padding-left: 1rem;
padding-right: 1rem;
padding-bottom: 130px; }
.tab-buttons {
display: flex;
overflow-x: auto;
white-space: nowrap;
padding-bottom: 8px;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
gap: 8px;
mask-image: linear-gradient(to right, black 95%, transparent 100%);
}
.tab-buttons::-webkit-scrollbar {
display: none;
}
.tab-button {
font-size: 14px;
padding: 8px 18px;
flex-shrink: 0;
background: rgba(255, 255, 255, 0.6);
backdrop-filter: blur(8px);
border-radius: 24px;
border: 1px solid rgba(255, 255, 255, 0.8);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
}
.dark .tab-button {
background: rgba(19, 78, 74, 0.4); border-color: rgba(45, 212, 191, 0.2);
color: #ccfbf1;
}
.tab-button.active {
background: #ccfbf1; color: #0f766e; border-color: #99f6e4;
}
.dark .tab-button.active {
background: rgba(20, 184, 166, 0.2);
color: #5eead4;
border-color: #2dd4bf;
}
.audio-player {
padding: 16px 20px 28px 20px;
height: auto;
display: flex;
flex-direction: column;
gap: 10px;
border-top-left-radius: 32px;
border-top-right-radius: 32px;
box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.05);
}
.audio-player-controls {
display: grid;
grid-template-columns: auto 1fr auto;
gap: 16px;
width: 100%;
margin-bottom: 8px;
}
.audio-player-info {
margin: 0;
text-align: left;
display: flex;
flex-direction: column;
justify-content: center;
}
.station-name {
font-size: 16px;
font-weight: 600;
margin-bottom: 4px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
max-width: calc(100% - 10px);
letter-spacing: -0.01em;
}
.station-metadata {
font-size: 13px;
opacity: 0.85;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.station-url {
display: none;
}
.audio-player-info {
min-width: 0;
}
} .video-js {
background: transparent;
} .play-pause-btn {
width: 56px;
height: 56px;
font-size: 22px;
order: -1;
box-shadow: 0 10px 25px -5px rgba(13, 148, 136, 0.4); border-radius: 50%;
background: linear-gradient(135deg, #ccfbf1 0%, #99f6e4 100%);
color: #0f766e;
border: none;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
position: relative;
z-index: 10;
}
.play-pause-btn:hover {
transform: scale(1.08) translateY(-2px);
background: linear-gradient(135deg, #99f6e4 0%, #5eead4 100%);
box-shadow: 0 15px 30px -5px rgba(13, 148, 136, 0.5);
}
.play-pause-btn.playing {
animation: pulse-soft 3s infinite;
}
.dark .play-pause-btn {
background: linear-gradient(135deg, #134e4a 0%, #115e59 100%);
color: #5eead4;
box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.5);
}
.dark .play-pause-btn:hover {
background: linear-gradient(135deg, #115e59 0%, #0f766e 100%);
color: #99f6e4;
}
.volume-control {
width: auto;
margin-left: 0;
gap: 16px;
display: flex;
align-items: center;
}
.file-upload {
padding: 24px;
display: flex;
flex-direction: column;
align-items: center;
border: 2px dashed #99f6e4; border-radius: 16px;
background-color: #f0fdfa; cursor: pointer;
transition: all 0.3s;
margin-bottom: 20px;
}
.dark .file-upload {
background-color: rgba(19, 78, 74, 0.3);
border-color: #115e59;
}
.file-upload:hover {
border-color: #2dd4bf;
background-color: #ecfdf5;
transform: translateY(-1px);
}
.file-upload i {
font-size: 32px;
color: #2dd4bf;
margin-bottom: 12px;
}
.file-upload-text {
text-align: center;
color: var(--text-muted);
}
.file-upload-input {
display: none;
} .stream-input {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 20px;
}
.stream-input input {
flex-grow: 1;
padding: 12px 16px;
border: 1px solid #e2e8f0;
border-radius: 12px;
font-size: 15px;
transition: all 0.3s;
}
.dark .stream-input input {
background-color: rgba(30, 41, 59, 0.5);
border-color: #334155;
color: white;
}
.stream-input input:focus {
border-color: #2dd4bf;
box-shadow: 0 0 0 3px rgba(45, 212, 191, 0.2);
outline: none;
}
.stream-input button {
width: 100%;
padding: 14px;
background-color: var(--primary);
color: white;
border: none;
border-radius: 12px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s;
box-shadow: 0 4px 6px rgba(13, 148, 136, 0.2);
}
.stream-input button:hover {
background-color: var(--primary-dark);
transform: translateY(-1px);
box-shadow: 0 6px 12px rgba(13, 148, 136, 0.3);
} .vjs-control-bar {
position: static !important;
padding-top: 5px;
background-color: transparent !important;
}
.vjs-fullscreen-control,
.vjs-picture-in-picture-control,
.vjs-big-play-button,
.vjs-loading-spinner {
display: none !important;
} ::-webkit-scrollbar {
width: 6px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: #cbd5e1;
border-radius: 10px;
}
.dark ::-webkit-scrollbar-thumb {
background: #334155;
}
::-webkit-scrollbar-thumb:hover {
background: #94a3b8;
} .station-item {
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
border-radius: 16px;
border: 1px solid transparent;
min-width: 0;
}
.station-item h4 {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
font-family: 'Poppins', sans-serif;
}
.station-item:hover {
transform: translateY(-2px) scale(1.01);
background-color: white;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
}
.dark .station-item:hover {
background-color: #1e293b;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3);
}
.gradient-text {
background: linear-gradient(135deg, #0d9488, #10b981); -webkit-background-clip: text;
background-clip: text;
color: transparent;
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translate(-50%, 20px);
}
to {
opacity: 1;
transform: translate(-50%, 0);
}
}
@keyframes pulse-soft {
0% {
box-shadow: 0 0 0 0 rgba(45, 212, 191, 0.4);
}
70% {
box-shadow: 0 0 0 15px rgba(45, 212, 191, 0);
}
100% {
box-shadow: 0 0 0 0 rgba(45, 212, 191, 0);
}
100% {
box-shadow: 0 0 0 0 rgba(45, 212, 191, 0);
}
} .audio-player-controls {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 8px;
gap: 16px;
} .audio-player {
width: 100%;
background-color: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
color: #334155;
padding: 16px 24px;
transition: all 0.3s ease;
}
.dark .audio-player {
background-color: rgba(30, 41, 59, 0.85); color: #f0fdfa;
border-top: 1px solid rgba(255, 255, 255, 0.05);
}
.audio-player-info {
flex-grow: 1;
margin: 0 20px;
overflow: hidden;
min-width: 0;
}
.progress-container {
width: 100%;
height: 6px;
background-color: #e2e8f0;
border-radius: 3px;
cursor: pointer;
margin-top: 12px;
overflow: hidden;
}
.dark .progress-container {
background-color: #1e293b;
}
.progress-bar {
height: 100%;
background: linear-gradient(90deg, #2dd4bf, #10b981);
border-radius: 3px;
width: 0%;
position: relative;
}
.progress-bar::after {
content: '';
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 10px;
background: rgba(255, 255, 255, 0.3);
filter: blur(2px);
} .filter-container {
position: relative;
margin-bottom: 20px;
}
.filter-input {
width: 100%;
padding: 12px 16px 12px 44px;
border: 1px solid #e2e8f0;
border-radius: 12px;
font-size: 15px;
transition: all 0.3s;
background-color: white;
}
.dark .filter-input {
background-color: rgba(30, 41, 59, 0.5);
border-color: #334155;
}
.filter-input:focus {
outline: none;
border-color: #2dd4bf;
box-shadow: 0 0 0 3px rgba(45, 212, 191, 0.2);
}
.filter-icon {
position: absolute;
left: 14px;
top: 50%;
transform: translateY(-50%);
color: #94a3b8;
font-size: 16px;
}
.filter-clear {
position: absolute;
right: 14px;
top: 50%;
transform: translateY(-50%);
color: #94a3b8;
cursor: pointer;
display: none;
padding: 4px;
}
.filter-clear:hover {
color: #64748b;
}
.no-results {
text-align: center;
padding: 32px;
color: #64748b;
}
.no-results i {
font-size: 40px;
margin-bottom: 16px;
color: #cbd5e1;
opacity: 0.5;
} .tab-container {
margin-top: 24px;
}
.tab-buttons {
display: flex;
border-bottom: 1px solid #e2e8f0;
margin-bottom: 24px;
}
.dark .tab-buttons {
border-color: #334155;
}
.tab-button {
padding: 10px 20px;
cursor: pointer;
border-bottom: 2px solid transparent;
font-weight: 500;
color: #64748b;
transition: all 0.3s;
font-family: 'Poppins', sans-serif;
}
.tab-button:hover {
color: #0d9488;
}
.tab-button.active {
color: #0d9488;
border-bottom-color: #0d9488;
}
.dark .tab-button.active {
color: #2dd4bf;
border-bottom-color: #2dd4bf;
}
.tab-content {
display: none;
animation: fadeIn 0.3s ease-out;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(5px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.tab-content.active {
display: block;
} .m3u-list-buttons {
display: flex;
flex-wrap: wrap;
gap: 12px;
width: 100%;
}
.m3u-list-btn {
flex: 1 1 calc(33.333% - 10px);
min-width: 110px;
font-size: 14px;
font-family: 'Poppins', sans-serif;
font-weight: 500;
padding: 14px 12px;
margin-bottom: 0;
justify-content: center;
border-radius: 16px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
background-color: #0d9488;
color: white;
border: none;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
display: flex;
align-items: center;
}
.m3u-list-btn:hover {
background-color: #0f766e;
transform: translateY(-2px);
box-shadow: 0 6px 12px -2px rgba(13, 148, 136, 0.3);
}
.m3u-list-btn.secondary {
background-color: #f1f5f9;
color: #334155;
}
.m3u-list-btn.secondary:hover {
background-color: #e2e8f0;
color: #1e293b;
}
.m3u-list-btn.tertiary {
background-color: #fff;
color: #334155;
border: 1px solid #e2e8f0;
}
.m3u-list-btn.tertiary:hover {
background-color: #f8fafc;
border-color: #cbd5e1;
} .hls-status {
display: none !important;
}
.hls-status.active {
display: none !important;
}
.hls-status.error {
background: rgba(239, 68, 68, 0.8);
}
.station-logo {
width: 44px;
height: 44px;
object-fit: contain;
border-radius: 10px;
background-color: white;
margin-right: 14px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}
.player-logo {
width: 52px;
height: 52px;
object-fit: contain;
border-radius: 12px;
background-color: #1e293b;
margin-right: 14px;
} .eq-slider-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
width: 20px;
}
.eq-range {
-webkit-appearance: none;
appearance: none;
width: 100px;
height: 5px;
background: #cbd5e1;
outline: none;
border-radius: 3px;
transform: rotate(-90deg);
transform-origin: center;
cursor: pointer;
}
.eq-range:is(.dark *) {
background: #334155;
}
.eq-range::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 14px;
height: 14px;
border-radius: 50%;
background: #14b8a6; cursor: pointer;
box-shadow: 0 0 0 2px white;
}
.dark .eq-range::-webkit-slider-thumb {
background: #2dd4bf;
box-shadow: 0 0 0 2px #0f172a;
} .radiofm-wrapper ul,
.radiofm-wrapper ol {
list-style: none !important;
margin: 0 !important;
padding: 0 !important;
}
.radiofm-wrapper li {
list-style: none !important;
margin: 0 !important;
} .radiofm-wrapper #recentList,
.radiofm-wrapper #quickFavoritesList {
list-style: none !important;
margin: 0 !important;
padding: 0 !important;
}
.radiofm-wrapper #recentList li,
.radiofm-wrapper #quickFavoritesList li {
margin: 0 !important;
list-style: none !important;
} #eqPanel button {
background: transparent !important;
border: none !important;
padding: 0.25rem 0.5rem !important;
cursor: pointer;
}
#eqResetBtn {
background: rgba(100, 116, 139, 0.1) !important;
padding: 0.375rem 0.75rem !important;
border-radius: 0.375rem !important;
font-weight: 500;
}
#eqResetBtn:hover {
background: rgba(100, 116, 139, 0.2) !important;
}
.dark #eqResetBtn {
background: rgba(148, 163, 184, 0.1) !important;
}
.dark #eqResetBtn:hover {
background: rgba(148, 163, 184, 0.2) !important;
}
#eqCloseBtn {
width: 1.5rem !important;
height: 1.5rem !important;
display: flex !important;
align-items: center;
justify-content: center;
} .eq-range,
input[type="range"].eq-range,
.slider-vertical {
-webkit-appearance: slider-vertical !important;
appearance: slider-vertical !important;
writing-mode: bt-lr !important; writing-mode: vertical-lr !important; width: 4px !important;
height: 100px !important;
padding: 0 !important;
margin: 0 auto !important;
background: #cbd5e1 !important;
border-radius: 9999px !important;
outline: none !important;
cursor: pointer !important;
transform: none !important; }
.dark .eq-range,
.dark input[type="range"].eq-range {
background: #475569 !important;
} .eq-range::-webkit-slider-thumb {
-webkit-appearance: none !important;
appearance: none !important;
width: 14px !important;
height: 14px !important;
border-radius: 50% !important;
background: #14b8a6 !important;
cursor: pointer !important;
box-shadow: 0 0 0 2px white !important;
transition: all 0.2s !important;
}
.dark .eq-range::-webkit-slider-thumb {
background: #2dd4bf !important;
box-shadow: 0 0 0 2px #1e293b !important;
}
.eq-range::-webkit-slider-thumb:hover {
transform: scale(1.2) !important;
}
.eq-range::-moz-range-thumb {
width: 14px !important;
height: 14px !important;
border-radius: 50% !important;
background: #14b8a6 !important;
cursor: pointer !important;
border: 2px solid white !important;
transition: all 0.2s !important;
}
.dark .eq-range::-moz-range-thumb {
background: #2dd4bf !important;
border-color: #1e293b !important;
} .eq-slider-container {
display: flex !important;
flex-direction: column !important;
align-items: center !important;
justify-content: flex-end !important;
height: 100% !important;
} #eqBtn:hover,
#historyBtn:hover,
#sleepTimerBtn:hover,
#themeToggleBtn:hover {
background-color: #f0fdfa;
color: #0d9488;
transform: scale(1.1);
border-radius: 9999px !important;
} .radiofm-wrapper button {
display: inline-flex;
align-items: center;
justify-content: center;
touch-action: manipulation;
}
.radiofm-wrapper label {
display: inline-flex;
align-items: center;
margin: 0 !important;
padding: 0 !important;
line-height: 1 !important;
width: auto;
cursor: pointer;
}
.dark #eqBtn:hover,
.dark #historyBtn:hover,
.dark #sleepTimerBtn:hover,
.dark #themeToggleBtn:hover {
background-color: rgba(255, 255, 255, 0.1);
color: #5eead4;
border-radius: 9999px !important;
} #audioPlayer {
background-color: rgba(255, 255, 255, 0.95) !important; box-shadow: 0 -4px 20px rgba(13, 148, 136, 0.15) !important;
border-top: 1px solid rgba(13, 148, 136, 0.1) !important;
}
.dark #audioPlayer {
background-color: rgba(30, 41, 59, 0.95) !important; box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.4) !important;
border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}
.audio-player {
background-color: transparent !important; box-shadow: none !important;
border: none !important;
}
.dark .audio-player {
background-color: transparent !important;
box-shadow: none !important;
border: none !important;
} #historyList li {
display: flex !important;
align-items: flex-start !important;
justify-content: space-between !important;
padding: 8px 12px !important;
border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
border-radius: 8px !important;
margin-bottom: 4px !important;
transition: background-color 0.2s;
}
#historyList li:hover {
background-color: rgba(13, 148, 136, 0.05) !important; }
.dark #historyList li {
border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}
.dark #historyList li:hover {
background-color: rgba(255, 255, 255, 0.05) !important;
} #historyList button {
padding: 6px !important;
border-radius: 50% !important;
margin-left: 4px !important;
background-color: transparent !important;
color: var(--text-muted) !important;
transition: all 0.2s !important;
}
#historyList button:hover {
background-color: rgba(13, 148, 136, 0.1) !important;
color: var(--primary) !important;
transform: scale(1.1);
}
.dark #historyList button:hover {
background-color: rgba(255, 255, 255, 0.1) !important;
color: var(--accent) !important;
} #audioPlayer button:not(.station-card__play-btn):not(.station-card__fav-btn),
#searchLinks button,
#historyBtn,
#eqBtn,
#sleepTimerBtn,
#playPauseBtn {
padding: 0 !important;
} #historyBtn,
#eqBtn,
#sleepTimerBtn {
width: 2.25rem !important;
height: 2.25rem !important;
padding: 0 !important;
}
#searchLinks button {
width: 2rem !important;
height: 2rem !important;
padding: 0 !important;
} #eqPanel:not(.rfm-hidden),
#historyPanel:not(.rfm-hidden) {
display: block !important;
visibility: visible !important;
opacity: 1 !important;
position: absolute !important;
z-index: 1060 !important; } #eqPanel {
position: absolute;
bottom: 100%;
right: 0.5rem; margin-bottom: 0.5rem; z-index: 1060;
background: white;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
border: 1px solid #e2e8f0;
border-radius: 12px;
width: 16rem; padding: 1rem;
}
#historyPanel {
position: absolute;
bottom: 100%;
right: 4rem; margin-bottom: 0.5rem; z-index: 1060;
background: white;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
border: 1px solid #e2e8f0;
border-radius: 12px;
width: 18rem; max-height: 20rem; overflow: hidden;
display: flex;
flex-direction: column;
}
.dark #eqPanel,
.dark #historyPanel {
background: #1e293b;
border-color: #334155;
} #eqPanel *,
#historyPanel * {
opacity: 1 !important;
visibility: visible !important;
}
#eqPanel h4,
#historyPanel h4 {
color: #1e293b;
}
.dark #eqPanel h4,
.dark #historyPanel h4 {
color: white;
} #eqPanel.rfm-hidden,
#historyPanel.rfm-hidden {
display: none !important;
} #audioPlayer #eqPanel,
#audioPlayer #historyPanel {
display: none; }
#audioPlayer #eqPanel:not(.rfm-hidden),
#audioPlayer #historyPanel:not(.rfm-hidden) {
display: block !important;
} #eqPanel button {
background: transparent !important;
border: none !important;
padding: 0.25rem 0.5rem !important;
cursor: pointer;
}
#eqResetBtn {
background: rgba(100, 116, 139, 0.1) !important;
padding: 0.375rem 0.75rem !important;
border-radius: 0.375rem !important;
font-weight: 500;
}
#eqResetBtn:hover {
background: rgba(100, 116, 139, 0.2) !important;
}
.dark #eqResetBtn {
background: rgba(148, 163, 184, 0.1) !important;
}
.dark #eqResetBtn:hover {
background: rgba(148, 163, 184, 0.2) !important;
}
#eqCloseBtn {
width: 1.5rem !important;
height: 1.5rem !important;
display: flex !important;
align-items: center;
justify-content: center;
} .eq-range {
writing-mode: bt-lr; -webkit-appearance: slider-vertical; width: 4px !important;
height: 100px !important;
padding: 0 !important;
margin: 0 !important;
} label.section-card__action-btn {
width: 32px !important;
height: 32px !important;
min-width: 32px !important;
max-width: 32px !important;
} #volumeSlider {
-webkit-appearance: none;
appearance: none;
background: linear-gradient(to right, #14b8a6 0%, #14b8a6 70%, #cbd5e1 70%, #cbd5e1 100%);
outline: none;
transition: opacity 0.2s;
}
#volumeSlider:hover {
opacity: 1;
}
#volumeSlider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 14px;
height: 14px;
border-radius: 50%;
background: #14b8a6;
cursor: pointer;
box-shadow: 0 0 0 2px white, 0 2px 4px rgba(0, 0, 0, 0.2);
transition: all 0.2s;
}
#volumeSlider::-webkit-slider-thumb:hover {
transform: scale(1.2);
box-shadow: 0 0 0 3px white, 0 4px 8px rgba(20, 184, 166, 0.4);
}
#volumeSlider::-moz-range-thumb {
width: 14px;
height: 14px;
border-radius: 50%;
background: #14b8a6;
cursor: pointer;
border: 2px solid white;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
transition: all 0.2s;
}
#volumeSlider::-moz-range-thumb:hover {
transform: scale(1.2);
box-shadow: 0 0 0 1px white, 0 4px 8px rgba(20, 184, 166, 0.4);
}
.dark #volumeSlider {
background: linear-gradient(to right, #2dd4bf 0%, #2dd4bf 70%, #475569 70%, #475569 100%);
}
.dark #volumeSlider::-webkit-slider-thumb {
background: #2dd4bf;
box-shadow: 0 0 0 2px #1e293b, 0 2px 4px rgba(0, 0, 0, 0.4);
}
.dark #volumeSlider::-moz-range-thumb {
background: #2dd4bf;
border-color: #1e293b;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}:root {
--clr-bg:        #f0f4f8;
--clr-white:     #ffffff;
--clr-accent:    #17b2e7;
--clr-accent-dk: #2563eb;
--clr-secondary: #8a5a99;
--clr-txt:       #1e293b;
--clr-muted:     #64748b;
--clr-border:    #e2e8f0;
--clr-card:      #ffffff;
--clr-tag:       #eff6ff;
--clr-tag-txt:   #17b2e7;
--radius-sm: 8px;
--radius:    12px;
--radius-lg: 16px;
--shadow-sm: 0 1px 3px rgba(0,0,0,.08);
--shadow:    0 4px 16px rgba(0,0,0,.08);
--shadow-lg: 0 8px 32px rgba(0,0,0,.12);
--font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
--font-mono: 'Fira Code', 'Courier New', monospace;
--header-h: 70px;
--max-w:    1400px;
--content-w: 760px;
} #reading-progress {
position: fixed;
top: 0;
left: 0;
z-index: 9999;
height: 3px;
width: 0%;
background: linear-gradient(90deg, var(--clr-accent) 0%, var(--clr-accent-dk) 100%);
border-radius: 0 2px 2px 0;
transition: width 0.1s linear;
pointer-events: none;
} *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
}
body {
font-family: var(--font);
font-size: 16px;
line-height: 1.7;
color: var(--clr-txt);
background: var(--clr-bg);
overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--clr-accent); text-decoration: none; transition: color .2s; }
a:hover { color: var(--clr-accent-dk); }
a:focus-visible { outline: 2px solid var(--clr-accent); outline-offset: 3px; border-radius: 3px; }
ul, ol { list-style: none; }
button { cursor: pointer; font-family: var(--font); }
input, select, textarea { font-family: var(--font); }
h1,h2,h3,h4,h5,h6 {
color: var(--clr-txt);
font-weight: 700;
line-height: 1.3;
text-transform: none;
}
p { margin-bottom: 1rem; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
td, th { padding: 10px 14px; border: 1px solid var(--clr-border); }
pre { overflow: auto; }
hr { border: 0; border-top: 1px solid var(--clr-border); margin: 2rem 0; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; } @font-face {
font-family: 'point';
src: url(//subiectiv.com/wp-content/themes/subiect/fonts/point.eot?29400515);
src: url(//subiectiv.com/wp-content/themes/subiect/fonts/point.eot?29400515#iefix) format('embedded-opentype'),
url(//subiectiv.com/wp-content/themes/subiect/fonts/point.woff?29400515) format('woff'),
url(//subiectiv.com/wp-content/themes/subiect/fonts/point.ttf?29400515) format('truetype'),
url(//subiectiv.com/wp-content/themes/subiect/fonts/point.svg?29400515#point) format('svg');
font-weight: normal;
font-style: normal;
font-display: swap;
}
[class^="icon-"]::before, [class*=" icon-"]::before {
font-family: "point";
font-style: normal;
font-weight: normal;
speak: none;
display: inline-block;
text-decoration: inherit;
width: 1em;
text-align: center;
font-variant: normal;
text-transform: none;
line-height: 1em;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-search::before  { content: '\e800'; }
.icon-up-dir::before  { content: '\e801'; }
.icon-down-dir::before{ content: '\e802'; }
.icon-menu::before    { content: '\e803'; }
.icon-facebook::before{ content: '\e807'; }
.icon-twitter::before { content: '\e80d'; }
.icon-youtube::before { content: '\e812'; }
.icon-rss::before     { content: '\e818'; }
.icon-zoom-in::before { content: '\e819'; }
.icon-left::before    { content: '\e81a'; }
.icon-right::before   { content: '\e81b'; } .main-container {
width: 100%;
background: var(--clr-bg);
padding-left: 0;
padding-right: 0;
}
#page {
max-width: var(--max-w);
margin: 0 auto;
padding: 32px 20px 48px;
width: 100%;
} #page.single {
max-width: var(--max-w); } .single .content-sidebar-wrap {
display: flex;
gap: 32px;
}
.single .content {
flex: 1; }
.single .sidebar {
width: 380px; } #page.radiofm-full-width{
max-width: 100%;
padding: 0;
margin: 0;
width: 100%;
}
body#blog #page.radiofm-full-width .content-sidebar-wrap,
body#blog #page.radiofm-full-width .content,
body#blog #page.radiofm-full-width .article{
width: 100%;
max-width: 100%;
float: none;
}
body#blog .content{ 
width: 100%; 
padding-left: 0;
padding-right: 0;
} #reading-progress {
position: fixed;
top: var(--header-h);
left: 0;
width: 0%;
height: 3px;
background: var(--clr-accent);
z-index: 9999;
transition: width .1s linear;
} .site-header {
position: sticky;
top: 0;
z-index: 200;
width: 100%;
height: var(--header-h);
background: rgba(255,255,255,.92);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border-bottom: 1px solid var(--clr-border);
box-shadow: var(--shadow-sm);
overflow: visible !important;
}
.header-inner {
display: flex;
align-items: center;
justify-content: space-between;
max-width: var(--max-w);
margin: 0 auto;
height: 100%;
padding: 0 20px;
gap: 24px;
} .site-branding {
flex-shrink: 0;
background: none;
padding: 0;
float: none;
width: auto;
overflow: visible !important;
}
.site-branding::after { display: none; }
.site-branding h1,
.site-branding h2 {
font-size: 20px;
font-weight: 800;
letter-spacing: -.5px;
margin: 0;
text-transform: none;
line-height: 1;
}
#logo a {
display: flex;
align-items: center;
gap: 8px;
color: var(--clr-txt);
font-weight: 800;
font-size: 20px;
letter-spacing: -.5px;
text-transform: none;
float: none;
}
#logo a img {
height: 36px;
width: auto;
float: none;
display: block;
}
#logo a:hover { color: var(--clr-accent); } #logo a::after {
content: '';
display: inline-block;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--clr-accent);
margin-left: 2px;
flex-shrink: 0;
}
#logo.image-logo a::after { display: none; } .header-actions {
display: flex;
align-items: center;
gap: 16px;
flex-shrink: 0;
} .header-search-form {
display: flex;
align-items: center;
}
.header-search-form input[type="search"] {
width: 180px;
padding: 7px 14px;
border: 1px solid var(--clr-border);
border-radius: var(--radius);
font-size: 14px;
background: var(--clr-bg);
color: var(--clr-txt);
outline: none;
transition: border-color .2s, width .3s;
}
.header-search-form input[type="search"]:focus {
border-color: var(--clr-accent);
width: 220px;
}
.header-search-form button {
background: none;
border: none;
padding: 6px 8px;
color: var(--clr-muted);
margin-left: -36px;
}
.header-search-form button:hover { color: var(--clr-accent); } .primary-navigation {
display: flex;
align-items: center;
float: none;
max-width: none;
}
#navigation {
display: flex;
align-items: center;
font-size: 14px;
width: auto;
float: none;
}
#navigation .menu {
display: flex;
align-items: center;
gap: 2px;
float: none;
}
#navigation ul { margin: 0; padding: 0; }
#navigation ul li {
float: none;
position: relative;
}
#navigation ul li a,
#navigation ul li a:link,
#navigation ul li a:visited {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 8px 14px;
color: var(--clr-txt);
font-weight: 600;
font-size: 14px;
border-radius: var(--radius-sm);
border: none;
text-transform: none;
min-height: auto;
line-height: 1.4;
white-space: nowrap;
transition: background .2s, color .2s;
}
#navigation > ul > li:first-child a { border-left: none; }
#navigation > ul > li:last-child a  { border-right: none; }
#navigation ul li a:hover,
.primary-navigation a:hover {
background: var(--clr-tag);
color: var(--clr-accent);
}
.menu .current-menu-item > a,
.menu .current-menu-ancestor > a {
color: var(--clr-accent);
background: var(--clr-tag);
} #navigation ul ul {
position: absolute;
top: 100%;
left: 0;
min-width: 200px;
background: var(--clr-white);
border: 1px solid var(--clr-border);
border-radius: var(--radius);
box-shadow: var(--shadow-lg);
opacity: 0;
visibility: hidden;
pointer-events: none;
transition: opacity .2s, visibility .2s;
z-index: 300;
padding: 8px 0 8px; display: block;
}
#navigation ul li:hover > ul {
opacity: 1;
visibility: visible;
pointer-events: auto;
top: 100%;
left: 0;
}
#navigation ul ul li {
width: 100%;
padding: 0;
}
#navigation ul ul li:hover { background: none; }
#navigation ul ul a,
#navigation ul ul a:link,
#navigation ul ul a:visited {
display: block;
width: 100%;
padding: 10px 16px;
border-radius: var(--radius-sm);
border: none;
display: block;
width: 100%;
padding: 12px 20px;
border-radius: 0; border: none;
font-size: 14px;
text-transform: none;
color: var(--clr-txt);
min-height: auto;
box-sizing: border-box;
}
#navigation ul ul li a:hover { background: var(--clr-tag); color: var(--clr-accent); }
#navigation ul li:hover ul ul { opacity: 0; visibility: hidden; }
#navigation ul ul li:hover ul {
opacity: 1;
visibility: visible;
top: 0;
left: 100%;
}
.menu-item-has-children > a::after {
content: '\25BE'; font-size: 14px;
color: var(--clr-accent);
display: inline-block;
vertical-align: middle;
line-height: 1;
margin-top: -1px;
margin-left: 4px;
}
.footer-navigation .menu-item-has-children > a::after { display: none; }
.sub-menu .menu-item-has-children > a::after { content: '\25B8'; } #pull {
display: none;
background: none;
border: 1px solid var(--clr-border);
border-radius: var(--radius-sm);
padding: 8px 10px;
color: var(--clr-txt);
font-size: 20px;
line-height: 1;
cursor: pointer;
} .post.excerpt {
display: flex;
gap: 28px;
align-items: stretch;
background: rgba(255, 255, 255, 0.65);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid rgba(255, 255, 255, 0.9);
border-radius: 24px;
overflow: visible;
margin-bottom: 32px;
padding: 16px;
transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
box-shadow: 0 10px 40px rgba(23, 178, 231, 0.06), inset 0 0 0 1px rgba(255, 255, 255, 0.5);
}
.post.excerpt:hover {
box-shadow: 0 20px 50px rgba(23, 178, 231, 0.12), inset 0 0 0 1px rgba(255, 255, 255, 0.8);
transform: translateY(-5px);
background: rgba(255, 255, 255, 0.85);
} .post.excerpt header,
.post.excerpt .post-content,
.post.excerpt .readMore {
padding: 0;
}
.post.excerpt > header,
.post.excerpt > .post-content,
.post.excerpt > .readMore {
padding: 16px 16px 16px 0;
} .post.excerpt:not(:has(#featured-thumbnail)) .card-body { padding: 24px; }
.post.excerpt .card-body {
flex: 1;
display: flex;
flex-direction: column;
padding: 12px 16px 12px 0;
min-width: 0;
justify-content: center;
} .post.excerpt #featured-thumbnail {
position: relative;
flex-shrink: 0;
} .post.excerpt .title {
font-size: 22px;
font-weight: 800;
margin-bottom: 12px;
line-height: 1.35;
letter-spacing: -0.4px;
word-wrap: break-word;
overflow-wrap: break-word;
}
.post.excerpt .title a {
color: var(--clr-txt);
transition: color .3s ease;
}
.post.excerpt .title a:hover { color: var(--clr-accent); } .post-info {
display: flex;
flex-wrap: wrap;
gap: 10px 14px;
align-items: center;
color: var(--clr-muted);
font-size: 13px;
margin-bottom: 16px;
}
.post-info > span, .post-info > .theauthor, .post-info > .thetime, .post-info > .read-time {
display: inline-flex;
align-items: center;
background: rgba(255, 255, 255, 0.6);
padding: 5px 12px;
border-radius: 20px;
border: 1px solid rgba(0, 0, 0, 0.03);
box-shadow: 0 2px 6px rgba(0,0,0,0.02);
}
.post-info a { color: var(--clr-muted); font-weight: 600; }
.post-info a:hover { color: var(--clr-accent); } .post-content {
color: var(--clr-muted);
font-size: 15px;
line-height: 1.65;
flex: 1;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
margin-bottom: 20px;
} .readMore {
margin-top: auto;
}
.readMore a {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
height: 44px;
padding: 0 24px;
color: #fff;
background: var(--clr-accent);
font-size: 14px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
border-radius: 12px;
transition: all 0.2s ease;
box-shadow: 0 4px 14px rgba(23, 178, 231, 0.3);
}
.readMore a::after { 
content: '→'; 
font-size: 16px; 
line-height: 1;
transition: transform 0.3s ease; 
}
.readMore a:hover { 
background: var(--clr-secondary);
box-shadow: 0 4px 12px rgba(138, 90, 153, 0.25);
transform: translateY(-1px);
}
.readMore a:hover::after { transform: translateX(5px); } .clear::after { content: ''; display: table; clear: both; }
.screen-reader-text {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0,0,0,0);
white-space: nowrap;
} .alignleft { float: left; margin: 0 20px 16px 0; max-width: 50%; }
.alignright { float: right; margin: 0 0 16px 20px; max-width: 50%; }
.aligncenter { display: block; margin: 16px auto; max-width: 100%; }
.alignwide { margin-left: -40px; margin-right: -40px; max-width: calc(100% + 80px); }
@media (max-width: 768px) {
.alignwide { margin-left: 0; margin-right: 0; max-width: 100%; }
.alignleft, .alignright { max-width: 100%; float: none; margin: 16px 0; }
} .sticky { position: relative; }
.bypostauthor { }
.gallery { display: flex; flex-wrap: wrap; gap: 8px; }
.gallery-item { flex: 1; min-width: 150px; }
.gallery-item img { border-radius: var(--radius-sm); }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 13px; color: var(--clr-muted); text-align: center; margin-top: 6px; }  .post.excerpt #featured-thumbnail{
position: relative;
flex-shrink: 0;
width: 280px;
height: auto;
min-height: 220px; overflow: visible;
display: block;
border-radius: 16px;
} .post.excerpt #featured-thumbnail .featured-thumbnail {
width: 100%;
height: 100%;
position: absolute;
top: 0; left: 0;
overflow: hidden;
border-radius: 16px;
box-shadow: 0 8px 24px rgba(0,0,0,0.06);
}
.post.excerpt #featured-thumbnail .featured-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.post.excerpt:hover #featured-thumbnail .featured-thumbnail img {
transform: scale(1.08); } .post.excerpt #featured-thumbnail::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: linear-gradient(to top, rgba(0,0,0,.5) 0%, transparent 100%);
pointer-events: none;
z-index: 1;
border-radius: 0 0 16px 16px;
} .post.excerpt #featured-thumbnail .featured-cat,
body#blog .post.excerpt .featured-cat{
position: absolute;
bottom: 14px;
left: 14px;
top: auto;
z-index: 3;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
color: var(--clr-accent);
font-size: 11px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: .8px;
padding: 5px 14px;
border-radius: 30px;
display: inline-block;
width: auto;
pointer-events: none;
box-shadow: 0 4px 12px rgba(0,0,0,.15);
transition: transform .3s ease, background .3s;
}
.post.excerpt:hover .featured-cat {
transform: translateY(-3px);
background: rgba(255, 255, 255, 1);
} .frontTitle {
display: flex;
align-items: center;
gap: 12px;
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .8px;
color: var(--clr-muted);
margin-bottom: 20px;
}
.frontTitle::after {
content: '';
flex: 1;
height: 1px;
background: var(--clr-border);
}
.frontTitle .latest { margin: 0; } .no-results { text-align: center; padding: 60px 20px; color: var(--clr-muted); } #page.single .single_post {
background: var(--clr-white);
border: 1px solid var(--clr-border);
border-radius: var(--radius-lg);
padding: 40px 48px;
box-shadow: var(--shadow-sm);
}
.single-title, h1.title {
font-size: 32px;
line-height: 1.25;
font-weight: 800;
margin-bottom: 16px;
color: var(--clr-txt);
text-transform: none;
word-wrap: break-word;
overflow-wrap: break-word;
}
.single_post .post-info {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 12px;
margin-bottom: 28px;
padding-bottom: 20px;
border-bottom: 1px solid var(--clr-border);
}
.single_post .thecategory a {
display: inline-block;
background: var(--clr-tag);
color: var(--clr-tag-txt);
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .6px;
padding: 3px 10px;
border-radius: var(--radius);
} .read-time {
display: inline-flex;
align-items: center;
gap: 4px;
color: var(--clr-muted);
font-size: 13px;
} .post-single-content {
font-size: 16px;
line-height: 1.8;
color: var(--clr-txt);
}
.post-single-content p { margin-bottom: 1.4rem; }
.post-single-content h2 {
font-size: 24px;
margin: 2rem 0 .8rem;
padding-top: 1rem;
border-top: 1px solid var(--clr-border);
}
.post-single-content h3 { font-size: 20px; margin: 1.5rem 0 .6rem; }
.post-single-content h4 { font-size: 17px; margin: 1.2rem 0 .5rem; }
.post-single-content img {
border-radius: var(--radius);
margin: 1.5rem 0;
width: 100%;
max-width: 100%;
height: auto;
}
.post-single-content iframe,
.post-single-content video,
.post-single-content embed {
max-width: 100%;
width: 100%;
height: auto;
}
.post-single-content table {
display: block;
overflow-x: auto;
max-width: 100%;
}
.post-single-content pre {
overflow-x: auto;
max-width: 100%;
}
.post-single-content blockquote {
border-left: 4px solid var(--clr-accent);
margin: 1.5rem 0;
padding: 16px 20px;
background: var(--clr-tag);
border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
font-style: italic;
color: var(--clr-txt);
font-size: 17px;
}
.post-single-content blockquote p { margin: 0; font-size: 17px; }
.post-single-content pre {
background: #1e293b;
color: #e2e8f0;
border-radius: var(--radius);
padding: 20px 24px;
overflow: auto;
font-family: var(--font-mono);
font-size: 14px;
line-height: 1.6;
border: none;
}
.post-single-content code {
background: var(--clr-tag);
color: var(--clr-accent-dk);
padding: 2px 6px;
border-radius: var(--radius-sm);
font-family: var(--font-mono);
font-size: .9em;
}
.post-single-content pre code { background: none; color: inherit; padding: 0; }
.post-single-content a { color: var(--clr-accent); } .tags {
margin-top: 24px;
padding-top: 20px;
border-top: 1px solid var(--clr-border);
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
}
.tags .tagtext {
font-size: 13px;
font-weight: 700;
color: var(--clr-muted);
text-transform: uppercase;
letter-spacing: .5px;
}
.tags a {
display: inline-block;
background: var(--clr-bg);
color: var(--clr-muted);
font-size: 13px;
padding: 4px 12px;
border: 1px solid var(--clr-border);
border-radius: var(--radius);
transition: all .2s;
}
.tags a:hover {
background: var(--clr-tag);
color: var(--clr-accent);
border-color: var(--clr-accent);
} .related-posts {
margin-top: 40px;
padding-top: 28px;
border-top: 2px solid var(--clr-border);
}
.related-posts h3 {
font-size: 14px;
text-transform: uppercase;
letter-spacing: .8px;
color: var(--clr-muted);
font-weight: 700;
margin-bottom: 20px;
}
.related-posts .postauthor-top ul {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
gap: 16px;
margin: 0;
}
.related-posts li {
background: var(--clr-bg);
border: 1px solid var(--clr-border);
border-radius: var(--radius);
overflow: hidden;
transition: box-shadow .2s;
}
.related-posts li:hover { box-shadow: var(--shadow); }
.related-posts .relatedthumb {
display: flex;
flex-direction: column;
color: var(--clr-txt);
}
.related-posts .rthumb {
display: block;
height: 120px;
overflow: hidden;
}
.related-posts .rthumb img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform .3s;
}
.related-posts li:hover .rthumb img { transform: scale(1.05); }
.related-posts .relatedthumb span:not(.rthumb) {
display: block;
padding: 10px 12px;
font-size: 13px;
font-weight: 600;
line-height: 1.4;
}
.related-posts .meta {
padding: 0 12px 10px;
font-size: 12px;
color: var(--clr-muted);
}
.related-posts .meta a { color: var(--clr-muted); } .postauthor-container {
margin-top: 32px;
padding: 24px;
background: var(--clr-bg);
border: 1px solid var(--clr-border);
border-radius: var(--radius-lg);
}
.postauthor-container h4 {
font-size: 12px;
text-transform: uppercase;
letter-spacing: .7px;
color: var(--clr-muted);
margin-bottom: 16px;
}
.postauthor {
display: flex;
gap: 20px;
align-items: flex-start;
}
.postauthor img {
width: 72px;
height: 72px;
border-radius: 50%;
object-fit: cover;
flex-shrink: 0;
}
.postauthor h5 {
font-size: 16px;
margin-bottom: 6px;
}
.postauthor p {
font-size: 14px;
color: var(--clr-muted);
margin: 0;
} .breadcrumbs{
font-size: 13px;
color: var(--clr-muted);
margin-bottom: 20px;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 6px;
align-items: center;
}
.breadcrumbs a { color: var(--clr-accent); }
.breadcrumbs a:hover { color: var(--clr-accent); }
.breadcrumbs .sep { color: var(--clr-border); } .pagination {
display: flex;
justify-content: center;
gap: 8px;
flex-wrap: wrap;
margin: 32px 0 8px;
}
.pagination a,
.pagination span {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 40px;
height: 40px;
padding: 0 12px;
border: 1px solid var(--clr-border);
border-radius: var(--radius-sm);
font-size: 14px;
font-weight: 600;
color: var(--clr-txt);
background: var(--clr-white);
transition: all .2s;
}
.pagination a:hover { border-color: var(--clr-accent); color: var(--clr-accent); }
.pagination .current, .pagination .dots {
background: var(--clr-accent);
color: #fff;
border-color: var(--clr-accent);
}
.pagination .dots { background: var(--clr-white); color: var(--clr-muted); border-color: var(--clr-border); }
.nav-previous a, .nav-next a {
display: inline-flex;
align-items: center;
gap: 6px;
color: var(--clr-accent);
font-weight: 600;
font-size: 14px;
}
.nav-previous a:hover, .nav-next a:hover { color: var(--clr-accent-dk); }  .content-sidebar-wrap {
display: grid;
grid-template-columns: 1fr minmax(220px, 380px);
gap: 32px;
align-items: start;
}
.content-sidebar-wrap > .content,
.content-sidebar-wrap > .sidebar {
min-width: 0;
} .nosidebar .content-sidebar-wrap,
.fullcontent .content-sidebar-wrap,
.fullstretched .content-sidebar-wrap,
.full-width-article .content-sidebar-wrap,
.radiofm-page .content-sidebar-wrap {
display: block;
}
.nosidebar .content,
.fullcontent .content,
.fullstretched .content,
.full-width-article .content,
.radiofm-page .content {
width: 100%;
max-width: none;
}
.nosidebar .sidebar,
.fullcontent .sidebar,
.fullstretched .sidebar,
.full-width-article .sidebar,
.radiofm-page .sidebar {
display: none;
} .sclayout .content-sidebar-wrap {
grid-template-columns: minmax(220px, 380px) 1fr;
}
.sclayout .sidebar {
grid-column: 1;
grid-row: 1;
}
.sclayout .content {
grid-column: 2;
grid-row: 1;
}
@media (max-width: 900px) {
.sclayout .content-sidebar-wrap {
grid-template-columns: 1fr;
}
.sclayout .sidebar {
grid-column: auto;
grid-row: auto;
}
.sclayout .content {
grid-column: auto;
grid-row: auto;
}
} .sidebar.c-4-12,
body#blog .sidebar{
display: block;
position: static;
} .sidebar .widget {
background: var(--clr-white);
border: 1px solid var(--clr-border);
border-radius: var(--radius-lg);
padding: 20px;
margin-bottom: 20px;
box-shadow: var(--shadow-sm);
}
.sidebar .widget:last-child { margin-bottom: 0; } .sidebar .widget-title,
.sidebar h3 {
font-size: 12px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .8px;
color: var(--clr-muted);
margin-bottom: 14px;
padding-bottom: 10px;
border-bottom: 1px solid var(--clr-border);
} .sidebar .widget ul {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 6px;
}
.sidebar .widget ul li {
font-size: 14px;
padding: 6px 0;
border-bottom: 1px solid var(--clr-border);
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 8px;
}
.sidebar .widget ul li:last-child { border-bottom: none; padding-bottom: 0; }
.sidebar .widget ul li a {
color: var(--clr-txt);
font-size: 14px;
flex: 1;
transition: color .2s;
}
.sidebar .widget ul li a:hover { color: var(--clr-accent); } .sidebar .widget ul li .post-count,
.sidebar .widget ul li:after {
font-size: 12px;
color: var(--clr-muted);
} .sidebar .widget ul li .post-date {
display: block;
font-size: 12px;
color: var(--clr-muted);
margin-top: 2px;
}
.sidebar .widget ul li { flex-direction: column; align-items: flex-start; } .sidebar .widget ul li a + .post-count { margin-left: auto; } .sidebar .widget_categories ul {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 12px;
flex-direction: unset;
}
.sidebar .widget_categories ul li {
padding: 0;
border: none;
display: flex;
flex-direction: column;
align-items: stretch;
font-size: 11px;
color: var(--clr-muted);
text-align: center;
gap: 4px;
}
.sidebar .widget_categories ul li a {
display: flex;
align-items: center;
justify-content: center;
padding: 12px 10px;
background: var(--clr-white);
border: 1px solid var(--clr-border);
border-radius: var(--radius-lg);
color: var(--clr-txt);
font-weight: 600;
font-size: 13.5px;
text-align: center;
line-height: 1.3;
transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
box-shadow: 0 2px 6px rgba(0,0,0,0.02);
position: relative;
overflow: hidden;
flex: 1;
} .sidebar .widget_categories ul li a:hover {
background: var(--clr-tag);
border-color: var(--clr-accent); 
color: var(--clr-accent);
box-shadow: 0 8px 16px rgba(23, 178, 231, 0.15);
transform: translateY(-2px);
} .sidebar .widget_categories ul li:nth-child(odd):last-child {
grid-column: span 2;
} .sidebar .search-form {
display: flex;
gap: 8px;
flex-direction: column;
}
.sidebar .search-form input[type="search"] {
width: 100%;
padding: 9px 14px;
border-radius: var(--radius-sm);
font-size: 14px;
}
.sidebar .search-form button,
.sidebar .search-form input[type="submit"] {
padding: 9px 16px;
border-radius: var(--radius-sm);
font-size: 13px;
} @media (max-width: 900px) {
.content-sidebar-wrap {
grid-template-columns: 1fr;
gap: 24px 0;
}
.sidebar.c-4-12,
.sidebar {
position: static;
max-height: none;
overflow-y: visible;
}
}  .site-footer {
border-top: 1px solid var(--clr-border);
background: var(--clr-white);
padding: 28px 20px;
margin-top: 16px;
}
.footer-inner {
max-width: var(--max-w);
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 16px;
}
.footer-inner .copyright {
font-size: 13px;
color: var(--clr-muted);
}
.footer-inner .copyright a {
color: var(--clr-muted);
font-weight: 600;
}
.footer-inner .copyright a:hover { color: var(--clr-accent); }
.footer-navigation ul {
display: flex;
flex-wrap: wrap;
gap: 4px;
margin: 0;
}
.footer-navigation ul li a {
font-size: 13px;
color: var(--clr-muted);
padding: 4px 10px;
border-radius: var(--radius-sm);
transition: color .2s, background .2s;
}
.footer-navigation ul li a:hover {
color: var(--clr-accent);
background: var(--clr-tag);
} .top a.toplink {
display: inline-flex;
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
background: var(--clr-bg);
border: 1px solid var(--clr-border);
border-radius: 50%;
color: var(--clr-muted);
font-size: 14px;
transition: all .2s;
}
.top a.toplink:hover { background: var(--clr-accent); color: #fff; border-color: var(--clr-accent); } .search-page-header {
margin-bottom: 28px;
}
.search-page-header h1 {
font-size: 24px;
color: var(--clr-txt);
}
.search-page-header span { color: var(--clr-accent); } .search-form {
display: flex;
gap: 8px;
max-width: 480px;
}
.search-form input[type="search"] {
flex: 1;
padding: 10px 18px;
border: 1px solid var(--clr-border);
border-radius: var(--radius);
font-size: 15px;
background: var(--clr-white);
color: var(--clr-txt);
outline: none;
transition: border-color .2s;
}
.search-form input[type="search"]:focus { border-color: var(--clr-accent); }
.search-form button, .search-form input[type="submit"] {
padding: 10px 20px;
background: var(--clr-accent);
color: #fff;
border: none;
border-radius: var(--radius);
font-size: 14px;
font-weight: 600;
cursor: pointer;
transition: background .2s;
}
.search-form button:hover, .search-form input[type="submit"]:hover {
background: var(--clr-accent-dk);
} .comments-area {
margin-top: 40px;
padding-top: 28px;
border-top: 2px solid var(--clr-border);
}
.comments-area h2 {
font-size: 20px;
margin-bottom: 24px;
}
.comment-list { margin: 0; }
.comment-list .comment {
border-bottom: 1px solid var(--clr-border);
padding: 20px 0;
}
.comment-list .comment:last-child { border-bottom: none; }
body#blog .comment-author .avatar{
width: 44px;
height: 44px;
border-radius: 50%;
float: left;
margin-right: 14px;
}
.comment-metadata {
display: flex;
flex-direction: column;
}
.comment-metadata time { font-size: 12px; color: var(--clr-muted); }
.comment-content p { font-size: 15px; color: var(--clr-txt); margin: 8px 0 0; clear: both; }
.reply a {
font-size: 13px;
color: var(--clr-accent);
font-weight: 600;
}
.fn a { color: var(--clr-txt); font-weight: 700; } #commentform label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 5px; color: var(--clr-txt); }
#commentform input[type="text"],
#commentform input[type="email"],
#commentform input[type="url"],
#commentform textarea {
width: 100%;
padding: 10px 14px;
border: 1px solid var(--clr-border);
border-radius: var(--radius-sm);
font-size: 15px;
background: var(--clr-white);
color: var(--clr-txt);
outline: none;
transition: border-color .2s;
}
#commentform input:focus, #commentform textarea:focus { border-color: var(--clr-accent); }
#commentform textarea { min-height: 130px; resize: vertical; }
body#blog #commentform input#submit{
display: inline-flex;
align-items: center;
padding: 11px 24px;
background: var(--clr-accent);
color: #fff;
border: none;
border-radius: var(--radius);
font-size: 14px;
font-weight: 700;
cursor: pointer;
transition: background .2s;
text-transform: none;
border-radius: var(--radius-sm);
}
#commentform input#submit:hover { background: var(--clr-accent-dk); transform: none; box-shadow: none; } .widget { margin-bottom: 24px; }
.widget-title {
font-size: 14px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .6px;
color: var(--clr-txt);
border-bottom: 2px solid var(--clr-accent);
padding-bottom: 8px;
margin-bottom: 16px;
} .wp-block-image img { border-radius: var(--radius); }
.wp-block-quote {
border-left: 4px solid var(--clr-accent);
padding: 16px 20px;
background: var(--clr-tag);
border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
margin: 1.5rem 0;
}
.wp-block-separator { border-color: var(--clr-border); }
figure.wp-block-image { margin: 1.5rem 0; }
figure.wp-block-image figcaption {
font-size: 13px;
color: var(--clr-muted);
text-align: center;
margin-top: 8px;
} .post-thumbnail {
border-radius: var(--radius);
overflow: hidden;
margin-bottom: 28px;
max-height: 480px;
}
.post-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
} .mobile-menu-wrapper { display: flex; } @media (max-width: 768px) {
:root { --header-h: 60px; } html, body {
overflow-x: hidden;
max-width: 100vw;
} .header-inner { 
padding: 0 16px; 
gap: 12px; 
position: relative;
justify-content: space-between;
}
.header-search-form { display: none; }
body#blog .site-branding{
position: static;
transform: none;
z-index: 10;
margin: 0;
flex: 1;
min-width: 0;
}
#logo a {
font-size: 18px;
}
#logo a img {
height: 28px;
}
.header-actions {
display: flex;
align-items: center;
gap: 8px;
flex-shrink: 0;
}
#pull {
display: flex;
align-items: center;
justify-content: center;
} .primary-navigation {
position: fixed;
top: var(--header-h);
left: 0;
right: 0;
background: var(--clr-white);
border-bottom: 1px solid var(--clr-border);
box-shadow: var(--shadow-lg);
z-index: 199;
max-height: 0;
overflow: hidden;
overflow-x: hidden;
transition: max-height .35s ease;
}
.primary-navigation.is-open { max-height: 80vh; overflow-y: auto; overflow-x: hidden; }
#navigation { width: 100%; }
#navigation .menu { flex-direction: column; width: 100%; gap: 0; padding: 12px 16px; }
#navigation ul li { width: 100%; }
#navigation ul li a { padding: 12px 10px; border-radius: var(--radius-sm); font-size: 15px; }
#navigation ul ul {
position: static;
opacity: 1;
visibility: visible;
pointer-events: auto;
box-shadow: none;
border: none;
background: var(--clr-bg);
padding-left: 16px;
border-radius: 0;
max-height: 0;
overflow: hidden;
transition: max-height .3s ease, opacity .3s ease, visibility .3s ease;
}
#navigation .menu-item-has-children.is-open > ul {
max-height: 500px;
} .post.excerpt{
flex-direction: column;
padding: 12px 0;
max-width: 100%;
box-sizing: border-box;
overflow: hidden;
border-radius: var(--radius);
}
.post.excerpt #featured-thumbnail {
width: 100%;
height: 200px;
}
body#blog .post.excerpt .card-body{
padding: 16px 0;
width: 100%;
box-sizing: border-box;
} .post.excerpt > header,
body#blog .post.excerpt > .post-content,
body#blog .post.excerpt > .readMore,
body#blog .post.excerpt .card-body header,
body#blog .post.excerpt .card-body .post-content,
body#blog .post.excerpt .card-body .readMore{
padding: 16px 0;
width: 100%;
box-sizing: border-box;
} #page.single .single_post { padding: 24px 18px; }
.single-title, h1.title { font-size: 24px; word-wrap: break-word; overflow-wrap: break-word; hyphens: auto; } .related-posts .postauthor-top ul { grid-template-columns: 1fr 1fr; } .postauthor { flex-direction: column; }
.postauthor img { width: 56px; height: 56px; } .footer-inner { flex-direction: column; align-items: flex-start; }  #page { 
padding: 16px 12px 32px; 
overflow-x: hidden; 
box-sizing: border-box; 
}
body#blog .content-sidebar-wrap {
gap: 20px;
}
@media (max-width: 600px) { #page, body#blog #page.single{ 
padding: 12px 12px 24px; 
width: 100%; 
max-width: 100%; 
box-sizing: border-box; 
overflow-x: hidden;
} body, body#blog .main-container{ 
padding-left: 0; padding-right: 0; 
margin-left: 0; margin-right: 0; 
} body { font-size: 14.5px; }
.post.excerpt .title { font-size: 17px; line-height: 1.3; }
.post-excerpt .post-content { font-size: 13.5px; line-height: 1.5; } .readMore a { 
font-size: 11px; 
padding: 8px 16px; 
border-radius: 20px;
}
.readMore a::after {
font-size: 10px;
margin-left: 6px;
} .post.excerpt{ 
padding: 12px 0; 
margin-bottom: 24px;
border-radius: 12px;
width: 100%; 
box-sizing: border-box; 
display: flex;
flex-direction: column;
align-items: center; text-align: center;
}
.post.excerpt .readMore {
width: 100%;
display: flex;
justify-content: center;
margin-top: 0px;
}
body#blog .post.excerpt #featured-thumbnail{ 
height: 170px; 
width: 100%; 
border-radius: 8px; }
.post.excerpt #featured-thumbnail .featured-thumbnail {
height: 170px;
width: 100%;
border-radius: 8px;
}
body#blog .post.excerpt .card-body{ 
padding: 12px 0 0 0;
width: 100%; 
} #page.single .single_post{ 
padding: 12px 0; 
margin-bottom: 24px;
width: 100%; 
box-sizing: border-box; 
}
body#blog .single-title, body#blog h1.title{ 
font-size: 20px; 
line-height: 1.35;
text-align: center;
padding-left: 0; padding-right: 0;
} body#blog .post-info {
gap: 6px;
margin-bottom: 16px;
justify-content: center;
}
body#blog .post-info span, body#blog .post-info .theauthor, body#blog .post-info .thetime, body#blog .post-info .read-time {
padding: 4px 10px;
font-size: 10.5px;
}
body#blog .post-single-content { 
font-size: 14px; 
line-height: 1.65; 
}
body#blog .post-single-content h2 { font-size: 18px; margin: 24px 0 12px; }
body#blog .post-single-content h3 { font-size: 16px; margin: 20px 0 10px; }
} @media (max-width: 400px) {
:root { --header-h: 56px; } #page, body#blog #page.single, body#blog #page.radiofm-full-width{
padding: 8px 8px 16px;
}
body#blog .content-sidebar-wrap, body#blog .content, body#blog .sidebar{
width: 100%;
padding-left: 0;
padding-right: 0;
}
body#blog #logo a{ font-size: 15px; }
body#blog #logo a img{ height: 22px; }
body#blog .post.excerpt .title{
font-size: 15.5px;
}
body#blog .post-info{
font-size: 10px;
gap: 4px;
}
} .content-sidebar-wrap{
display: flex;
flex-direction: column;
gap: 16px;
} .site-header { 
width: 100%;
}
body#blog .header-inner{
padding: 0 8px;
gap: 8px;
}
body#blog #logo a{ font-size: 16px; }
body#blog #logo a img{ height: 24px; } .post.excerpt{
padding: 10px 0;
margin: 0 0 16px 0;
border-radius: 12px;
width: 100%;
max-width: 100vw;
box-sizing: border-box;
}
body#blog .post.excerpt #featured-thumbnail{
height: 160px;
width: 100%;
max-width: 100vw;
}
body#blog .post.excerpt #featured-thumbnail .featured-thumbnail{
height: 160px;
width: 100%;
}
body#blog .post.excerpt .card-body{
padding: 12px 0 0 0;
width: 100%;
}
body#blog .post.excerpt .title{
font-size: 16px;
line-height: 1.3;
margin-bottom: 8px;
}
body#blog .post-info{
font-size: 11px;
gap: 6px;
flex-wrap: wrap;
}
body#blog .post-info span, body#blog .post-info .theauthor, body#blog .post-info .thetime, body#blog .post-info .read-time{
padding: 3px 8px;
font-size: 10px;
}
body#blog .post-content{
font-size: 13px;
-webkit-line-clamp: 2;
margin-bottom: 12px;
}
body#blog .readMore a{
font-size: 11px;
padding: 8px 14px;
} #page.single .single_post{
padding: 12px 0;
border-radius: 0;
}
body#blog .single-title, body#blog h1.title{
font-size: 18px;
}
body#blog .post-single-content{
font-size: 14px;
line-height: 1.6;
}
body#blog .post-single-content h2{ font-size: 18px; }
body#blog .post-single-content h3{ font-size: 16px; }
body#blog .post-single-content img{
max-width: 100vw;
width: 100%;
margin-left: 0;
margin-right: 0;
} .related-posts .postauthor-top ul{
grid-template-columns: 1fr;
gap: 12px;
}
body#blog .related-posts .rthumb{ height: 100px; } .postauthor{ gap: 12px; }
body#blog .postauthor img{ width: 48px; height: 48px; }
body#blog .postauthor h5{ font-size: 14px; }
body#blog .postauthor p{ font-size: 13px; } .comment-content p{ font-size: 13px; }
body#blog #commentform input, body#blog #commentform textarea{ font-size: 14px; padding: 8px; } .site-footer{ padding: 16px 8px; }
body#blog .footer-inner{ gap: 12px; }
body#blog .footer-navigation ul{ gap: 2px; flex-wrap: wrap; justify-content: center; }
body#blog .footer-navigation ul li a{ font-size: 11px; padding: 4px 6px; }
body#blog .copyright{ font-size: 11px; text-align: center; } .sidebar{
padding: 0;
}
body#blog .sidebar .widget{
padding: 12px;
margin-bottom: 12px;
}
body#blog .sidebar .widget ul li{
font-size: 13px;
} .subiect-tabs-widget .tab-links li a{ font-size: 10px; padding: 10px 4px; }
body#blog .subiect-tabs-widget .tab-thumb{ width: 50px; height: 46px; }
body#blog .subiect-tabs-widget .tab-info h4{ font-size: 12px; }
body#blog .subiect-tabs-widget .tab-meta{ font-size: 9px; } .sb-links__btn{ padding: 10px 12px; font-size: 12px; }
body#blog .sb-links__icon{ width: 18px; height: 18px; } .pagination{ gap: 4px; }
body#blog .pagination a, body#blog .pagination span{ min-width: 32px; height: 32px; font-size: 12px; } .breadcrumbs{ font-size: 11px; } .search-form{ flex-direction: column; gap: 8px; }
body#blog .search-form input[type="search"]{ width: 100%; }
body#blog .search-form button, body#blog .search-form input[type="submit"]{ width: 100%; } body, #page {
overflow-x: hidden;
}
} aside.widget_subiect_tabs_widget{
padding: 0;
background: rgba(255, 255, 255, 0.72);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid rgba(200, 220, 240, 0.55);
border-radius: 20px;
overflow: hidden;
box-shadow: 0 8px 32px rgba(0, 120, 200, 0.07);
}
body#blog aside.widget_subiect_tabs_widget > h3.widget-title,
body#blog aside.widget_subiect_tabs_widget > .widget-title{
display: none;
} aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links{
display: flex;
flex-direction: row;
list-style: none;
margin: 0;
padding: 0;
background: rgba(240, 248, 255, 0.7);
border-bottom: 1px solid rgba(200, 220, 240, 0.4);
width: 100%;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links li{
flex: 1 1 0;
text-align: center;
display: block;
list-style: none;
margin: 0;
padding: 0;
border: none;
background: none;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links li::before,
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links li::after{
display: none;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links li a{
display: block;
padding: 14px 8px;
font-family: 'Poppins', 'Inter', sans-serif;
font-size: 11px;
font-weight: 700;
color: #64748b;
text-decoration: none;
transition: color 0.3s ease, background 0.3s ease;
position: relative;
text-transform: uppercase;
letter-spacing: 0.8px;
background: none;
border: none;
cursor: pointer;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links li.active a{
color: var(--brand-primary, #0ea5e9);
background: rgba(255, 255, 255, 0.9);
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-links li.active a::after{
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 3px;
background: var(--brand-primary, #0ea5e9);
border-radius: 3px 3px 0 0;
} aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-content-container{
padding: 16px 18px;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-content{
display: none;
animation: none;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-content.active{
display: block;
animation: tabFadeIn 0.35s ease forwards;
}
@keyframes tabFadeIn {
from { opacity: 0; transform: translateY(6px); }
to { opacity: 1; transform: translateY(0); }
} aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-post-list{
list-style: none;
margin: 0;
padding: 0;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-post-list li{
display: flex;
flex-direction: row;
align-items: center;
gap: 14px;
padding: 12px 0;
border-bottom: 1px solid rgba(226, 232, 240, 0.4);
margin: 0;
background: none;
list-style: none;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-post-list li::before{
display: none;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-post-list li:last-child{
border-bottom: none;
padding-bottom: 0;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-post-list li:first-child{
padding-top: 0;
} aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-thumb{
width: 72px;
height: 68px;
min-width: 72px;
max-width: 72px;
flex-shrink: 0;
border-radius: 12px;
overflow: hidden;
display: block;
background: #e2e8f0;
box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-thumb img{
width: 72px;
height: 68px;
max-width: 72px;
max-height: 68px;
object-fit: cover;
display: block;
border-radius: 0;
transition: transform 0.45s ease;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-post-list li:hover .tab-thumb img{
transform: scale(1.1);
} aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-info{
flex: 1;
min-width: 0;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-info h4{
margin: 0 0 4px 0;
font-size: 13px;
line-height: 1.4;
font-weight: 600;
font-family: 'Inter', sans-serif;
color: #1e293b;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-info h4 a{
color: #1e293b;
text-decoration: none;
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-info h4 a:hover{
color: var(--brand-primary, #0ea5e9);
}
body#blog aside.widget_subiect_tabs_widget .subiect-tabs-widget .tab-meta{
display: block;
font-size: 10px;
color: #94a3b8;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.6px;
margin-top: 2px;
}
.subiect-tabs-widget {
background: rgba(255, 255, 255, 0.65);
backdrop-filter: blur(20px);
border: 1px solid rgba(255, 255, 255, 0.4);
border-radius: 24px;
overflow: hidden;
margin-bottom: 30px;
box-shadow: 0 10px 30px rgba(0,0,0,0.04);
}
.subiect-tabs-widget .tab-links {
display: flex;
list-style: none;
margin: 0;
padding: 0;
background: rgba(255, 255, 255, 0.4);
border-bottom: 1px solid rgba(226, 232, 240, 0.5);
}
.subiect-tabs-widget .tab-links li {
flex: 1;
text-align: center;
}
.subiect-tabs-widget .tab-links li a {
display: block;
padding: 16px 10px;
font-family: 'Poppins', sans-serif;
font-size: 13px;
font-weight: 700;
color: #64748b;
text-decoration: none;
transition: all 0.3s ease;
position: relative;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.subiect-tabs-widget .tab-links li.active a {
color: var(--brand-primary);
background: rgba(255, 255, 255, 0.8);
}
.subiect-tabs-widget .tab-links li.active a::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 3px;
background: var(--brand-primary);
}
.subiect-tabs-widget .tab-content-container {
padding: 20px;
}
.subiect-tabs-widget .tab-content {
display: none;
animation: tabFadeIn 0.4s ease forwards;
}
.subiect-tabs-widget .tab-content.active {
display: block;
}
@keyframes tabFadeIn {
from { opacity: 0; transform: translateY(8px); }
to { opacity: 1; transform: translateY(0); }
}
body#blog .subiect-tabs-widget .tab-post-list{
list-style: none;
margin: 0;
padding: 0;
}
body#blog .subiect-tabs-widget .tab-post-list li{
display: flex;
gap: 15px;
padding: 15px 0;
border-bottom: 1px solid rgba(226, 232, 240, 0.3);
margin: 0;
}
.subiect-tabs-widget .tab-post-list li:last-child {
border-bottom: none;
padding-bottom: 0;
}
.subiect-tabs-widget .tab-post-list li:first-child {
padding-top: 0;
}
.subiect-tabs-widget .tab-thumb {
width: 65px;
height: 60px;
flex-shrink: 0;
border-radius: 12px;
overflow: hidden;
background: #f1f5f9;
box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}
.subiect-tabs-widget .tab-thumb img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.subiect-tabs-widget .tab-post-list li:hover .tab-thumb img {
transform: scale(1.12);
}
.subiect-tabs-widget .tab-info {
flex: 1;
}
body#blog .subiect-tabs-widget .tab-info h4{
margin: 0 0 5px 0;
font-size: 14px;
line-height: 1.35;
font-weight: 600;
font-family: 'Inter', sans-serif;
}
.subiect-tabs-widget .tab-info h4 a {
color: #1e293b;
text-decoration: none;
}
.subiect-tabs-widget .tab-info h4 a:hover {
color: var(--brand-primary);
}
.subiect-tabs-widget .tab-meta {
display: block;
font-size: 11px;
color: #94a3b8;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.subiect-tabs-widget .tab-info .comment-author {
color: var(--brand-primary);
} .sb-links {
display: flex;
flex-direction: column;
gap: 10px;
padding: 4px 0;
}
.sb-links__btn {
display: flex;
align-items: center;
gap: 12px;
padding: 13px 18px;
border-radius: 14px;
text-decoration: none;
font-family: 'Poppins', 'Inter', sans-serif;
font-size: 14px;
font-weight: 600;
color: #fff;
line-height: 1;
transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
position: relative;
overflow: hidden;
letter-spacing: 0.3px;
}
.sb-links__btn::before {
content: '';
position: absolute;
inset: 0;
background: rgba(255,255,255,0.12);
opacity: 0;
transition: opacity 0.25s ease;
}
.sb-links__btn:hover {
transform: translateY(-3px);
box-shadow: 0 10px 28px rgba(0,0,0,0.18);
filter: brightness(1.08);
color: #fff;
text-decoration: none;
}
.sb-links__btn:hover::before { opacity: 1; }
.sb-links__btn--kodi {
background: linear-gradient(135deg, #1565c0 0%, #0d47a1 100%);
box-shadow: 0 4px 14px rgba(21,101,192,0.35);
}
.sb-links__btn--telegram {
background: linear-gradient(135deg, #29b6f6 0%, #0288d1 100%);
box-shadow: 0 4px 14px rgba(2,136,209,0.35);
}
.sb-links__btn--facebook {
background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
box-shadow: 0 4px 14px rgba(29,78,216,0.3);
}
.sb-links__icon {
width: 22px;
height: 22px;
opacity: 0.95;
flex-shrink: 0;
}
.sb-links__text {
flex: 1;
}
.sb-links__badge {
background: rgba(255,255,255,0.25);
border-radius: 20px;
padding: 2px 8px;
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
} .full-width-article#page.single{
max-width: var(--max-w);
padding-left: 20px;
padding-right: 20px;
}
body#blog .full-width-article .content{
width: 100%;
max-width: none;
}
body#blog .full-width-article .content-sidebar-wrap{
display: block;
}
.full-width-article .post-single-content,
.full-width-article .comments-area,
.full-width-article .related-posts,
.full-width-article .postauthor-container {
max-width: 1000px;
margin-left: auto;
margin-right: auto;
}
@media (max-width: 768px) {
.full-width-article#page.single {
padding-left: 15px;
padding-right: 15px;
}
} .code-block,
body#blog .code-block iframe,
body#blog ins.adsbygoogle,
body#blog .ad-inserter,
.ad-inserter {
max-width: 100% !important;
overflow: hidden !important;
box-sizing: border-box !important;
display: block;
margin-left: auto;
margin-right: auto;
} @media (max-width: 360px) {
ins.adsbygoogle[data-ad-format='rectangle'] {
transform: scale(0.9);
transform-origin: center center;
}
}  @media (min-width: 769px) {
body#blog .site-branding,
body#blog .primary-navigation,
body#blog #primary-navigation,
body#blog #navigation,
body#blog .mobile-menu-wrapper,
body#blog .header-inner,
body#blog .header-actions {
overflow: visible;
}
} body#blog .sidebar {
overflow-y: auto;
overflow-x: hidden;
} #comments {
margin-top: 40px;
padding-top: 32px;
border-top: 2px solid var(--clr-border);
}
.total-comments {
display: inline-block;
font-size: 22px;
font-weight: 800;
margin-bottom: 32px;
padding-bottom: 8px;
color: var(--clr-txt);
border-bottom: 3px solid var(--clr-accent);
}
.commentlist {
list-style: none;
padding: 0;
margin: 0;
}
.commentlist .comment {
background: var(--clr-white);
border: 1px solid var(--clr-border);
border-radius: var(--radius-lg);
padding: 28px;
margin-bottom: 24px;
box-shadow: var(--shadow-sm);
overflow: hidden;
transition: transform 0.2s, box-shadow 0.2s;
}
.commentlist .comment:hover {
box-shadow: var(--shadow);
}
.commentlist .comment .avatar {
border-radius: 50%;
margin-right: 20px;
float: left;
border: 2px solid var(--clr-tag);
}
.commentlist .comment-author {
font-weight: 800;
font-size: 16px;
margin-bottom: 2px;
color: var(--clr-txt);
}
.commentlist .comment-author a {
color: inherit;
}
.commentlist .comment-meta {
font-size: 13px;
font-weight: 600;
color: var(--clr-accent);
margin-bottom: 16px;
}
.commentlist .comment-body p {
margin-bottom: 0;
line-height: 1.7;
color: var(--clr-txt);
}
.comment-reply-link {
display: inline-block;
margin-top: 12px;
font-size: 13px;
font-weight: 700;
color: var(--clr-accent);
text-transform: uppercase;
letter-spacing: 0.5px;
}
.comment-reply-link:hover {
color: var(--clr-secondary);
} #respond {
background: var(--clr-white);
border-radius: var(--radius-lg);
padding: 32px;
margin-top: 40px;
border: 1px solid var(--clr-border);
box-shadow: var(--shadow-sm);
}
#respond h4 {
font-size: 18px;
font-weight: 800;
margin-bottom: 20px;
}
#respond p { margin-bottom: 16px; }
#respond label {
display: block;
font-size: 13px;
font-weight: 600;
margin-bottom: 8px;
color: var(--clr-muted);
}
#respond input[type="text"],
#respond textarea {
width: 100%;
padding: 12px 16px;
border: 1px solid var(--clr-border);
border-radius: var(--radius);
background: var(--clr-bg);
font-size: 14px;
color: var(--clr-txt);
outline: none;
transition: border-color .2s;
box-sizing: border-box;
}
#respond input:focus,
#respond textarea:focus {
border-color: var(--clr-accent);
background: var(--clr-white);
}
#respond input[type="submit"] {
display: inline-flex;
align-items: center;
justify-content: center;
height: 44px;
padding: 0 32px;
background: var(--clr-accent);
color: #fff;
border: none;
border-radius: 12px;
font-size: 14px;
font-weight: 600;
text-transform: uppercase;
cursor: pointer;
transition: all .2s;
box-shadow: 0 4px 14px rgba(23, 178, 231, 0.3);
}
#respond input[type="submit"]:hover {
background: var(--clr-secondary);
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(138, 90, 153, 0.25);
} .widget_tag_cloud .tagcloud,
.post-tags {
display: flex;
flex-wrap: wrap;
gap: 6px;
margin-top: 10px;
}
.widget_tag_cloud .tagcloud a,
.post-tags a {
display: inline-block;
padding: 5px 12px;
background: #f8fafc; color: #64748b; font-size: 12.5px !important;
font-weight: 500;
text-transform: capitalize; letter-spacing: 0.2px;
border-radius: 100px; transition: all 0.2s ease;
border: 1px solid #e2e8f0;
line-height: 1.4;
text-decoration: none;
}
.widget_tag_cloud .tagcloud a:hover,
.post-tags a:hover {
background: var(--clr-accent);
color: #fff;
border-color: var(--clr-accent);
transform: translateY(-1px);
box-shadow: 0 2px 8px rgba(23, 178, 231, 0.15);
} .widget_tag_cloud .widget-title {
margin-bottom: 20px;
} .wdform_row {
margin-bottom: 24px !important;
clear: both;
}
.wdform-field {
align-items: flex-start !important; } .wdform-label-section {
padding-top: 10px;
}
.wdform-label {
font-size: 14px;
font-weight: 700;
color: var(--clr-txt);
margin-bottom: 0px;
}
.wdform-required {
color: var(--clr-accent);
margin-left: 4px;
font-weight: bold;
}
.mini_label {
display: block;
font-size: 11px;
font-weight: 600;
color: var(--clr-muted);
margin-top: 6px;
text-transform: uppercase;
letter-spacing: 0.5px;
} .wdform-element-section input[type="text"],
.wdform-element-section input[type="email"],
.wdform-element-section textarea,
.captcha_input {
width: 100% !important;
padding: 12px 16px !important;
border: 1px solid var(--clr-border) !important;
border-radius: var(--radius) !important;
background: #f8fafc !important;
font-size: 14px !important;
color: var(--clr-txt) !important;
outline: none !important;
transition: all 0.2s ease !important;
box-sizing: border-box !important;
box-shadow: inset 0 1px 2px rgba(0,0,0,0.02) !important;
}
.wdform-element-section input:focus,
.wdform-element-section textarea:focus,
.captcha_input:focus {
background: #fff !important;
border-color: var(--clr-accent) !important;
box-shadow: 0 0 0 3px rgba(23, 178, 231, 0.1) !important;
} .wd-name-separator {
width: 12px;
} .captcha_img {
border-radius: var(--radius-sm) !important;
margin-right: 12px !important;
vertical-align: middle !important;
}
.captcha_input {
max-width: 100px !important;
display: inline-block !important;
vertical-align: middle !important;
} .button-submit,
.button-reset {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
height: 48px !important;
padding: 0 32px !important;
border-radius: 100px !important;
font-size: 15px !important;
font-weight: 700 !important;
text-transform: uppercase !important;
cursor: pointer !important;
transition: all 0.3s ease !important;
margin-right: 12px !important;
}
.button-submit {
background: var(--clr-accent) !important;
color: #fff !important;
border: none !important;
box-shadow: 0 4px 14px rgba(23, 178, 231, 0.3) !important;
}
.button-submit:hover {
background: var(--clr-secondary) !important;
transform: translateY(-2px) !important;
box-shadow: 0 6px 18px rgba(23, 178, 231, 0.4) !important;
}
.button-reset {
background: transparent !important;
color: var(--clr-muted) !important;
border: 1px solid var(--clr-border) !important;
}
.button-reset:hover {
background: #f1f5f9 !important;
color: var(--clr-txt) !important;
border-color: #cbd5e1 !important;
} @media (max-width: 768px) {
.wdform-field.wd-flex-row {
flex-direction: column !important;
}
.wdform-label-section.wd-width-30,
.wdform-element-section.wd-width-70 {
width: 100% !important;
max-width: 100% !important;
flex-basis: 100% !important;
}
.wdform-label-section {
margin-bottom: 8px !important;
padding-top: 0 !important;
}
.wd-flex-row {
flex-direction: column !important;
}
.wd-width-50 {
width: 100% !important;
margin-bottom: 12px !important;
}
.wd-name-separator {
display: none !important;
}
} @media screen and (max-width: 768px) {
html, body {
overflow-x: hidden !important;
position: relative;
} .single_post,
.post-content,
#page,
#wrapper,
#content {
max-width: 100% !important;
width: 100% !important;
box-sizing: border-box !important;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 15px !important;
padding-right: 15px !important;
overflow: hidden !important;
} img, video, iframe, embed, object {
max-width: 100% !important;
height: auto !important;
}
}