:root{--font-apple: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;--bg-primary: #F2F2F7;--bg-secondary: #FFFFFF;--bg-card: rgba(255, 255, 255, .7);--bg-card-hover: rgba(255, 255, 255, .9);--text-primary: #000000;--text-secondary: #3C3C43;--text-muted: #3C3C43;--text-muted-full: rgba(60, 60, 67, .6);--accent-primary: #007AFF;--accent-secondary: #5856D6;--accent-glow: rgba(0, 122, 255, .15);--success: #34C759;--warning: #FF9500;--error: #FF3B30;--border-color: rgba(60, 60, 67, .1);--border-hover: rgba(60, 60, 67, .2);--gradient-primary: linear-gradient(180deg, #007AFF 0%, #0040DD 100%);--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, .3) 0%, rgba(255, 255, 255, .1) 100%);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3.5rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 24px rgba(0, 0, 0, .12);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1)}@media(prefers-color-scheme:dark){:root{--bg-primary: #000000;--bg-secondary: #1C1C1E;--bg-card: rgba(28, 28, 30, .75);--bg-card-hover: rgba(44, 44, 46, .85);--text-primary: #FFFFFF;--text-secondary: #EBEBF5;--text-muted-full: rgba(235, 235, 245, .6);--accent-primary: #0A84FF;--accent-secondary: #5E5CE6;--accent-glow: rgba(10, 132, 255, .2);--success: #30D158;--warning: #FF9F0A;--error: #FF453A;--border-color: rgba(235, 235, 245, .12);--border-hover: rgba(235, 235, 245, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 8px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 32px rgba(0, 0, 0, .5)}}*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-apple);background:var(--bg-primary);color:var(--text-primary);line-height:1.5;min-height:100vh;letter-spacing:-.011em}.bg-gradient{position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 70% 30%,var(--accent-glow) 0%,transparent 40%),radial-gradient(circle at 20% 80%,rgba(88,86,214,.08) 0%,transparent 40%);pointer-events:none;z-index:-1;filter:blur(80px)}.app-container{max-width:1000px;margin:0 auto;padding:var(--space-xl)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-lg);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);transition:all var(--transition-normal)}.card:hover{background:var(--bg-card-hover);border-color:var(--border-hover)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:.6rem 1.25rem;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-apple)}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{filter:brightness(1.1);box-shadow:var(--shadow-md)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-hover)}.btn-ghost{background:transparent;color:var(--accent-primary)}.btn-ghost:hover{background:var(--accent-glow)}.btn-danger{background:var(--error);color:#fff}.input-group{margin-bottom:var(--space-xl)}.input-label{display:block;margin-bottom:var(--space-xs);color:var(--text-primary);font-size:.9rem;font-weight:600}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-xl)}.auth-container{width:100%;max-width:440px}.input-sublabel{display:block;margin-bottom:var(--space-sm);color:var(--text-muted-full);font-size:.8rem}.input{width:100%;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;font-family:var(--font-apple);transition:all var(--transition-fast)}.input:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-secondary);box-shadow:0 0 0 4px var(--accent-glow)}h1,h2,h3,h4{font-weight:700;color:var(--text-primary);letter-spacing:-.022em}h1{font-size:2.5rem;margin-bottom:var(--space-xl)}h2{font-size:1.5rem;margin-bottom:var(--space-lg)}h3{font-size:1.1rem;margin-bottom:var(--space-md)}.text-muted{color:var(--text-muted-full)}.grid{display:grid;gap:var(--space-md)}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}h1{font-size:2rem}.app-container{padding:var(--space-md)}.combined-layout .picker-card{position:static!important;margin-bottom:var(--space-lg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s cubic-bezier(.4,0,.2,1)}.selection-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden}.selection-card:hover{background:var(--bg-card-hover);transform:translateY(-2px)}.selection-card.active{border-color:var(--accent-primary);background:var(--accent-glow)}.selection-card input[type=checkbox],.selection-card input[type=radio]{position:absolute;opacity:0;cursor:pointer}.toast-container{position:fixed;top:var(--space-xl);right:var(--space-xl);z-index:1000}.toast{padding:var(--space-md) var(--space-xl);background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);font-size:.9rem;font-weight:500;margin-bottom:var(--space-sm);display:flex;align-items:center;gap:var(--space-sm)}.primary-badge{background:var(--gradient-primary);color:#fff;padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}
