.portal-container{flex-direction:column;gap:3rem;max-width:1200px;margin:0 auto;padding:2rem;display:flex}.portal-header{justify-content:space-between;align-items:center;padding:2rem;display:flex}.client-info h1{margin-bottom:.5rem;font-size:2rem;font-weight:700}.client-info p{color:var(--text-secondary)}.freelancer-branding{color:var(--text-secondary);opacity:.8;font-size:.875rem}.portal-content{flex-direction:column;gap:4rem;display:flex}h2{margin-bottom:1.5rem;font-size:1.75rem;font-weight:700}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;display:grid}.project-card{flex-direction:column;gap:1.5rem;padding:2rem;display:flex}.project-header{justify-content:space-between;align-items:flex-start;display:flex}.project-header h3{font-size:1.25rem;font-weight:600}.badge{border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600}.badge-blue{color:#60a5fa;background:#3b82f61a}.badge-orange{color:#fbbf24;background:#f59e0b1a}.badge-green{color:#34d399;background:#10b9811a}.progress-bar-container{background:#ffffff0d;border-radius:4px;height:8px;overflow:hidden}.progress-bar{background:linear-gradient(90deg,#60a5fa,#a78bfa);border-radius:4px;height:100%;transition:width 1s ease-in-out}.progress-text{color:var(--text-secondary);text-align:right;margin-top:-.5rem;font-size:.875rem}.tasks-list h4{color:var(--text-secondary);margin-bottom:1rem;font-size:1rem}.tasks-list ul{flex-direction:column;gap:.75rem;list-style:none;display:flex}.tasks-list li{background:#ffffff05;border-radius:6px;align-items:center;gap:.75rem;padding:.5rem;font-size:.9rem;display:flex}.task-dot{border:2px solid var(--text-secondary);border-radius:50%;width:12px;height:12px}.task-dot.done{background:var(--success);border-color:var(--success)}.task-name{flex:1}.task-status{color:var(--text-secondary);font-size:.75rem}.section-invoices{padding:2rem}.table-responsive{overflow-x:auto}.invoices-table{border-collapse:collapse;text-align:left;width:100%}.invoices-table th{color:var(--text-secondary);border-bottom:1px solid var(--glass-border);padding:1rem;font-weight:500}.invoices-table td{border-bottom:1px solid #ffffff0d;padding:1.25rem 1rem}.invoices-table tr:last-child td{border-bottom:none}
