.app{min-height:100vh;width:100%;display:flex;flex-direction:column}.loading-spinner{display:flex;justify-content:center;align-items:center;min-height:100vh}.spinner{width:50px;height:50px;border:4px solid var(--secondary-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn{padding:12px 24px;border-radius:8px;font-weight:500;font-size:14px;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:#c94a15;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background-color:var(--secondary-color);color:var(--text-dark)}.btn-secondary:hover{background-color:#d0d0d0}.btn-outline{background-color:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:#fff}.btn-sm{padding:8px 16px;font-size:12px}.btn-lg{padding:16px 32px;font-size:16px}.card{background:#fff;border-radius:12px;padding:24px;box-shadow:var(--shadow);transition:all .3s ease}.card:hover{box-shadow:var(--shadow-lg)}.input{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:14px;transition:all .3s ease}.input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #dd2d121a}.input-error{border-color:#dc3545}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}@media (max-width: 768px){.card{padding:16px}.btn{padding:10px 20px;font-size:13px}.modal-content{padding:20px;max-width:100%}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #E35A20;--secondary-color: #E39B20;--text-dark: #1a1a1a;--text-light: #666;--bg-light: #f8f9fa;--white: #ffffff;--border-color: #e0e0e0;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .15)}.dark-mode{--primary-color: #ff6b3d;--secondary-color: #ffa94d;--text-dark: #e0e0e0;--text-light: #b0b0b0;--bg-light: #1a1a1a;--white: #2d2d2d;--border-color: #404040;--shadow: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .4)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-light);color:var(--text-dark);line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .3s ease;touch-action:manipulation}@media (max-width: 768px){button:not(.btn-icon-sm):not(.task-checkbox){min-height:44px;min-width:44px}}input,textarea,select{font-family:inherit;outline:none}a{text-decoration:none;color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--secondary-color)}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#c94a15}@media (max-width: 768px){body{font-size:14px}}
