:root{--elder-primary:#c7000b;--elder-primary-hover:#a80009;--elder-primary-light:#fef0f0;--elder-danger:#f53f3f;--elder-danger-hover:#cb2634;--elder-danger-light:#ffece8;--elder-warning:#ff7d00;--elder-warning-hover:#d25f00;--elder-warning-light:#fff7e8;--elder-info:#3491fa;--elder-info-hover:#1d8fe2;--elder-info-light:#e8f7ff;--elder-success:#00b42a;--elder-success-light:#e8ffea;--elder-bg:#f5f7fa;--elder-bg-white:#fff;--elder-bg-card:#fff;--elder-bg-section:#f5f7fa;--elder-text:#1d2129;--elder-text-secondary:#4e5969;--elder-text-placeholder:#c9cdd4;--elder-text-disabled:#c9cdd4;--elder-border:#e5e6eb;--elder-border-light:#f2f3f5;--elder-divider:#f2f3f5;--elder-radius-sm:8px;--elder-radius-md:12px;--elder-radius-lg:16px;--elder-radius-xl:24px;--elder-radius-full:9999px;--elder-shadow-sm:0 1px 4px #0000000f;--elder-shadow-md:0 4px 16px #00000014;--elder-shadow-lg:0 8px 24px #0000001a;--elder-shadow-hover:0 6px 20px #0000001a;--elder-space-xs:4px;--elder-space-sm:8px;--elder-space-md:16px;--elder-space-lg:24px;--elder-space-xl:32px;--elder-space-2xl:48px;--elder-font-min:16px;--elder-font-body:18px;--elder-font-subtitle:20px;--elder-font-title:24px;--elder-font-hero:32px;--elder-line-height:1.6;--elder-touch-min:48px;--elder-btn-height:56px;--elder-btn-min-width:120px;--elder-transition:.3s cubic-bezier(.4, 0, .2, 1);--elder-bounce:cubic-bezier(.68, -.55, .265, 1.55)}.elder-root{font-size:var(--elder-font-body);line-height:var(--elder-line-height);color:var(--elder-text);background-color:var(--elder-bg);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;font-family:Microsoft YaHei,PingFang SC,Source Han Sans SC,Helvetica Neue,Arial,sans-serif}.elder-btn{min-height:var(--elder-btn-height);min-width:var(--elder-btn-min-width);border-radius:var(--elder-radius-lg);font-size:var(--elder-font-subtitle);transition:all var(--elder-transition);-webkit-user-select:none;user-select:none;cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.elder-btn:active{transform:scale(.95)}.elder-btn-primary{background-color:var(--elder-primary);color:#fff}.elder-btn-primary:hover{background-color:var(--elder-primary-hover);box-shadow:0 4px 12px #c7000b4d}.elder-btn-danger{background-color:var(--elder-danger);color:#fff}.elder-btn-danger:hover{background-color:var(--elder-danger-hover)}.elder-ripple{pointer-events:none;background:#fff6;border-radius:50%;animation:.6s ease-out elder-ripple-anim;position:absolute;transform:scale(0)}@keyframes elder-ripple-anim{to{opacity:0;transform:scale(4)}}.elder-sos-pulse{animation:1.5s ease-in-out infinite elder-pulse}@keyframes elder-pulse{0%,to{box-shadow:0 0 #f53f3f99}50%{box-shadow:0 0 0 20px #f53f3f00}}.elder-check-in-success{animation:elder-success-bounce .6s var(--elder-bounce)}@keyframes elder-success-bounce{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.elder-card{background:var(--elder-bg-card);border-radius:var(--elder-radius-lg);box-shadow:var(--elder-shadow-sm);padding:var(--elder-space-lg);transition:all .3s cubic-bezier(.4,0,.2,1)}.elder-card:hover{box-shadow:var(--elder-shadow-hover);transform:translateY(-4px)}.elder-root *{font-size:max(16px,1em)}.elder-touchable{min-width:var(--elder-touch-min);min-height:var(--elder-touch-min);justify-content:center;align-items:center;display:inline-flex}@keyframes elder-success-check{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:.5s ease-out forwards elder-fade-in}@keyframes elder-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.touch-none{touch-action:none}@keyframes sos-border-flash{0%,to{border-color:var(--elder-danger)}50%{border-color:#f99}}.sos-alert-card{animation:1s ease-in-out infinite sos-border-flash}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.streak-badge{background:linear-gradient(135deg, var(--elder-primary) 0%, #e8403e 100%);color:#fff;border-radius:var(--elder-radius-full);padding:6px 16px;font-weight:600}
