:root{
    --customer-surface:#ffffff;
    --customer-page:#f7f4f8;
    --customer-border:#eadfeb;
    --customer-shadow:0 14px 40px rgba(62,0,73,.08);
    --customer-shadow-hover:0 22px 55px rgba(62,0,73,.14);
}

body{background:linear-gradient(180deg,#f7f2f9 0,#fbfafb 270px,#fff 100%)}
.customer-main{max-width:1240px;padding-top:30px}
.customer-page-head{position:relative;overflow:hidden;align-items:center;background:linear-gradient(135deg,#fff 0,#fff 68%,#fbf2fd 100%);border:1px solid var(--customer-border);border-radius:26px;padding:26px 28px;box-shadow:var(--customer-shadow);margin-bottom:24px}
.customer-page-head:after{content:"";position:absolute;right:-55px;top:-80px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,#ffd4002e 0,#7b0c9600 70%);pointer-events:none}
.customer-page-head h1{font-size:clamp(27px,3vw,38px);letter-spacing:-.04em}
.customer-page-head p{max-width:690px;font-size:14px;line-height:1.55}
.customer-grid{gap:20px}
.customer-card{position:relative;border:1px solid var(--customer-border);border-radius:24px;padding:24px;background:var(--customer-surface);box-shadow:var(--customer-shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.customer-card:hover{transform:translateY(-2px);box-shadow:var(--customer-shadow-hover);border-color:#d9c6dd}
.customer-card h2{font-size:21px;letter-spacing:-.025em;margin-bottom:6px}
.customer-card h3{font-size:17px;letter-spacing:-.015em}
.customer-card>p:first-of-type{margin-top:4px}
.customer-card p{font-size:13px;line-height:1.58}
.quick-link{margin:10px 0;padding:15px 16px;border:1px solid var(--customer-border);border-radius:17px;background:#fff;box-shadow:0 6px 18px rgba(48,0,58,.045);transition:.18s ease}
.quick-link:hover{background:#fdf9fe;border-color:#d8c3de;transform:translateY(-1px)}
.quick-link:last-child{border-bottom:1px solid var(--customer-border)}
.quick-icon{flex:0 0 44px;width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,#ffe65d,#ffd000);box-shadow:0 7px 18px #ffd40045}
.quick-link strong{font-size:14px;line-height:1.35}
.quick-link small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}
.customer-btn{min-height:46px;border-radius:14px;padding:12px 19px;background:linear-gradient(135deg,#4a005a,#711087);box-shadow:0 8px 18px #4a005a22;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}
.customer-btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px #4a005a30}
.customer-btn.yellow{background:linear-gradient(135deg,#ffe24b,#ffd000);box-shadow:0 8px 18px #ffd40042}
.customer-btn.outline{box-shadow:none;border-color:#d8c8dc}
.customer-btn.danger{box-shadow:none;border:1px solid #ffd7dd}
.customer-form{gap:16px}
.customer-field{font-size:12px;letter-spacing:.005em}
.customer-field input,.customer-field select,.customer-field textarea{min-height:48px;margin-top:8px;padding:13px 14px;border-color:#dfd2e3;border-radius:14px;background:#fff;box-shadow:inset 0 1px 0 rgba(42,0,51,.02);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.customer-field input:hover,.customer-field select:hover,.customer-field textarea:hover{border-color:#cdb8d3;background:#fff}
.customer-field input:focus,.customer-field select:focus,.customer-field textarea:focus{outline:0;border-color:#7b0c96;box-shadow:0 0 0 4px #7b0c9614}
.customer-field small{font-size:11px;line-height:1.45;margin-top:7px}
.profile-head{padding-bottom:20px;border-bottom:1px solid var(--customer-border)}
.profile-photo{width:104px;height:104px;border-radius:30px;border:4px solid #fff;box-shadow:0 9px 24px #4a005a20}
.address-details{display:block;padding:0;background:#fff;overflow:hidden}
.address-details>summary{padding:15px 16px;min-height:76px}
.address-details>summary>div:nth-child(2){min-width:0;flex:1}
.address-details>summary>span{margin-left:auto;padding:8px 10px;border-radius:10px;background:#f6eef8;color:var(--purple);font-size:12px}
.address-details>.customer-form{margin:0 16px;padding:20px 0;border-top:1px solid var(--customer-border)}
.address-details>form:last-child{padding:0 16px 16px}
.wallet-hero{background:linear-gradient(135deg,#3f004e 0,#78108e 70%,#a52db4 100%);border-color:transparent;box-shadow:0 20px 48px #4a005a38}
.coupon{border:1px solid #ead8a0;border-left:6px solid var(--yellow);border-radius:18px;background:linear-gradient(135deg,#fffdf3,#fff);box-shadow:0 10px 25px #5a45000c}
.customer-table-wrap{border:1px solid var(--customer-border);border-radius:17px;overflow:auto}
.customer-table th{background:#faf7fb;padding:14px 12px}.customer-table td{padding:14px 12px}
.customer-status{padding:7px 11px}
.empty-state{border:1px dashed #d9c8de;border-radius:18px;background:#fcf9fd}
.auth-card{border:1px solid #ffffff44;border-radius:30px;padding:32px;box-shadow:0 32px 90px #16001f80}

@media(max-width:900px){
    .customer-card,.customer-card.wide{grid-column:span 6}
    .customer-page-head{padding:22px}
}
@media(max-width:650px){
    .customer-main{padding:16px 12px 80px}
    .customer-page-head{padding:20px;border-radius:20px;margin-bottom:16px}
    .customer-card,.customer-card.wide{grid-column:1/-1;padding:19px;border-radius:20px}
    .customer-card:hover{transform:none}
    .quick-link{padding:13px}
    .address-details>summary{align-items:center}
    .address-details>summary>span{font-size:0;width:36px;height:36px;display:grid;place-items:center;padding:0}
    .address-details>summary>span:after{content:"Editar";font-size:10px}
    .customer-form{gap:13px}
}
