:root{--color-navy: #0D2B5E;--color-navy-light: #133975;--color-navy-dark: #091E42;--color-accent: #0A66C2;--color-accent-hover: #0856A2;--color-accent-light: #E8F1FB;--color-surface: #FFFFFF;--color-page-bg: #F1F5F9;--color-card-bg: #FFFFFF;--color-text-primary: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-border: #cbd5e1;--color-border-light: #e2e8f0;--color-success: #059669;--color-success-bg: #d1fae5;--color-warning: #d97706;--color-warning-bg: #fef3c7;--color-error: #dc2626;--color-error-bg: #fee2e2;--color-info-bg: #dbeafe;--shadow-sm: 0 1px 3px rgba(13, 43, 94, .06);--shadow-md: 0 4px 12px rgba(13, 43, 94, .08);--shadow-lg: 0 8px 24px rgba(13, 43, 94, .12);--shadow-xl: 0 12px 40px rgba(13, 43, 94, .16);--input-height: 44px;--input-border: var(--color-border);--input-radius: 8px;--input-focus-ring: 0 0 0 3px rgba(10, 102, 194, .12);--input-error-ring: 0 0 0 3px rgba(220, 38, 38, .1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInError{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);color:var(--color-text-primary);line-height:1.5;background:var(--color-page-bg)}a{color:inherit;text-decoration:none}button{font-family:inherit}img{max-width:100%;height:auto}input,select,textarea{font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 20px}.text-center{text-align:center}.text-primary{color:var(--color-accent)}.text-muted{color:var(--color-text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;border-radius:var(--input-radius);font-weight:600;font-size:14px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:none;text-decoration:none;letter-spacing:.01em;position:relative;overflow:hidden}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,var(--color-accent) 0%,#0958a0 100%);color:#fff;box-shadow:0 2px 8px #0a66c240}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-accent-hover) 0%,#074a8a 100%);box-shadow:0 4px 14px #0a66c259;transform:translateY(-1px)}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-outline{background:transparent;border:1.5px solid var(--color-border);color:#475569}.btn-outline:hover:not(:disabled){background:#f8fafc;border-color:var(--color-accent);color:var(--color-accent)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef444440}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 14px #ef444459;transform:translateY(-1px)}.btn-block{width:100%}.btn-sm{padding:7px 14px;font-size:13px}.btn-lg{padding:14px 28px;font-size:16px}.form-group{margin-bottom:22px;position:relative}.form-group label{display:block;font-weight:600;font-size:13px;color:#475569;margin-bottom:7px;letter-spacing:.02em;text-transform:none}.form-group .required{color:var(--color-error);font-weight:700}.form-group .opt,.form-group .optional{font-weight:400;color:var(--color-text-muted);font-size:12px;margin-left:4px}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=tel],.form-group input[type=number],.form-group input[type=date],.form-group input[type=url],.form-group input[type=search],.form-group select,.form-group textarea{width:100%;height:var(--input-height);padding:10px 14px;border:1.5px solid var(--input-border);border-radius:var(--input-radius);font-size:14px;line-height:1.5;color:var(--color-text-primary);background-color:#fff;background-clip:padding-box;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),background-color .2s;-webkit-appearance:none;appearance:none}.form-group input[type=text]::placeholder,.form-group input[type=email]::placeholder,.form-group input[type=password]::placeholder,.form-group input[type=tel]::placeholder,.form-group input[type=number]::placeholder,.form-group input[type=date]::placeholder,.form-group input[type=url]::placeholder,.form-group input[type=search]::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#94a3b8;font-weight:400}.form-group input[type=text]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=email]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=password]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=tel]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=number]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=date]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=url]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group input[type=search]:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group select:hover:not(:focus):not(:disabled):not(.error):not(.err),.form-group textarea:hover:not(:focus):not(:disabled):not(.error):not(.err){border-color:#94a3b8}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=password]:focus,.form-group input[type=tel]:focus,.form-group input[type=number]:focus,.form-group input[type=date]:focus,.form-group input[type=url]:focus,.form-group input[type=search]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--input-focus-ring);background-color:#fff}.form-group input[type=text]:disabled,.form-group input[type=email]:disabled,.form-group input[type=password]:disabled,.form-group input[type=tel]:disabled,.form-group input[type=number]:disabled,.form-group input[type=date]:disabled,.form-group input[type=url]:disabled,.form-group input[type=search]:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#f1f5f9;color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0}.form-group input[type=text].error,.form-group input[type=text].err,.form-group input[type=email].error,.form-group input[type=email].err,.form-group input[type=password].error,.form-group input[type=password].err,.form-group input[type=tel].error,.form-group input[type=tel].err,.form-group input[type=number].error,.form-group input[type=number].err,.form-group input[type=date].error,.form-group input[type=date].err,.form-group input[type=url].error,.form-group input[type=url].err,.form-group input[type=search].error,.form-group input[type=search].err,.form-group select.error,.form-group select.err,.form-group textarea.error,.form-group textarea.err{border-color:var(--color-error);box-shadow:var(--input-error-ring)}.form-group input[type=text].error:focus,.form-group input[type=text].err:focus,.form-group input[type=email].error:focus,.form-group input[type=email].err:focus,.form-group input[type=password].error:focus,.form-group input[type=password].err:focus,.form-group input[type=tel].error:focus,.form-group input[type=tel].err:focus,.form-group input[type=number].error:focus,.form-group input[type=number].err:focus,.form-group input[type=date].error:focus,.form-group input[type=date].err:focus,.form-group input[type=url].error:focus,.form-group input[type=url].err:focus,.form-group input[type=search].error:focus,.form-group input[type=search].err:focus,.form-group select.error:focus,.form-group select.err:focus,.form-group textarea.error:focus,.form-group textarea.err:focus{border-color:var(--color-error);box-shadow:var(--input-error-ring)}.form-group textarea{height:auto;min-height:110px;resize:vertical;padding:12px 14px;line-height:1.6}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8.825c-.2 0-.4-.075-.55-.225l-3-3a.776.776 0 010-1.1.776.776 0 011.1 0L6 6.95 8.45 4.5a.776.776 0 011.1 0 .776.776 0 010 1.1l-3 3c-.15.15-.35.225-.55.225z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px;padding-right:36px;cursor:pointer}.form-group .error-message,.form-group .err-msg{display:block;font-size:12px;font-weight:500;color:var(--color-error);margin-top:6px;padding-left:2px;animation:slideInError .2s ease;line-height:1.4}.fg{margin-bottom:18px;position:relative}.fg label{display:block;font-weight:600;font-size:13px;color:#475569;margin-bottom:7px;letter-spacing:.02em}.fg .opt{font-weight:400;color:var(--color-text-muted);font-size:12px}.fg input,.fg select{width:100%;height:var(--input-height);padding:10px 14px;border:1.5px solid var(--input-border);border-radius:var(--input-radius);font-size:14px;color:var(--color-text-primary);background:#fff;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);-webkit-appearance:none;appearance:none}.fg input::placeholder,.fg select::placeholder{color:#94a3b8}.fg input:hover:not(:focus):not(:disabled):not(.err),.fg select:hover:not(:focus):not(:disabled):not(.err){border-color:#94a3b8}.fg input:focus,.fg select:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--input-focus-ring)}.fg input.err,.fg select.err{border-color:var(--color-error);box-shadow:var(--input-error-ring)}.fg select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8.825c-.2 0-.4-.075-.55-.225l-3-3a.776.776 0 010-1.1.776.776 0 011.1 0L6 6.95 8.45 4.5a.776.776 0 011.1 0 .776.776 0 010 1.1l-3 3c-.15.15-.35.225-.55.225z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px;padding-right:36px;cursor:pointer}.fg .err-msg{display:block;font-size:12px;font-weight:500;color:var(--color-error);margin-top:6px;padding-left:2px;animation:slideInError .2s ease}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-row.three-col{grid-template-columns:1fr 1fr auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}.full-width{grid-column:1/-1}.checkbox-label{display:inline-flex!important;align-items:center;gap:10px;cursor:pointer;font-weight:500!important;font-size:14px;color:#475569;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:18px!important;height:18px!important;border:1.5px solid var(--color-border);border-radius:4px;cursor:pointer;accent-color:var(--color-accent);flex-shrink:0}.modal-overlay{position:fixed;inset:0;background:#0f172a8c;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:16px;width:540px;max-width:100%;max-height:85vh;overflow-y:auto;animation:scaleIn .25s cubic-bezier(.4,0,.2,1);box-shadow:0 24px 48px #0f172a33}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 20px;border-bottom:1px solid var(--color-border-light)}.modal-header h2{font-size:18px;font-weight:700;color:var(--color-text-primary)}.close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:1.5px solid transparent;border-radius:8px;font-size:20px;cursor:pointer;color:var(--color-text-muted);transition:all .15s}.close-btn:hover{background:#f1f5f9;border-color:var(--color-border-light);color:var(--color-text-primary)}.modal-body{padding:24px 28px}.modal-body .form-group{margin-bottom:20px}.modal-footer{padding:20px 28px;border-top:1px solid var(--color-border-light);display:flex;gap:12px;justify-content:flex-end;background:#f8fafc;border-radius:0 0 16px 16px}.form-card{background:#fff;border-radius:16px;padding:36px;box-shadow:var(--shadow-md);border:1px solid rgba(226,232,240,.6)}.form-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--color-border-light)}.form-section:first-child{margin-top:0;padding-top:0;border-top:none}.form-section-title{font-size:15px;font-weight:700;color:var(--color-navy);margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border-light)}.inline-form{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid var(--color-border-light);border-radius:12px;padding:20px;margin-bottom:16px}.inline-form-actions{margin-top:16px;display:flex;gap:8px}.server-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;color:var(--color-error);padding:12px 16px;border-radius:var(--input-radius);margin-top:16px;text-align:center;font-size:14px;font-weight:500;animation:slideInError .3s ease}.alert-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;color:var(--color-error);padding:14px 18px;border-radius:var(--input-radius);margin-top:16px;font-size:14px;animation:slideInError .3s ease}.alert-error p{margin:3px 0}.card{background:var(--color-card-bg);border-radius:16px;padding:28px;box-shadow:var(--shadow-sm);border:1px solid rgba(226,232,240,.5);transition:box-shadow .2s}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.01em}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-info{background:var(--color-accent-light);color:var(--color-accent)}@media (max-width: 768px){html{font-size:14px}.form-row,.form-row.three-col,.row-2,.form-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.modal{width:100%;max-height:90vh}.modal-body{padding:20px}.modal-header,.modal-footer{padding-left:20px;padding-right:20px}.form-card{padding:24px}}
