body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1a1a;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.expense-tracker-modern{background-color:#1a1a1a;min-height:100vh;padding-bottom:80px}.active-filters::-webkit-scrollbar,.filter-chips::-webkit-scrollbar{height:4px}.active-filters::-webkit-scrollbar-track,.filter-chips::-webkit-scrollbar-track{background:#0000}.active-filters::-webkit-scrollbar-thumb,.filter-chips::-webkit-scrollbar-thumb{background:#7c4dff4d;border-radius:2px}.active-filters::-webkit-scrollbar-thumb:hover,.filter-chips::-webkit-scrollbar-thumb:hover{background:#7c4dff80}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.header{background-color:#242424;box-shadow:0 2px 8px #0000004d;padding:16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.app-title{color:#fff;font-size:20px;font-weight:600;margin:0;text-align:left}.total-label{color:#b0b0b0;font-size:12px;margin:4px 0 0;text-align:left}.icon-btn{align-items:center;background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:24px;gap:6px;padding:8px}.icon-btn:hover{background-color:#ffffff1a}.header-actions{align-items:center;display:flex;gap:8px;position:relative}.dropdown-menu{background-color:#2a2a2a;border-radius:8px;box-shadow:0 4px 12px #00000080;margin-top:8px;min-width:180px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-menu button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:14px;padding:12px 16px;text-align:left;width:100%}.dropdown-menu button:hover{background-color:#ffffff1a}.filter-btn{position:relative}.filter-badge{background:#7c4dff;border-radius:10px;color:#fff;font-size:10px;font-weight:700;min-width:16px;padding:2px 6px;position:absolute;right:4px;text-align:center;top:4px}.summary-cards{display:flex;gap:12px;margin:0 auto;max-width:1200px;overflow-x:auto;padding:16px}.summary-card{border-radius:16px;display:flex;flex-direction:column;height:100px;justify-content:space-between;min-width:160px;padding:16px}.summary-card.primary{background:linear-gradient(135deg,#7c4dff,#651fff)}.summary-card.secondary{background:linear-gradient(135deg,#5e5e6e,#4a4a5a)}.card-header{align-items:center;display:flex;font-size:14px;font-weight:500;justify-content:space-between}.card-header .icon{font-size:18px}.card-amount{font-size:32px;font-weight:700;margin-top:8px}.budget-group-card{align-items:center;background:linear-gradient(135deg,#2a2a3e,#242435);border:1px solid #7c4dff1a;border-radius:16px;box-shadow:0 4px 12px #0000004d;display:flex;gap:16px;margin-bottom:16px;padding:16px 20px;transition:all .3s ease}.budget-group-card:hover{border-color:#7c4dff4d;box-shadow:0 6px 16px #7c4dff33;transform:translateY(-2px)}.budget-group-header{align-items:center;display:flex;gap:16px;margin-bottom:16px}.budget-group-icon{align-items:center;background:linear-gradient(135deg,#7c4dff33,#7c4dff1a);border-radius:16px;color:#7c4dff;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.budget-group-info{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;min-width:0}.budget-group-name{color:#fff;font-size:18px;font-weight:600;margin:0 0 4px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.budget-group-members{color:#9e9e9e;font-size:13px;margin:0;text-align:left}.budget-group-actions{display:flex;flex-shrink:0;gap:8px}.settlement-card{background:linear-gradient(135deg,#2a3a2e,#1f2d23);border:1px solid #4caf5033;border-radius:16px;box-shadow:0 4px 12px #0000004d;margin:16px auto;max-width:1200px;padding:20px}.settlement-header{margin-bottom:16px}.settlement-header h3{align-items:center;color:#fff;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.settlement-list{display:flex;flex-direction:column;gap:12px}.settlement-item{align-items:center;background-color:#0003;border:1px solid #4caf501a;border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:12px 16px}.settlement-item.is-owed{border-left:3px solid #4caf50}.settlement-item.owes{border-left:3px solid #ff9800}.settlement-name{color:#fff;flex:1 1;font-size:15px;font-weight:600;text-align:left}.settlement-status{color:#9e9e9e;flex-shrink:0;font-size:13px}.settlement-amount{flex-shrink:0;font-size:18px;font-weight:700;min-width:80px;text-align:right}.settlement-amount.positive{color:#4caf50}.settlement-amount.negative{color:#ff9800}@media (max-width:600px){.settlement-item{flex-wrap:wrap}.settlement-name{flex:0 0 100%;margin-bottom:4px}.settlement-status{flex:1 1}.settlement-amount{text-align:right}}.filter-chips{display:flex;gap:8px;margin:0 auto;max-width:1200px;overflow-x:auto;padding:8px 16px}.chip{background-color:initial;border:1px solid #4a4a5a;border-radius:20px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s;white-space:nowrap}.chip:hover{background-color:#ffffff0d}.chip.active{background-color:#5e5e6e;border-color:#7c7c8a}.active-filters{align-items:center;background-color:#7c4dff0d;border-bottom:1px solid #7c4dff1a;border-top:1px solid #7c4dff1a;display:flex;gap:8px;margin:0 auto;max-width:1200px;overflow-x:auto;padding:8px 16px}.active-filter-chip{background-color:#7c4dff;border-radius:16px;color:#fff;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;white-space:nowrap}.active-filter-chip,.active-filter-chip span,.remove-filter{align-items:center;display:flex}.remove-filter{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;height:18px;justify-content:center;margin-left:4px;padding:0;transition:background-color .2s;width:18px}.remove-filter:hover{background-color:#fff3}.clear-filters-btn{background-color:initial;border:1px solid #7c4dff;border-radius:16px;color:#7c4dff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .2s;white-space:nowrap}.clear-filters-btn:hover{background-color:#7c4dff1a}.transactions-list{margin:0 auto;max-width:1200px;padding:16px}.transaction-group{margin-bottom:24px}.date-header{color:#7c4dff;font-size:14px;font-weight:700;margin:0 0 12px;text-transform:capitalize}.transaction-card{background-color:#242424;border-radius:12px;box-shadow:0 2px 4px #0003;margin-bottom:12px;padding:16px}.transaction-content{display:flex;flex-direction:column;gap:8px}.transaction-main{align-items:center;display:flex;justify-content:space-between}.transaction-left{align-items:center;display:flex;flex:1 1;gap:12px;min-width:0}.transaction-text{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;min-width:0}.category-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:24px;height:48px;justify-content:center;width:48px}.category-icon.food{background-color:#ff980033;color:#ff9800}.category-icon.grocery{background-color:#00bcd433;color:#00bcd4}.category-icon.shopping{background-color:#2196f333;color:#2196f3}.category-icon.entertainment{background-color:#e91e6333;color:#e91e63}.category-icon.transport{background-color:#9c27b033;color:#9c27b0}.category-icon.utilities{background-color:#4caf5033;color:#4caf50}.category-icon.healthcare{background-color:#f4433633;color:#f44336}.category-icon.other{background-color:#607d8b33;color:#607d8b}.category-icon.group{background-color:#7c4dff33;color:#7c4dff}.category-icon.invite{background-color:#03dac633;color:#03dac6}.shop-name{font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amount{color:#b3261e;font-size:20px;font-weight:700;margin-left:8px;white-space:nowrap}.transaction-footer{align-items:center;color:#9e9e9e;display:flex;flex-wrap:wrap;font-size:12px;gap:8px}.source-badge{align-items:center;background-color:#7c4dff;border-radius:12px;color:#fff;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:600;gap:4px;padding:4px 8px}.source-text{color:#9e9e9e}.source-text,.time{flex-shrink:0;font-size:12px}.time{color:#b0b0b0;font-weight:500;margin-left:auto}.transaction-actions{display:flex;flex-shrink:0;gap:4px}.split-indicator{color:#4a9eff!important;font-weight:500}.action-btn{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:18px;gap:4px;justify-content:center;padding:4px 8px;transition:background-color .2s}.action-btn:hover{background-color:#ffffff1a}.edit-btn{color:#7c4dff}.edit-btn:hover{background-color:#7c4dff33;color:#7c4dff}.delete-btn{color:#b3261e}.delete-btn:hover{background-color:#b3261e33;color:#b3261e}.leave-btn{color:#b3261e}.leave-btn:hover{background-color:#b3261e33;color:#b3261e}.invite-btn{color:#7c4dff}.invite-btn:hover{background-color:#7c4dff33;color:#7c4dff}.action-btn-compact{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;cursor:pointer;display:flex;justify-content:center;padding:10px;transition:all .2s ease}.action-btn-compact:hover{transform:scale(1.05)}.action-btn-compact.invite-btn{border-color:#7c4dff4d;color:#7c4dff}.action-btn-compact.invite-btn:hover{background:#7c4dff26;border-color:#7c4dff80}.action-btn-compact.edit-btn{border-color:#7c4dff4d;color:#7c4dff}.action-btn-compact.edit-btn:hover{background:#7c4dff26;border-color:#7c4dff80}.action-btn-compact.leave-btn{border-color:#b3261e4d;color:#b3261e}.action-btn-compact.leave-btn:hover{background:#b3261e26;border-color:#b3261e80}.fab{align-items:center;background:linear-gradient(135deg,#7c4dff,#651fff);border:none;border-radius:28px;bottom:24px;box-shadow:0 4px 12px #7c4dff66;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;position:fixed;right:24px;transition:transform .2s,box-shadow .2s;z-index:50}.fab:hover{box-shadow:0 6px 16px #7c4dff80;transform:translateY(-2px)}.fab-icon{font-size:24px;line-height:1}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:600;gap:6px;justify-content:center;padding:12px 24px;transition:opacity .2s}.btn-secondary{background-color:initial;border:1px solid #4a4a5a;color:#fff}.btn-secondary:hover{background-color:#ffffff0d}.btn-primary{background:linear-gradient(135deg,#7c4dff,#651fff);color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:disabled{background:#3a3a3a;color:#666;cursor:not-allowed;opacity:.6}.btn-primary:disabled:hover{opacity:.6}.btn-danger{background:linear-gradient(135deg,#ff5252,#f44336);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px 24px;transition:opacity .2s}.btn-danger:hover{opacity:.9}.btn-link{background:none;border:none;color:#7c4dff;cursor:pointer;font-size:14px;padding:4px 8px;text-decoration:none}.btn-link:hover{color:#651fff;text-decoration:underline}.btn-max{background-color:initial;border:none;border-radius:6px;color:#7c4dff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 12px;transition:background-color .2s;white-space:nowrap}.btn-max:hover{background-color:#7c4dff1a}.modal-overlay{align-items:flex-end;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s ease-out;background-color:#242424;border-radius:24px 24px 0 0;max-height:80vh;max-width:600px;overflow-y:auto;padding:24px;width:100%}.modal-content h2{font-size:24px;font-weight:700;margin:0 0 24px}.form-group{margin-bottom:16px}.form-group label{color:#b0b0b0;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input,.form-group select{background-color:#1a1a1a;border:1px solid #4a4a5a;border-radius:8px;box-sizing:border-box;color:#fff;font-size:16px;padding:12px 16px;width:100%}.form-group input[type=number]::-webkit-inner-spin-button,.form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-group input[type=number]{-webkit-appearance:textfield;appearance:textfield}.form-group input:focus,.form-group select:focus{border-color:#7c4dff;outline:none}.modal-actions{display:flex;gap:12px;margin-top:24px}.confirm-dialog{animation:scaleIn .2s ease-out;background-color:#242424;border-radius:16px;max-width:400px;padding:24px;text-align:center;width:90%}.confirm-icon{color:#b3261e;font-size:48px;margin-bottom:16px}.confirm-dialog h2{font-size:20px;font-weight:700;margin:0 0 12px}.confirm-dialog p{color:#b0b0b0;font-size:14px;margin:0 0 24px}.split-section{background-color:#2a2a2a;border-radius:8px;margin-top:8px;padding:16px}.split-toggle{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;justify-content:space-between;margin-bottom:12px;padding:0;text-align:left;width:100%}.split-toggle:hover,.toggle-icon{color:#7c4dff}.toggle-icon{font-size:14px;transition:transform .3s ease}.toggle-icon.expanded{transform:rotate(180deg)}.split-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.split-header label{font-weight:600;margin:0}.split-actions{display:flex;gap:12px;justify-content:flex-end;margin-bottom:12px}.split-inputs{display:flex;flex-direction:column;gap:12px}.split-input-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.split-input-row label{flex:1 1;font-size:14px;margin:0;text-align:left}.split-input-controls{align-items:center;display:flex;gap:8px}.split-input-wrapper{align-items:center;display:flex;position:relative}.input-currency{color:#9e9e9e;font-size:14px;left:12px;pointer-events:none;position:absolute}.split-input-row input{background-color:#1a1a1a;border:1px solid #3a3a3a;border-radius:6px;color:#fff;font-size:14px;padding:8px 12px 8px 24px;text-align:right;width:100px}.split-input-row input:focus{border-color:#4a9eff;outline:none}.split-total{align-items:center;border-top:1px solid #3a3a3a;display:flex;font-weight:600;justify-content:space-between;margin-top:12px;padding-top:12px}.split-total .valid-split{color:#7c4dff}.split-error,.split-total .invalid-split{color:#f44336}.split-error{background-color:#f443361a;border-left:3px solid #f44336;border-radius:4px;font-size:14px;margin-top:8px;padding:8px 12px}@media (min-width:768px){.modal-overlay{align-items:center}.modal-content{border-radius:24px;max-height:90vh}}.filter-modal-overlay{align-items:flex-end;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.filter-modal-content{animation:slideUp .3s ease-out;background-color:#242424;border-radius:24px 24px 0 0;max-height:80vh;max-width:600px;overflow-y:auto;padding:24px;width:100%}.filter-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.filter-modal-header h2{color:#fff;font-size:24px;font-weight:700;margin:0}.clear-all-btn{background:none;border:none;border-radius:6px;color:#7c4dff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 12px;transition:background-color .2s}.clear-all-btn:hover{background-color:#7c4dff1a}.filter-section{margin-bottom:24px}.filter-section-header{align-items:center;display:flex;gap:8px;margin-bottom:12px}.filter-section-header h3{color:#fff;flex:1 1;font-size:16px;font-weight:600;margin:0}.section-icon{color:#7c4dff;font-size:20px}.badge{background-color:#7c4dff;border-radius:12px;color:#fff;font-size:12px;font-weight:700;min-width:20px;padding:2px 8px;text-align:center}.filter-options{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{align-items:left;background-color:initial;border:1px solid #4a4a5a;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:10px 16px;transition:all .2s;white-space:nowrap}.filter-chip:hover{background-color:#ffffff0d;border-color:#7c4dff}.filter-chip.selected{background-color:#7c4dff;border-color:#7c4dff;color:#fff}.check-icon{font-size:18px}.no-groups-text{color:#9e9e9e;font-size:14px;margin:0;padding:12px 0}.filter-divider{background-color:#3a3a3a;height:1px;margin:24px 0}.filter-modal-actions{border-top:1px solid #3a3a3a;display:flex;gap:12px;margin-top:24px;padding-top:16px}@media (min-width:768px){.filter-modal-overlay{align-items:center}.filter-modal-content{border-radius:24px;max-height:90vh}}.empty-state{color:#7c7c8a;padding:64px 16px;text-align:center}.empty-icon{font-size:64px;margin-bottom:16px}.profile-page *,.profile-page :after,.profile-page :before{box-sizing:border-box}.profile-page{background:linear-gradient(135deg,#f5f5f5,#fff);color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(12px,1.5vmin,20px);max-width:100vw;min-height:100vh;overflow-x:hidden}.profile-header{background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d;position:-webkit-sticky;position:sticky;top:0;z-index:100}.profile-logo{align-items:center;display:flex;gap:10px}.profile-logo-img{display:block;height:36px;width:auto}.profile-logo h1{font-size:28px;line-height:1;margin:0}.profile-header-content{align-items:center;display:flex;justify-content:space-between;padding:1vmin 4vmin}.logo-badge{background:linear-gradient(135deg,#2979f4,#1e88e5);border-radius:6px;font-weight:700;height:36px;justify-content:center;width:36px}.contact-btn,.logo-badge{align-items:center;color:#fff;display:flex;font-size:14px}.contact-btn{background:#1a1a1a;border:none;border-radius:24px;cursor:pointer;font-weight:500;gap:8px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.contact-btn:hover{background:#333;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.about-content,.profile-about{display:flex;flex-direction:column}.about-content{gap:24px}.profile-photo-container{position:relative}.profile-photo{border:6px solid #2979f4;border-radius:50%;box-shadow:0 10px 40px #0000001a;height:clamp(120px,14vmin,240px);object-fit:cover;transition:transform .3s ease;width:clamp(120px,14vmin,240px)}.profile-photo:hover{transform:scale(1.02)}.about-text{display:flex;flex-direction:column;gap:16px}.about-paragraph{color:#4a4a4a;font-size:15px;line-height:1.8;margin:0}.profile-portfolio{display:flex;justify-content:center}.portfolio-main{position:relative;width:100%}.portfolio-project-title{color:#1a1a1a;font-size:20px;font-weight:700;letter-spacing:.05em;margin-bottom:16px;text-transform:uppercase}.portfolio-image-container{aspect-ratio:16/9;background:#e0e0e0;border-radius:16px;box-shadow:0 20px 60px #0000001f;cursor:pointer;overflow:hidden;position:relative}.portfolio-image{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.portfolio-image-container:hover .portfolio-image{transform:scale(1.05)}.portfolio-caption{background:linear-gradient(180deg,#0000,#000c);bottom:0;color:#fff;font-size:16px;font-weight:500;left:0;padding:30px 24px 24px;position:absolute;right:0}.portfolio-description{color:#4a4a4a;font-size:14px;line-height:1.6;margin-top:16px;text-align:center}.portfolio-nav{display:flex;justify-content:space-between;left:0;padding:0 20px;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:10}.nav-btn{align-items:center;background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#1a1a1a;cursor:pointer;display:flex;font-size:28px;height:48px;justify-content:center;pointer-events:all;transition:all .3s ease;width:48px}.nav-btn:hover{background:#fff;box-shadow:0 6px 16px #0003;transform:scale(1.1)}.portfolio-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a1a1ad9;border-radius:20px;bottom:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px;position:absolute;right:20px}.profile-timeline{align-items:center;display:flex;flex-direction:column;justify-content:center}.timeline-container{display:flex;flex-direction:column;gap:24px;position:relative}.timeline-item{align-items:center;cursor:pointer;display:flex;gap:16px;transition:all .3s ease}.timeline-dot{background:#d0d0d0;border-radius:50%;flex-shrink:0;height:12px;transition:all .3s ease;width:12px}.timeline-item.active .timeline-dot{background:#2979f4;box-shadow:0 0 12px #2979f499;height:16px;width:16px}.timeline-year{color:#a0a0a0;font-size:14px;font-weight:500;min-width:50px;transition:color .3s ease}.timeline-item.active .timeline-year{color:#1a1a1a;font-weight:600}.profile-testimonials{background:#fafafa;margin-top:60px;padding:80px 24px}.testimonials-container{margin:0 auto;max-width:1400px}.profile-testimonials h2{color:#1a1a1a;font-size:32px;font-weight:700;margin-bottom:50px;text-align:center}.testimonials-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.testimonial-card{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:32px;transition:all .3s ease}.testimonial-card:hover{box-shadow:0 12px 32px #0000001f;transform:translateY(-4px)}.testimonial-logo{align-items:center;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border:1px solid #e0e0e0;border-radius:8px;display:flex;height:56px;justify-content:center;margin-bottom:20px;width:56px}.logo-text{color:#1a1a1a;font-size:11px;font-weight:700;letter-spacing:1px}.testimonial-text{color:#555;font-size:14px;line-height:1.8;margin-bottom:16px}.testimonial-link{color:#2979f4;font-size:16px;font-weight:600;text-decoration:none;transition:color .3s ease}.testimonial-link:hover{color:#1e5bc0}@media (max-width:960px){.profile-timeline,.timeline-container{flex-direction:row;justify-content:center}.timeline-container{flex-wrap:wrap;gap:40px}}@media (max-width:600px){.portfolio-image-container{aspect-ratio:1/1}.profile-timeline{align-items:flex-start;flex-direction:column}.timeline-container{flex-direction:column;gap:16px;width:100%}.timeline-item{background:#fff;border:1px solid #f0f0f0;border-radius:10px;box-shadow:0 2px 8px #00000012;padding:10px 16px;width:100%}.timeline-item.active{background:#f0f5ff;border-color:#2979f4}.timeline-year{font-size:15px}}@media (max-width:768px){.profile-container{padding:40px 16px}.profile-header-content{flex-direction:column;gap:16px}.profile-photo{height:200px;width:200px}.portfolio-counter{font-size:12px;padding:6px 12px}.profile-testimonials h2{font-size:24px}.testimonials-grid{grid-template-columns:1fr}}.lightbox-overlay{align-items:center;animation:lightbox-fade-in .2s ease;background:#000000e0;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:24px;position:fixed;top:0;width:100%;z-index:9999}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-content{align-items:center;display:flex;flex-direction:column;gap:16px;max-height:90vh;max-width:90vw}.lightbox-image{border-radius:12px;box-shadow:0 24px 80px #00000080;display:block;max-height:80vh;max-width:90vw;object-fit:contain}.lightbox-caption{color:#ffffffe6;font-size:16px;font-weight:500;text-align:center}.lightbox-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:44px;justify-content:center;line-height:1;position:fixed;right:24px;top:20px;transition:background .2s ease;width:44px;z-index:10000}.lightbox-close:hover{background:#ffffff59}.contact-page *,.contact-page :after,.contact-page :before{box-sizing:border-box}.contact-page{background:linear-gradient(135deg,#f5f5f5,#fff);color:#1a1a1a;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-width:100vw;min-height:100vh;overflow-x:hidden}.contact-header{background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 8px #0000000d;position:-webkit-sticky;position:sticky;top:0;z-index:100}.contact-header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:16px 24px;width:100%}.back-link{align-items:center;border-radius:6px;color:#555;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:8px 12px;text-decoration:none;transition:all .3s ease}.back-link:hover{background:#f5f5f5;color:#1a1a1a}.header-spacing{flex:1 1}.contact-container{flex:1 1;margin:0 auto;max-width:1200px;padding:60px 24px;width:100%}.contact-intro{margin-bottom:50px;text-align:center}.contact-title{color:#1a1a1a;font-size:48px;font-weight:700;margin:0 0 20px}.contact-subtitle{color:#555;font-size:16px;line-height:1.8;margin:0 auto;max-width:600px}.contact-form-section{grid-gap:50px;display:grid;gap:50px;grid-template-columns:1fr 340px;margin-top:40px}.contact-form-wrapper{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 4px 24px #00000014;padding:40px}.contact-form{gap:24px}.contact-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-label{color:#1a1a1a;display:flex;font-size:14px;font-weight:600;gap:4px}.required{color:#dc2626}.form-input,.form-select{background:#fff;border:1px solid #d0d0d0;border-radius:8px;box-sizing:border-box;color:#1a1a1a;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.form-input:focus,.form-select:focus{background:#1a1a1a;border-color:#2979f4;box-shadow:0 0 0 3px #2979f41a;outline:none}.form-input::placeholder{color:#999}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%231a1a1a' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.form-textarea{background:#fff;border:1px solid #d0d0d0;border-radius:8px;box-sizing:border-box;color:#1a1a1a;font-family:inherit;font-size:14px;min-height:140px;padding:12px 16px;resize:vertical;transition:all .3s ease;width:100%}.form-textarea:focus{border-color:#2979f4;box-shadow:0 0 0 3px #2979f41a;outline:none}.form-textarea::placeholder{color:#999}.form-submit-btn{align-items:center;background:linear-gradient(135deg,#2979f4,#1e5bc0);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;margin-top:12px;padding:14px 24px;transition:all .3s ease}.form-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#1e5bc0,#1643a0);box-shadow:0 8px 20px #2979f466;transform:translateY(-2px)}.form-submit-btn:disabled{cursor:not-allowed;opacity:.7}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.form-note{color:#999;font-size:13px;margin:0;text-align:center}.form-success-message{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 40px;text-align:center}.success-icon{animation:success-pop .5s ease-out;font-size:56px;margin-bottom:20px}@keyframes success-pop{0%{opacity:0;transform:scale(0) rotate(-45deg)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1) rotate(0)}}.form-success-message h3{color:#1a1a1a;font-size:24px;margin:0 0 12px}.form-success-message p{color:#555;font-size:16px;margin:0}.form-error-message{background:#fee2e2;border-left:4px solid #dc2626;border-radius:6px;margin-bottom:24px;padding:16px}.form-error-message p{color:#991b1b;font-size:14px;font-weight:500;margin:0}.contact-info-sidebar{display:flex;flex-direction:column;gap:32px}.info-card{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 4px 24px #00000014;padding:32px 24px}.info-card h3{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 24px}.info-item{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.info-item:last-child{margin-bottom:0}.info-label{color:#999;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-link,.info-text{color:#1a1a1a;font-size:14px}.info-link{color:#2979f4;font-weight:500;text-decoration:none;transition:color .3s ease}.info-link:hover{color:#1e5bc0}.social-links{background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 4px 24px #00000014;padding:32px 24px}.social-links h3{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 20px}.social-buttons{display:flex;flex-wrap:wrap;gap:12px}.social-btn{align-items:center;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;color:#1a1a1a;display:flex;font-size:20px;height:48px;justify-content:center;text-decoration:none;transition:all .3s ease;width:48px}.social-btn:hover{background:#2979f4;border-color:#2979f4;box-shadow:0 4px 12px #2979f44d;color:#fff;transform:translateY(-2px)}.contact-footer{background:#fff;border-top:1px solid #e0e0e0;color:#999;font-size:14px;margin-top:60px;padding:32px 24px;text-align:center}.contact-footer p{margin:0}@media (max-width:1024px){.contact-form-section{grid-template-columns:1fr}.contact-info-sidebar{flex-direction:row;gap:24px}.info-card,.social-links{flex:1 1}}@media (max-width:768px){.contact-container{padding:40px 16px}.contact-title{font-size:36px}.contact-subtitle{font-size:15px}.contact-form-wrapper{padding:28px 20px}.form-group{gap:6px}.contact-info-sidebar{flex-direction:column;gap:20px}.info-card,.social-links{padding:24px 18px}.contact-footer{padding:24px 16px}}@media (max-width:480px){.contact-title{font-size:28px}.contact-subtitle{font-size:14px}.contact-form-wrapper{padding:20px 16px}.form-label{font-size:13px}.form-input,.form-select,.form-textarea{font-size:16px}.social-buttons{gap:10px}.social-btn{font-size:18px;height:44px;width:44px}}
/*# sourceMappingURL=main.88e24492.css.map*/