.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content{background:#fff;border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;overflow-y:auto;width:100%;max-width:32rem;margin:0 auto}@media (max-width: 640px){.modal-content{max-height:95vh;margin:1rem;max-width:calc(100vw - 2rem);border-radius:.375rem}}@media (min-width: 641px) and (max-width: 768px){.modal-content{margin:1.5rem}}.modal-content.modal-content-large{max-width:56rem}.modal-content.modal-content-small{max-width:24rem}.modal-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1.5rem;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}@media (max-width: 640px){.modal-header{padding:1rem 1.5rem}}.modal-header .modal-title-container{flex:1;min-width:0}.modal-header .modal-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0;line-height:1.25}@media (max-width: 640px){.modal-header .modal-title{font-size:1.25rem}}.modal-header .modal-subtitle{font-size:.875rem;color:#6b7280;margin-top:.25rem;line-height:1.25}.modal-header .close-button{background:none;border:none;padding:.5rem;border-radius:9999px;color:#9ca3af;cursor:pointer;transition:all .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem}.modal-header .close-button:hover{color:#6b7280;background-color:#f9fafb}.modal-header .close-button:focus{outline:2px solid #6b7280;outline-offset:2px}.modal-header .close-button i{font-size:1.125rem}.modal-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb;padding:1.5rem}@media (max-width: 640px){.modal-footer{padding:1rem 1.5rem}}.modal-footer .button-group{display:flex;justify-content:flex-end;align-items:center;gap:.75rem}@media (max-width: 640px){.modal-footer .button-group{flex-direction:column-reverse;gap:.5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;text-decoration:none;border:none;cursor:pointer;transition:all .2s ease;min-height:2.5rem}.btn:focus{outline:2px solid #6b7280;outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:#000;color:#fff}.btn-primary:hover:not(:disabled){background-color:#374151}.btn-primary:active{background-color:#1f2937}.btn-secondary{background-color:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.btn-secondary:active{background-color:#f3f4f6}.btn-ghost{background-color:transparent;color:#6b7280}.btn-ghost:hover:not(:disabled){color:#374151;background-color:#f9fafb}.btn-danger{background-color:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.info-section .section-title{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:1rem;display:flex;align-items:center}.info-section .section-title i{margin-right:.5rem;color:#6b7280}.info-section .info-grid{background-color:#f9fafb;border-radius:.375rem;padding:1rem;display:grid;gap:1rem}@media (min-width: 768px){.info-section .info-grid{grid-template-columns:repeat(2,1fr)}}.info-section .info-item{display:flex;flex-direction:column}.info-section .info-item .info-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.info-section .info-item .info-value{font-size:.875rem;font-weight:600;color:#111827}.parent-info{transition:all .2s ease;border-radius:.375rem;padding:1rem;border:1px solid #e5e7eb}.parent-info.has-parent{opacity:1;border-left:4px solid #3b82f6;background-color:#eff6ff}.parent-info.no-parent{opacity:.6;border-left:4px solid #d1d5db;background-color:#f9fafb}.parent-info .parent-header{display:flex;align-items:center;margin-bottom:.5rem}.parent-info .parent-header i{margin-right:.5rem}.parent-info .parent-header .parent-title{font-size:.875rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.parent-info .parent-id{font-size:.875rem;font-weight:600;color:#111827;margin-bottom:.25rem}.parent-info .parent-description{font-size:.875rem;color:#6b7280}.form-section{padding:1.5rem}@media (max-width: 640px){.form-section{padding:1rem 1.5rem}}.form-section .form-title{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:1.5rem}.form-grid{display:grid;gap:1rem}@media (min-width: 768px){.form-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.form-grid{grid-template-columns:repeat(3,1fr)}}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.form-group input,.form-group select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#6b7280;box-shadow:0 0 0 3px #6b72801a}.form-group input::placeholder,.form-group select::placeholder{color:#9ca3af}.form-group .error-message{font-size:.875rem;color:#dc2626;margin-top:.25rem}.parent-summary{background-color:#fff;border:1px solid #e5e7eb;border-radius:.375rem;padding:1rem;margin-top:1rem}.parent-summary .summary-text{font-size:.875rem;color:#6b7280;display:flex;align-items:center}.parent-summary .summary-text i{margin-right:.5rem;color:#10b981}.parent-summary .summary-text strong{margin-right:.5rem;color:#374151}@media (max-width: 640px){.modal-content{padding:1rem}.modal-header{padding:1rem 1.5rem}.modal-header .modal-title{font-size:1.25rem}.modal-footer{padding:1rem 1.5rem}.modal-footer .button-group{flex-direction:column-reverse;gap:.5rem}.modal-footer .button-group .btn{width:100%}.info-grid{gap:.75rem}.form-grid{grid-template-columns:1fr}.parent-info .border-l-4{border-left-width:3px;padding-left:.75rem}}@media (max-width: 480px){.modal-content{margin:.25rem;border-radius:.25rem}.modal-header{padding:.75rem 1rem}.modal-header .modal-title{font-size:1.125rem}.modal-footer{padding:.75rem 1rem}}
