@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=DM+Serif+Display:ital@0;1&display=swap";:root{--accent: #F5874B;--accent-light: #FEF0E7;--accent-mid: #FAC9A8;--accent-dark: #D9612A;--surface: #FDFAF7;--surface-2: #F7F3EE;--surface-3: #EDE8E2;--border: #E4DDD5;--border-light: #EDE8E2;--text-primary: #1C1917;--text-secondary: #6B6560;--text-tertiary: #A39E99;--text-inverse: #FDFAF7;--status-completed: #2E7D52;--status-available: #F5874B;--status-locked: #C4BDB7;--status-progress: #3B82F6;--glass-bg: rgba(253, 250, 247, .72);--glass-border: rgba(228, 221, 213, .6);--glass-blur: 16px;--shadow-sm: 0 1px 3px rgba(28,25,23,.06), 0 1px 2px rgba(28,25,23,.04);--shadow-md: 0 4px 16px rgba(28,25,23,.08), 0 2px 6px rgba(28,25,23,.04);--shadow-lg: 0 12px 40px rgba(28,25,23,.12), 0 4px 12px rgba(28,25,23,.06);--shadow-accent: 0 4px 20px rgba(245,135,75,.25);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-full: 9999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.45, 0, .55, 1);--duration-fast: .12s;--duration-base: .22s;--duration-slow: .38s;--font-body: "DM Sans", system-ui, sans-serif;--font-display: "DM Serif Display", Georgia, serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--surface);color:var(--text-primary);font-size:15px;line-height:1.6;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.2}h4,h5,h6{font-family:var(--font-body);font-weight:600;line-height:1.3}h1{font-size:clamp(1.8rem,4vw,2.4rem)}h2{font-size:clamp(1.4rem,3vw,1.9rem)}h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}h4{font-size:1.05rem}p{color:var(--text-secondary);line-height:1.7}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-size:14px;font-weight:500;border-radius:var(--radius-full);border:none;cursor:pointer;padding:10px 22px;transition:all var(--duration-base) var(--ease-out);white-space:nowrap;text-decoration:none!important}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-dark);box-shadow:0 6px 24px #f5874b59;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--surface-2);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--border)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text-primary)}.btn-danger{background:#fee2e2;color:#dc2626}.btn-danger:hover:not(:disabled){background:#fca5a5}.btn-sm{padding:6px 14px;font-size:13px}.btn-lg{padding:14px 32px;font-size:15px}.btn-icon{padding:8px;border-radius:var(--radius-md)}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.card:hover{box-shadow:var(--shadow-md)}.card-padded{padding:24px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:13px;font-weight:500;color:var(--text-secondary);letter-spacing:.01em}.form-input,.form-textarea,.form-select{font-family:var(--font-body);font-size:14px;color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 14px;width:100%;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);outline:none}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f5874b26}.form-textarea{resize:vertical;min-height:90px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:3px 10px;border-radius:var(--radius-full)}.badge-completed{background:#dcfce7;color:var(--status-completed)}.badge-available{background:var(--accent-light);color:var(--accent-dark)}.badge-locked{background:var(--surface-3);color:var(--text-tertiary)}.badge-progress{background:#dbeafe;color:#1d4ed8}.progress-bar{height:6px;background:var(--surface-3);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent);border-radius:var(--radius-full);transition:width var(--duration-slow) var(--ease-out)}.divider{height:1px;background:var(--border-light);border:none;margin:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.animate-fade-up{animation:fadeUp var(--duration-slow) var(--ease-out) both}.animate-fade-in{animation:fadeIn var(--duration-base) var(--ease-out) both}
