@charset "UTF-8";:root{--color-primary: #8a8a8a;--color-primary-dark: #666666;--color-black: #1a1a1a;--color-white: #ffffff;--color-background-light: #f9f9fa;--color-surface: #ffffff;--color-border: #e0e0e0;--font-primary: "Outfit", sans-serif;--font-secondary: "Playfair Display", serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -2px rgba(0,0,0,.05)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}button{outline:none;-webkit-tap-highlight-color:transparent}button:focus{outline:none}body{font-family:var(--font-primary);background-color:var(--color-background-light);color:var(--color-black);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer;border:none;background:none}ul{list-style:none}input[type=checkbox],input[type=radio]{accent-color:var(--color-black)}.page-container{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:2rem}.page-header{display:flex;justify-content:space-between;align-items:flex-end}.page-header h2{font-size:2rem;color:var(--color-black);font-family:var(--font-secondary);margin-bottom:.25rem}.page-header p{color:var(--color-primary-dark);font-size:.875rem;margin:0}.btn-primary{background-color:var(--color-black);color:var(--color-white);padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:500;transition:all .2s ease;width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-icon{width:36px;height:36px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;color:var(--color-black);transition:all .2s;background:transparent;border:none}.btn-icon i{font-size:1.25rem}.btn-icon:hover{background-color:var(--color-border)}.btn-icon.outline{border:1px solid var(--color-border)}.btn-icon.circle{border-radius:50%;width:40px;height:40px;background:var(--color-background-light)}.btn-icon.circle:hover{background:var(--color-black);color:var(--color-white)}.btn-icon.circle.outline{border:1px solid var(--color-border)}.btn-icon.danger{color:#ef4444;background:#fee2e2}.btn-icon.danger:hover{background:#ef4444;color:var(--color-white)}.input-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:var(--spacing-md)}.input-group label{font-size:.875rem;font-weight:500;color:var(--color-black)}.input-group input,.input-group select{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-primary);font-size:1rem;transition:all .2s}.input-group input:focus,.input-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8a8a8a1a}.input-group input.ng-invalid.ng-touched,.input-group select.ng-invalid.ng-touched{border-color:#ef4444;background-color:#fef2f2}.input-group input.ng-invalid.ng-touched:focus,.input-group select.ng-invalid.ng-touched:focus{box-shadow:0 0 0 3px #ef444426}.field-error-text{color:#ef4444;font-size:.8125rem;font-weight:500;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.field-error-text i{font-size:1rem}.input-group-with-icon{position:relative;display:flex;align-items:center}.input-group-with-icon input{padding-right:3rem!important}.input-group-with-icon .input-icon-btn{position:absolute;right:.75rem;color:var(--color-primary-dark);font-size:1.25rem;display:flex;align-items:center;justify-content:center;padding:.25rem;transition:color .2s;z-index:2}.input-group-with-icon .input-icon-btn:hover{color:var(--color-black)}.input-group-with-icon .native-picker-hidden{position:absolute;right:1.5rem;width:0px;height:0px;visibility:hidden;pointer-events:none;border:none}.fade-in{animation:fadeIn .4s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ph-spin{animation:ph-spin 1s linear infinite;display:inline-block}@keyframes ph-spin{to{transform:rotate(360deg)}}
