@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800&display=swap";:root{--color-primary: #7c3aed;--color-primary-hover: #6d28d9;--color-primary-light: #ede9fe;--color-secondary: #64748b;--color-secondary-hover: #475569;--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-success: #10b981;--color-text: #1e1b2e;--color-text-secondary: #64748b;--color-text-light: #94a3b8;--color-ai-bg: #dbeafe;--color-ai-text: #1d4ed8;--color-manual-bg: #f3e8ff;--color-manual-text: #7c3aed;--color-section-a1: #ede9fe;--color-section-a2: #ddd6fe;--color-section-b1: #d1fae5;--color-section-b2: #a7f3d0;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--shadow-sm: 0 1px 3px rgba(124,58,237,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(124,58,237,.1), 0 2px 4px rgba(0,0,0,.04);--shadow-lg: 0 10px 28px rgba(124,58,237,.13), 0 4px 8px rgba(0,0,0,.06);--transition-base: .18s ease;--transition-slow: .3s ease}*{box-sizing:border-box}body{margin:0;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text);background-color:#faf9ff}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.card{border:1px solid #e8e4f3;border-radius:var(--radius-md);padding:var(--spacing-lg);background-color:#fff;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.card-clickable{cursor:pointer}.home-card{border:1px solid #e8e4f3;border-radius:var(--radius-md);padding:2rem;background-color:#fff;min-height:160px;display:flex;flex-direction:column;justify-content:flex-start;transition:all var(--transition-base);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;text-decoration:none;color:inherit}.home-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background-color:var(--card-accent, var(--color-primary));border-radius:var(--radius-md) var(--radius-md) 0 0}.home-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.home-card h2{margin:.75rem 0;font-size:1.2rem;font-weight:700}.home-card p{margin:0;color:var(--color-text-secondary);font-size:.95rem}input[type=text],input[type=email],input[type=password],textarea,select{outline:none;border-radius:var(--radius-sm)}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #7c3aed1f}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-lg);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-ai{background-color:var(--color-ai-bg);color:var(--color-ai-text)}.badge-manual{background-color:var(--color-manual-bg);color:var(--color-manual-text)}.badge-difficulty{background-color:#fef3c7;color:#92400e}.badge-style{background-color:#cffafe;color:#164e63}.btn{padding:.6rem 1.4rem;font-size:.95rem;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);font-weight:700;font-family:inherit;letter-spacing:.01em}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-hover)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-danger-hover)}.btn-warning{background-color:var(--color-warning);color:#1e1b2e}.btn-warning:hover:not(:disabled){background-color:var(--color-warning-hover)}.tag-chip{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);margin:var(--spacing-xs);background-color:#f1eeff;color:var(--color-text);border-radius:var(--radius-lg);font-size:.875rem;border:1px solid #ddd6fe;font-weight:600}.tag-chip-clickable{cursor:pointer;transition:all var(--transition-base)}.tag-chip-clickable:hover{background-color:#ddd6fe}.tag-chip-selected{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.dance-section{padding:var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);border-left:4px solid transparent}.dance-section-a1{background-color:var(--color-section-a1);border-left-color:#7c3aed}.dance-section-a2{background-color:var(--color-section-a2);border-left-color:#6d28d9}.dance-section-b1{background-color:var(--color-section-b1);border-left-color:#059669}.dance-section-b2{background-color:var(--color-section-b2);border-left-color:#047857}.dance-section-header{font-weight:800;font-size:.8rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.8px}.skeleton{background:linear-gradient(90deg,#f0ecf9 25%,#e8e4f3,#f0ecf9 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-title{height:1.5rem;width:60%;margin-bottom:.75rem}.skeleton-card{padding:var(--spacing-lg);border:1px solid #e8e4f3;border-radius:var(--radius-md);background-color:#fff;margin-bottom:var(--spacing-md)}.skeleton-section{height:4rem;margin-bottom:var(--spacing-md);border-radius:var(--radius-sm)}.skeleton-badge{display:inline-block;height:1.5rem;width:5rem;border-radius:var(--radius-lg);margin-right:var(--spacing-sm)}@media print{.dance-section{page-break-inside:avoid}.btn,.no-print{display:none!important}.card{box-shadow:none;border:1px solid #ddd}.program-dance-notation{display:block!important}.program-dance-notation .dance-section{background-color:transparent!important;border-left-width:3px;padding:.5rem;margin-bottom:.5rem}.skeleton,.skeleton-card{display:none}}
