:root{--primary-color: #4a90e2;--secondary-color: #6c757d;--success-color: #28a745;--danger-color: #dc3545;--warning-color: #ffc107;--bg-color: #ffffff;--bg-secondary: #f8f9fa;--text-color: #212529;--border-color: #dee2e6;--shadow: 0 2px 4px rgba(0,0,0,.1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-color);color:var(--text-color);line-height:1.6}#app{width:100vw;height:100vh;overflow:hidden}.ui-btn,button{padding:.4rem .8rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-secondary);color:var(--text-color);cursor:pointer;font-size:.8rem;transition:all .2s}.ui-btn:hover,button:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.ui-btn:active,button:active{opacity:.8}.ui-btn.secondary,button.secondary{background-color:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.ui-btn.danger,button.danger{background-color:var(--danger-color);color:#fff;border-color:var(--danger-color)}.ui-field,input,select,textarea{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;font-family:inherit;background-color:var(--bg-color);color:var(--text-color)}.ui-field:focus,input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color)}table{width:100%;border-collapse:collapse}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color)}th{background-color:var(--bg-secondary);font-weight:600}tr:hover{background-color:var(--bg-secondary)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background-color:var(--bg-color);border-radius:8px;padding:2rem;max-width:500px;width:90%;box-shadow:0 4px 6px #0000001a}.modal h2{margin-bottom:1rem}.modal-buttons{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}.modal-buttons button.secondary{background-color:var(--bg-secondary);color:var(--text-color);border-color:var(--border-color)}.modal-buttons button:not(.secondary):not(.danger){background-color:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.25rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%}.hidden{display:none!important}
