smart-museum-front / css /base.css
youssef357402's picture
Upload css/base.css with huggingface_hub
868088f verified
Raw
History Blame Contribute Delete
5 kB
/* base.css - الأنماط الأساسية والتجهيزية */
/* استيراد خط Cairo من Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700;800;900&display=swap');
*,
*::before,
*::after {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html {
font-size: 16px;
scroll-behavior: smooth;
direction: rtl;
-webkit-text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
body {
font-family: 'Cairo', 'Tajawal', -apple-system, sans-serif;
font-size: var(--text-base);
font-weight: var(--font-weight-normal);
line-height: var(--line-height-relaxed);
color: var(--color-neutral-800);
background-color: var(--color-neutral-50);
min-height: 100vh;
overflow-x: hidden;
text-rendering: optimizeLegibility;
font-feature-settings: 'kern' 1;
-webkit-font-feature-settings: 'kern' 1;
-moz-font-feature-settings: 'kern' 1;
}
/* Typography */
h1, h2, h3, h4, h5, h6 {
font-family: 'Cairo', 'Tajawal', sans-serif;
font-weight: var(--font-weight-bold);
line-height: var(--line-height-tight);
color: var(--color-neutral-900);
margin-bottom: var(--spacing-4);
letter-spacing: var(--letter-spacing-tight);
}
h1 {
font-size: var(--text-4xl);
font-weight: var(--font-weight-extrabold);
}
h2 {
font-size: var(--text-3xl);
font-weight: var(--font-weight-bold);
}
h3 {
font-size: var(--text-2xl);
font-weight: var(--font-weight-bold);
}
h4 {
font-size: var(--text-xl);
font-weight: var(--font-weight-semibold);
}
h5 {
font-size: var(--text-lg);
font-weight: var(--font-weight-semibold);
}
h6 {
font-size: var(--text-base);
font-weight: var(--font-weight-semibold);
}
p {
margin-bottom: var(--spacing-4);
line-height: var(--line-height-relaxed);
font-weight: var(--font-weight-normal);
}
small {
font-size: var(--text-sm);
color: var(--color-neutral-500);
font-weight: var(--font-weight-normal);
}
strong, b {
font-weight: var(--font-weight-bold);
}
em, i {
font-style: italic;
}
/* Links */
a {
color: var(--color-primary-600);
text-decoration: none;
transition: color var(--transition-duration-200) var(--transition-timing-function-ease);
font-weight: var(--font-weight-medium);
}
a:hover {
color: var(--color-primary-800);
text-decoration: underline;
}
a:focus-visible {
outline: 2px solid var(--color-primary-500);
outline-offset: 2px;
border-radius: var(--radius-sm);
}
/* Lists */
ul, ol {
margin-bottom: var(--spacing-4);
padding-right: var(--spacing-6);
}
li {
margin-bottom: var(--spacing-2);
line-height: var(--line-height-relaxed);
}
/* Images */
img, picture, video, canvas, svg {
display: block;
max-width: 100%;
height: auto;
}
/* Forms */
input, button, textarea, select {
font-family: 'Cairo', 'Tajawal', sans-serif;
font-size: inherit;
color: inherit;
font-weight: var(--font-weight-medium);
}
button {
cursor: pointer;
border: none;
background: none;
font-weight: var(--font-weight-semibold);
}
/* Input Fields Enhancement */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="search"],
textarea,
select {
font-family: 'Cairo', 'Tajawal', sans-serif;
font-weight: var(--font-weight-medium);
letter-spacing: var(--letter-spacing-normal);
}
/* Selection */
::selection {
background-color: rgba(251, 191, 36, 0.3);
color: var(--color-neutral-900);
}
/* Focus Styles */
:focus-visible {
outline: 2px solid rgba(251, 191, 36, 0.5);
outline-offset: 2px;
border-radius: var(--radius-sm);
}
/* Remove default focus for mouse users */
:focus:not(:focus-visible) {
outline: none;
}
/* Utility Classes for Direction */
.ltr {
direction: ltr;
}
.rtl {
direction: rtl;
}
/* Print Styles */
@media print {
.no-print {
display: none !important;
}
body {
background: white !important;
color: black !important;
font-size: 12pt !important;
}
a {
color: black !important;
text-decoration: underline !important;
}
h1, h2, h3, h4, h5, h6 {
page-break-after: avoid;
page-break-inside: avoid;
}
img {
page-break-inside: avoid;
}
.page-break {
page-break-before: always;
}
}
/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}
/* High Contrast Mode */
@media (prefers-contrast: high) {
:root {
--color-primary-500: #0000ff;
--color-secondary-500: #ffa500;
}
}