:root{--bg-base: #0a0a0b;--bg-card: #141416;--bg-elevated: #1c1c1f;--bg-hover: #242428;--bg-input: #1a1a1d;--border: #2a2a2e;--border-light: #3a3a3f;--text: #f5f5f7;--text-secondary: #8e8e93;--text-muted: #636366;--accent: #0a84ff;--accent-hover: #409cff;--danger: #ff453a;--success: #30d158;--warning: #ff9f0a;--gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--shadow: 0 4px 24px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--radius: 12px;--radius-lg: 16px;--radius-xl: 20px}*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-base);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overflow-x:hidden}input,button,textarea,select{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;color:inherit}img,video{display:block;max-width:100%}.icon{font-family:Material Icons Round;font-size:24px;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}::-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-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius);font-weight:500;font-size:14px;transition:all .2s;white-space:nowrap}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-light)}.btn-danger{background:var(--danger);color:#fff}.btn-icon{width:40px;height:40px;padding:0;border-radius:50%;background:var(--bg-elevated)}.btn-icon:hover{background:var(--bg-hover)}.input{width:100%;padding:12px 16px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;transition:all .2s}.input:focus{outline:none;border-color:var(--accent)}.input::placeholder{color:var(--text-muted)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg-input) inset!important;-webkit-text-fill-color:var(--text)!important;caret-color:var(--text)}.toast-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;gap:8px}.toast{padding:12px 20px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);font-size:14px;animation:slideUp .3s ease}.toast.success{border-color:var(--success)}.toast.error{border-color:var(--danger)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.checkbox{position:relative;width:20px;height:20px;cursor:pointer}.checkbox input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.checkbox .check{width:20px;height:20px;border:2px solid var(--border-light);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.checkbox input:checked+.check{background:var(--accent);border-color:var(--accent)}.checkbox .check .icon{font-size:16px;color:#fff;opacity:0;transform:scale(.5);transition:all .2s}.checkbox input:checked+.check .icon{opacity:1;transform:scale(1)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:all .3s}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(20px)}.pswp{--pswp-bg: rgba(0, 0, 0, .95)}.pswp__button{background-color:#ffffff1a!important;border-radius:50%;width:44px!important;height:44px!important}.pswp__button:hover{background-color:#fff3!important}.pswp__counter{font-family:Inter,sans-serif;font-size:14px;padding:6px 16px;background:#00000080;border-radius:20px}@media (max-width: 768px){:root{--radius: 10px;--radius-lg: 14px}}
