*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:#333;background-color:#f5f5f5}a{color:#4a90d9;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}input,textarea,select{font-family:inherit;font-size:.9rem;color:#1f2937;background-color:#fff;border:1px solid #d7dce2;border-radius:8px;padding:.5rem .7rem;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}input::placeholder,textarea::placeholder{color:#aab2bd}input:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus){border-color:#b9c2cd}input:focus,textarea:focus,select:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d92e}input:disabled,textarea:disabled,select:disabled{background-color:#f1f3f5;color:#868e96;cursor:not-allowed}select:not([multiple]){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .55rem center;background-size:1rem;padding-right:2rem}input[type=checkbox],input[type=radio]{width:auto;accent-color:#4a90d9;cursor:pointer}.container{max-width:1600px;margin:0 auto;padding:0 20px}.text-center{text-align:center}.text-right{text-align:right}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.4rem;font-weight:600;font-size:.85rem;color:#495057}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.6rem .8rem;font-size:.92rem}.form-group textarea{min-height:100px;resize:vertical;line-height:1.5}.form-group .error-text{color:#e74c3c;font-size:.85rem;margin-top:.3rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.15rem;border:1px solid transparent;border-radius:8px;font-size:.9rem;font-weight:600;line-height:1.2;text-align:center;white-space:nowrap;color:#fff;box-shadow:0 1px 2px #10182814;transition:transform .12s ease,box-shadow .15s ease,background-color .15s ease,filter .15s ease,opacity .15s ease}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #10182824}.btn:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #1018281a}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px #4a90d959}a.btn,a.btn:hover{text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background-image:linear-gradient(180deg,#5b9ce4,#4a90d9);background-color:#4a90d9}.btn-primary:hover:not(:disabled){background-image:linear-gradient(180deg,#4a90d9,#357abd);background-color:#357abd}.btn-secondary{background-image:linear-gradient(180deg,#7a828b,#6c757d);background-color:#6c757d}.btn-secondary:hover:not(:disabled){background-image:linear-gradient(180deg,#6c757d,#5a6268);background-color:#5a6268}.btn-danger{background-image:linear-gradient(180deg,#ec6759,#e74c3c);background-color:#e74c3c}.btn-danger:hover:not(:disabled){background-image:linear-gradient(180deg,#e74c3c,#c0392b);background-color:#c0392b}.btn-success{background-image:linear-gradient(180deg,#2ecc71,#27ae60);background-color:#27ae60}.btn-success:hover:not(:disabled){background-image:linear-gradient(180deg,#27ae60,#219a52);background-color:#219a52}.btn-outline{background:#fff;background-image:none;color:#374151;border-color:#d7dce2}.btn-outline:hover:not(:disabled){background:#f8f9fa;border-color:#b9c2cd}.btn-sm{padding:.4rem .8rem;font-size:.82rem;border-radius:7px}.btn-lg{padding:.7rem 1.5rem;font-size:1rem;border-radius:10px}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;margin-bottom:1rem}.alert{padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.alert-error{background-color:#fde8e8;color:#c0392b;border:1px solid #f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}table th,table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}table th{background-color:#f8f9fa;font-weight:600;color:#555}table tr:hover{background-color:#f8f9fa}.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.5rem}.pagination button{padding:.45rem .85rem;border:1px solid #d7dce2;background:#fff;border-radius:8px;font-weight:600;font-size:.85rem;color:#374151;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.pagination button:hover:not(:disabled){background-color:#f1f5fb;border-color:#9fc0e8}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination button.active{background-image:linear-gradient(180deg,#5b9ce4,#4a90d9);background-color:#4a90d9;color:#fff;border-color:#4a90d9;box-shadow:0 2px 6px #4a90d94d}.badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.8rem;font-weight:500}.badge-draft{background-color:#ffeaa7;color:#856404}.badge-active{background-color:#d4edda;color:#155724}.badge-completed{background-color:#d1ecf1;color:#0c5460}.badge-archived{background-color:#e2e3e5;color:#383d41}.loading{text-align:center;padding:2rem;color:#666}.empty-state{text-align:center;padding:3rem 1rem;color:#888}.empty-state p{margin-bottom:1rem;font-size:1.1rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.page-header h1{font-size:1.5rem;color:#333}.search-bar{display:flex;gap:.5rem;margin-bottom:1.5rem}.search-bar input{flex:1;padding:.6rem .8rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:14px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 50px #10182847;animation:modal-pop .16s ease-out}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal h3{margin-bottom:1rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;font-size:1.5rem;line-height:1;color:#868e96;transition:background-color .15s ease,color .15s ease}.modal-close:hover{background:#f1f3f5;color:#343a40}.actions{display:flex;gap:.4rem}html,body{max-width:100%;overflow-x:hidden}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 1024px){.container{padding:0 14px}}@media (max-width: 768px){.container{padding:0 12px}.page-header{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:1rem}.page-header h1{font-size:1.2rem;word-break:break-word}.page-header>div,.actions{flex-wrap:wrap}table th,table td{padding:.5rem .6rem;font-size:.82rem}table{font-size:.85rem}.btn{padding:.55rem 1rem}.btn-sm{padding:.4rem .7rem;font-size:.8rem}.modal{width:94%;max-width:94%;padding:1.25rem;max-height:90vh;overflow-y:auto}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1 1 auto}.search-bar{flex-direction:column}.form-grid-responsive,.modal [style*=grid-template-columns],.modal [style*=gridTemplateColumns]{grid-template-columns:1fr!important}.pagination{flex-wrap:wrap}.app-main [style*=grid-template-columns]:not([style*=auto-fill]):not([style*=auto-fit]),.app-main [style*=gridTemplateColumns]:not([style*=auto-fill]):not([style*=auto-fit]){grid-template-columns:1fr!important}.dashboard-header{flex-direction:column!important;align-items:stretch!important;gap:.75rem!important}}@media (max-width: 480px){.page-header h1{font-size:1.05rem}table th,table td{padding:.45rem .5rem;font-size:.78rem}.modal,.card{padding:1rem}}@media (max-width: 900px){.app-navbar{flex-wrap:wrap;height:auto!important;padding:.5rem .9rem!important;row-gap:.5rem}.app-navbar .nav-left{gap:1rem!important;flex-wrap:wrap}.app-navbar .nav-brand{font-size:1rem!important}.app-navbar .nav-links{gap:.15rem!important;flex-wrap:wrap}.app-navbar .nav-right{gap:.6rem!important;flex-wrap:wrap;justify-content:flex-end}.app-main{padding:1rem!important}}@media (max-width: 560px){.app-navbar{justify-content:center}.app-navbar .nav-left,.app-navbar .nav-right{width:100%;justify-content:space-between}.app-navbar .nav-right span{font-size:.8rem}}
