:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f5f0;--card:#fff;--card-alt:#fafaf7;--primary:#2d5a3d;--primary-light:#e8f0eb;--primary-muted:#7ba68a;--accent:#d4864a;--accent-light:#fdf0e6;--text:#1a1a1a;--text-muted:#7a7a7a;--text-light:#a0a0a0;--border:#e8e5de;--border-light:#f0ede6;--danger:#c4453c;--danger-light:#fdf0ef;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-lg:0 4px 12px #00000014, 0 2px 4px #0000000a;--radius:10px;--radius-lg:14px;--font-body:"DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Playfair Display", Georgia, serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#171613;--card:#211f1b;--card-alt:#262420;--primary:#55966c;--primary-light:#223529;--primary-muted:#6f9b80;--accent:#dd9a62;--accent-light:#33281d;--text:#eceae4;--text-muted:#9c998f;--text-light:#6e6b62;--border:#3a3730;--border-light:#2a2822;--danger:#e0736a;--danger-light:#362220;--shadow:0 1px 3px #0006, 0 1px 2px #0000004d;--shadow-lg:0 4px 12px #00000080, 0 2px 4px #00000059}body:before{background:#1e2b22}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;-webkit-text-size-adjust:100%}body{padding-bottom:env(safe-area-inset-bottom,0px)}body:before{content:"";height:env(safe-area-inset-top,0px);background:var(--primary);z-index:100;pointer-events:none;position:fixed;top:0;left:0;right:0}.status-bar-backdrop{height:env(safe-area-inset-top,0px);background:var(--primary);z-index:100;pointer-events:none;position:fixed;top:0;left:0;right:0}button{-webkit-tap-highlight-color:transparent;font-family:inherit}input,select,textarea{font-family:inherit}input[type=date]{-webkit-appearance:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.toast{animation:.3s slideUp,.3s 2.7s fadeOut}.drag-overlay{box-shadow:var(--shadow-lg);opacity:.9;transform:scale(1.02)}
