A2 1 دقیقه مطالعه

قدمیتل های سطح A2 آلمانی

قدمیتل های سطح A2 آلمانی

Redemittel قدمیتل های سطح A2 آلمانی body { font-family: Arial, sans-serif; background-color: #f0f4f8; margin: 0; padding: 20px; color: #333; } .container { max-width: 800px; margin: 0 auto; background-color: #fff; border-radius: 10px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); padding: 20px; } h1 { text-align: center; color: #2c3e50; font-size: 2.5em; margin-bottom: 20px; } .section { margin-bottom: 30px; padding: 20px; border: 1px solid #ddd; border-radius: 8px; background-color: #fafafa; } .section h2 { color: #2980b9; font-size: 1.8em; margin-bottom: 15px; } .item { display: flex; justify-content: space-between; padding: 10px; border-bottom: 1px solid #eee; } .item:last-child { border-bottom: none; } .item .de { font-weight: bold; color: #2c3e50; direction: ltr; text-align: left; } .item .fa { color: #7f8c8d; direction: rtl; text-align: right; } .dialog { margin-top: 15px; padding: 10px; background-color: #e8f4f8; border-radius: 5px; } .dialog p { margin: 5px 0; font-size: 0.95em; } .dialog .speaker { font-weight: bold; color: #e74c3c; } .dialog .de { direction: ltr; text-align: left; display: inline; } .dialog .fa { direction: rtl; text-align: right; display: inline; } Redemittel - عبارات کاربردی سطح A2 آلمانی /* ========================================================================== CSS Variables & Enterprise Design Tokens ========================================================================== */ :root { /* Color Palette */ --color-bg-body: #f1f5f9; --color-bg-surface: #ffffff; --color-bg-dialog: #f8fafc; --color-bg-hover: #e2e8f0; --color-primary: #0284c7; --color-primary-hover: #0369a1; --color-primary-light: #e0f2fe; --color-text-main: #0f172a; --color-text-muted: #475569; --color-border: #cbd5e1; --color-border-light: #e2e8f0; /* Typography (System Fonts for Zero Latency) */ --font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; /* Spacing Scale */ --spacing-xs: 0.5rem; --spacing-sm: 1rem; --spacing-md: 1.5rem; --spacing-lg: 2rem; --spacing-xl: 3rem; /* Borders & Shadows */ --border-radius-sm: 8px; --border-radius-md: 12px; --border-radius-lg: 16px; /* Layered Smooth Shadows */ --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05); --shadow-md: 0 4px 6px -1px rgba(15, 23, 42, 0.05), 0 2px 4px -2px rgba(15, 23, 42, 0.05); --shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, 0.08), 0 4px 6px -4px rgba(15, 23, 42, 0.04); --shadow-hover: 0 20px 25px -5px rgba(15, 23, 42, 0.1), 0 8px 10px -6px rgba(15, 23, 42, 0.1); /* Transitions */ --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1); --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1); } /* ========================================================================== Global Resets & Base Configuration ========================================================================== */ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: var(--font-family-base); background-color: var(--color-bg-body); color: var(--color-text-main); line-height: 1.6; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; padding: var(--spacing-xl) var(--spacing-sm); display: flex; justify-content: center; } /* ========================================================================== Layout & Core Components ========================================================================== */ .app-container { width: 100%; max-width: 850px; } /* Header */ .app-header { text-align: center; margin-bottom: var(--spacing-xl); animation: fadeInDown 0.6s ease-out; will-change: opacity, transform; } .app-title { font-size: 2.5rem; color: var(--color-primary); font-weight: 800; letter-spacing: -0.03em; margin-bottom: var(--spacing-xs); } .app-subtitle { color: var(--color-text-muted); font-size: 1.125rem; font-weight: 500; } /* Section Cards */ .section-card { background: var(--color-bg-surface); border: 1px solid var(--color-border-light); border-radius: var(--border-radius-lg); padding: var(--spacing-lg); margin-bottom: var(--spacing-lg); box-shadow: var(--shadow-md); transition: box-shadow var(--transition-base), transform var(--transition-base), border-color var(--transition-base); animation: fadeInUp 0.6s ease-out backwards; will-change: opacity, transform; } .section-card:hover { box-shadow: var(--shadow-hover); border-color: var(--color-border); transform: translateY(-4px); } .section-header { display: flex; align-items: center; gap: var(--spacing-sm); margin-bottom: var(--spacing-md); padding-bottom: var(--spacing-sm); border-bottom: 2px solid var(--color-bg-body); } .section-icon { width: 32px; height: 32px; color: var(--color-primary); flex-shrink: 0; } .section-title { font-size: 1.5rem; color: var(--color-text-main); font-weight: 700; } /* Semantic Translation List (Data List) */ .item-list { display: flex; flex-direction: column; gap: var(--spacing-sm); } .item-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-md); padding: var(--spacing-sm) var(--spacing-md); background-color: var(--color-bg-body); border-radius: var(--border-radius-md); transition: background-color var(--transition-fast); align-items: center; } .item-row:hover { background-color: var(--color-bg-hover); } .item-de { direction: ltr; text-align: left; font-weight: 600; color: var(--color-text-main); font-size: 1.05rem; } .item-fa { direction: rtl; text-align: right; color: var(--color-text-muted); font-weight: 500; } /* Dialog Box */ .dialog-box { margin-top: var(--spacing-lg); background-color: var(--color-bg-dialog); border-radius: var(--border-radius-md); padding: var(--spacing-md); border-right: 4px solid var(--color-primary); box-shadow: inset 0 2px 4px rgba(0,0,0,0.02); } .dialog-header { display: flex; align-items: center; gap: var(--spacing-xs); color: var(--color-primary); font-weight: 700; margin-bottom: var(--spacing-md); font-size: 1.1rem; } .dialog-icon { width: 22px; height: 22px; } .dialog-content { display: flex; flex-direction: column; gap: var(--spacing-sm); } .dialog-line { display: flex; align-items: baseline; gap: var(--spacing-sm); padding-bottom: var(--spacing-sm); border-bottom: 1px dashed var(--color-border-light); } .dialog-line:last-child { padding-bottom: 0; border-bottom: none; } .speaker-badge { background-color: var(--color-primary-light); color: var(--color-primary-hover); font-weight: 800; padding: 0.2rem 0.6rem; border-radius: var(--border-radius-sm); font-size: 0.85rem; flex-shrink: 0; min-width: 35px; text-align: center; } .dialog-texts { display: flex; flex-direction: column; gap: 0.2rem; width: 100%; } .dialog-text-de { direction: ltr; font-weight: 600; color: var(--color-text-main); text-align: left; } .dialog-text-fa { color: var(--color-text-muted); font-size: 0.95rem; text-align: right; } /* ========================================================================== Animations ========================================================================== */ @keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes fadeInDown { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } } /* ========================================================================== Responsive Media Queries ========================================================================== */ @media (max-width: 768px) { body { padding: var(--spacing-md) var(--spacing-xs); } .item-row { grid-template-columns: 1fr; gap: var(--spacing-xs); } .item-fa { padding-top: var(--spacing-xs); border-top: 1px solid var(--color-border-light); } .dialog-line { flex-direction: column; align-items: flex-end; } .dialog-texts { border-right: 2px solid var(--color-primary-light); padding-right: var(--spacing-xs); } .speaker-badge { align-self: flex-start; } } برای اجرای این برنامه، لطفا جاوا اسکریپت را در مرورگر خود فعال کنید.

درس کامل

ادامه‌ی این مطلب برای اعضا

برای دیدن کامل این مطلب باید اشتراک تهیه کنید یا در دوره‌های آموزشی زبان آلمانی ثبت‌نام کنید.

  • مثال‌های کامل
  • تلفظ صوتی
  • دوره‌ها و پلن‌ها

Leave a comment

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *