@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap";:root{--bg:#f7f5f2;--bg2:#fff;--bg3:#efece8;--bg-card:#fff;--bg-elevated:#fff;--primary:#c24428;--primary-light:#d94f30;--accent:#d94f30;--accent-light:#fdf0ed;--accent-dim:#d94f301a;--lavender:#fdf0ed;--gold:#b8944a;--gold-dim:#b8944a1a;--ink:#2d2a33;--text:#2d2a33;--text2:#5a5763;--text3:#9693a0;--border:#d94f301a;--border-focus:#d94f304d;--success:#5a9e6f;--sage:#5a9e6f;--sage-light:#edf7f0;--coral:#d94f30;--danger:#d94f30;--danger-dim:#d94f301a;--radius:20px;--radius-lg:40px;--radius-sm:12px;--radius-full:9999px;--shadow:0 4px 16px #0000000f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif}h1,h2,h3,h4{color:var(--ink);font-family:Outfit,sans-serif;font-weight:700}a{color:var(--accent);text-decoration:none}input,textarea,select{border-radius:var(--radius-sm);color:var(--ink);background:#fff;border:1.5px solid #e8e4df;outline:none;width:100%;padding:14px 16px;font-family:Outfit,sans-serif;font-size:15px;transition:border-color .2s}input:focus,textarea:focus,select:focus{border-color:var(--accent)}input::placeholder,textarea::placeholder{color:var(--text3)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%239e95a9' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}select option{color:var(--ink);background:#fff}button{cursor:pointer;border:none;outline:none;font-family:Outfit,sans-serif}.btn{border-radius:var(--radius-lg);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px #c2442840}.btn-outline{color:var(--accent);background:0 0;border:1.5px solid #d94f3040}.btn-outline:hover{background:var(--accent-dim)}.btn-ghost{color:var(--text2);border-radius:var(--radius-sm);background:0 0;padding:10px 16px}.btn-ghost:hover{color:var(--ink);background:#0000000a}.btn-danger{background:var(--danger);color:#fff}.btn-sm{padding:8px 16px;font-size:13px}.btn-lg{padding:16px 36px;font-size:16px}.btn-full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-icon{background:var(--bg3);width:44px;height:44px;color:var(--text2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-icon:hover{background:var(--accent-dim);color:var(--accent)}.tag{border-radius:var(--radius-full);align-items:center;gap:4px;padding:5px 14px;font-size:12px;font-weight:600;display:inline-flex}.tag-purple{background:var(--accent-dim);color:var(--accent)}.tag-gold{background:var(--gold-dim);color:var(--gold)}.tag-outline{color:var(--text2);background:0 0;border:1px solid #e8e4df}.card{border-radius:var(--radius-lg);background:#fff;border:1px solid #e8e4df;transition:all .2s;overflow:hidden}.card:hover{border-color:#d94f3026}.msg-error{color:var(--danger);margin-top:6px;font-size:13px}.msg-success{color:var(--success);margin-top:6px;font-size:13px}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text2);padding-left:2px;font-size:13px;font-weight:500}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.8}}.anim-in{animation:.35s ease-out fadeIn}.anim-slide{animation:.4s ease-out slideUp}.spin{animation:1s linear infinite spin}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#efece8 25%,#fff 50%,#efece8 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite pulse}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-lg);background:#fff;border:1px solid #e8e4df;width:100%;max-width:440px;max-height:80vh;padding:28px;overflow-y:auto;box-shadow:0 8px 32px #0000001f}.modal-title{margin-bottom:16px;font-size:22px}.modal-actions{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.page{flex-direction:column;min-height:100%;padding-bottom:0;display:flex}.page-scroll{flex:1;padding-bottom:0;overflow-y:auto}.page-header{flex-shrink:0;padding:20px 20px 12px}.page-header h1{font-size:28px}.page-center{flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;padding:20px;display:flex}.page-empty{text-align:center;color:var(--text3);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.page-empty h3{color:var(--ink);font-size:20px}
