@import '../../../styles/variables.scss'; @mixin section-title { font-family: 'Georgia', 'Times New Roman', serif; font-size: 30px; font-weight: bold; color: $tx; margin-bottom: 20px; display: block; } @mixin serif-number { font-family: 'Georgia', 'Times New Roman', serif; font-variant-numeric: tabular-nums; } @mixin flex-center { display: flex; align-items: center; justify-content: center; } .medication-page { min-height: 100vh; background: $bg; padding: 32px 24px; padding-bottom: 160px; } .page-title { @include section-title; padding-left: 4px; } .reminder-list { display: flex; flex-direction: column; gap: 16px; } .reminder-card { display: flex; align-items: center; background: $card; border-radius: $r; padding: 24px; box-shadow: $shadow-sm; &.disabled { opacity: 0.55; } } .reminder-avatar { @include flex-center; width: 72px; height: 72px; border-radius: $r; background: $acc-l; flex-shrink: 0; margin-right: 20px; } .reminder-avatar-text { font-family: 'Georgia', 'Times New Roman', serif; font-size: 32px; font-weight: bold; color: $acc; } .reminder-info { flex: 1; display: flex; flex-direction: column; min-width: 0; } .reminder-name { font-family: 'Georgia', 'Times New Roman', serif; font-size: 30px; font-weight: bold; color: $tx; margin-bottom: 4px; } .reminder-dosage { @include serif-number; font-size: 24px; color: $tx2; } .reminder-actions { display: flex; align-items: center; gap: 16px; flex-shrink: 0; margin-left: 12px; } .toggle { width: 80px; height: 44px; border-radius: $r-pill; padding: 4px; position: relative; transition: background 0.3s; &.on { background: $pri; } &.off { background: $bd; } } .toggle-dot { width: 36px; height: 36px; border-radius: 50%; background: #fff; position: absolute; top: 4px; transition: left 0.3s; .toggle.on & { left: 40px; } .toggle.off & { left: 4px; } } .delete-btn { font-size: 24px; color: $dan; padding: 4px 12px; } .form-card { background: $card; border-radius: $r; padding: 28px; margin-top: 24px; box-shadow: $shadow-sm; } .form-card-title { font-family: 'Georgia', 'Times New Roman', serif; font-size: 28px; font-weight: bold; color: $tx; margin-bottom: 20px; display: block; } .form-item { display: flex; align-items: center; justify-content: space-between; padding: 24px 0; border-bottom: 1px solid $bd-l; &:last-of-type { border-bottom: none; } } .form-label { font-size: 28px; color: $tx; flex-shrink: 0; width: 160px; } .form-input { flex: 1; font-size: 28px; color: $tx; text-align: right; border: none; background: transparent; outline: none; } .form-placeholder { color: $tx3; } .time-picker-wrap { flex: 1; display: flex; align-items: center; justify-content: flex-end; gap: 12px; } .time-value { @include serif-number; font-size: 28px; color: $tx; } .time-modify { font-size: 24px; color: $pri; } .form-actions { display: flex; gap: 16px; margin-top: 24px; } .form-cancel { flex: 1; background: $bd-l; border-radius: $r-sm; padding: 20px; text-align: center; } .form-cancel-text { font-size: 28px; color: $tx2; } .form-confirm { flex: 1; background: $pri; border-radius: $r-sm; padding: 20px; text-align: center; } .form-confirm-text { font-size: 28px; color: #fff; font-weight: bold; } .add-btn { position: fixed; bottom: 0; left: 0; right: 0; background: $pri; padding: 28px; text-align: center; box-shadow: 0 -2px 12px rgba(196, 98, 58, 0.15); } .add-text { font-family: 'Georgia', 'Times New Roman', serif; font-size: 32px; color: #fff; font-weight: bold; letter-spacing: 2px; }