:root{--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", monospace;--bg-dark: #070d1e;--bg-card: rgba(15, 23, 42, .82);--bg-card-hover: rgba(24, 37, 68, .9);--bg-surface: rgba(30, 41, 69, .65);--bg-input: rgba(15, 23, 42, .9);--primary: #0284c7;--primary-light: #38bdf8;--primary-dark: #0369a1;--primary-glow: rgba(2, 132, 199, .28);--accent-gold: #f59e0b;--accent-gold-glow: rgba(245, 158, 11, .25);--success: #10b981;--success-glow: rgba(16, 185, 129, .25);--warning: #f97316;--danger: #ef4444;--text-main: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--border: rgba(255, 255, 255, .1);--border-focus: rgba(56, 189, 248, .5);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .5);--shadow-glow: 0 0 25px var(--primary-glow);--touch-target-min: 48px}body.theme-light{--bg-dark: #f1f5f9;--bg-card: rgba(255, 255, 255, .92);--bg-card-hover: #ffffff;--bg-surface: #e2e8f0;--bg-input: #ffffff;--text-main: #0f172a;--text-muted: #475569;--text-dim: #64748b;--border: rgba(15, 23, 42, .12);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);--shadow-md: 0 8px 20px rgba(15, 23, 42, .1);--shadow-lg: 0 16px 36px rgba(15, 23, 42, .14)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{width:100%;min-height:100%;font-family:var(--font-body);background-color:var(--bg-dark);color:var(--text-main);overflow-x:hidden;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003}::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}h1,h2,h3,h4,.font-heading{font-family:var(--font-heading);letter-spacing:-.02em}.app-container{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 15% 15%,rgba(2,132,199,.12) 0%,transparent 40%),radial-gradient(circle at 85% 85%,rgba(245,158,11,.08) 0%,transparent 40%),var(--bg-dark)}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:1.5rem 1.25rem 4rem}.navbar{position:sticky;top:0;z-index:50;background:#0b132bd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:.75rem 1.5rem}.navbar-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand-wrapper{display:flex;align-items:center;gap:.85rem;text-decoration:none;cursor:pointer}.brand-logo{height:44px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(2,132,199,.3))}.brand-text{display:flex;flex-direction:column}.brand-title{font-size:1.25rem;font-weight:800;color:#fff;display:flex;align-items:center;gap:.4rem}.brand-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;background:linear-gradient(135deg,var(--accent-gold),#ea580c);color:#000;padding:.15rem .45rem;border-radius:var(--radius-sm);letter-spacing:.04em}.brand-subtitle{font-size:.75rem;color:var(--text-muted);font-weight:500}.nav-actions{display:flex;align-items:center;gap:.75rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--touch-target-min);padding:.65rem 1.25rem;font-family:var(--font-body);font-size:.95rem;font-weight:600;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;-webkit-user-select:none;user-select:none}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border-color:#ffffff26;box-shadow:0 4px 14px var(--primary-glow)}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-light),var(--primary));box-shadow:0 6px 20px var(--primary-glow)}.btn-accent{background:linear-gradient(135deg,var(--accent-gold),#d97706);color:#0b1329;font-weight:700;box-shadow:0 4px 14px var(--accent-gold-glow)}.btn-accent:hover{filter:brightness(1.1)}.btn-secondary{background:var(--bg-surface);color:var(--text-main);border-color:var(--border)}.btn-secondary:hover{background:#ffffff1f}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover{background:#ffffff14;color:var(--text-main)}.btn-success{background:linear-gradient(135deg,var(--success),#059669);color:#fff;box-shadow:0 4px 14px var(--success-glow)}.btn-danger{background:linear-gradient(135deg,var(--danger),#b91c1c);color:#fff}.btn-icon-only{width:var(--touch-target-min);padding:0}.glass-card{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);transition:all .25s ease}.glass-card:hover{border-color:#ffffff2e}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.02em}.badge-nuevo{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.badge-ocasion{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.badge-completed{background:#0284c726;color:#38bdf8;border:1px solid rgba(2,132,199,.3)}.badge-progress{background:#f9731626;color:#fb923c;border:1px solid rgba(249,115,22,.3)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#040814d1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto}.modal-content{background:#0f172a;border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:720px;box-shadow:var(--shadow-lg);overflow:hidden;animation:modalEnter .25s cubic-bezier(.16,1,.3,1)}@keyframes modalEnter{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:#ffffff05}.modal-body{padding:1.5rem;max-height:75vh;overflow-y:auto}.modal-footer{padding:1.25rem 1.5rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#ffffff05}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:.4rem}.form-input,.form-select,.form-textarea{width:100%;min-height:var(--touch-target-min);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-main);padding:.65rem 1rem;font-family:var(--font-body);font-size:1rem;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 3px var(--primary-glow)}.form-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:640px){.form-grid-2{grid-template-columns:1fr}}@media(min-width:768px)and (max-width:1200px){.main-content{padding:1.25rem 1rem 3rem}.btn{min-height:52px;font-size:1rem}.category-pill{min-height:54px!important}}@media print{body{background:#fff!important;color:#000!important}.navbar,.btn,.no-print{display:none!important}.print-only{display:block!important}.glass-card{background:#fff!important;border:1px solid #ccc!important;box-shadow:none!important;color:#000!important}}
