/* Black Studio — customer profile / delivery location */
.profile-page {
  min-height: calc(100vh - 72px);
  padding: 34px 16px 80px;
  background:
    radial-gradient(circle at 10% 5%, rgba(255,59,48,.10), transparent 26%),
    radial-gradient(circle at 90% 80%, rgba(0,230,161,.08), transparent 30%),
    #070909;
}

.profile-shell { width: min(1120px, 100%); margin: 0 auto; }
.profile-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:22px; }
.profile-kicker { color:#00e6a1; font-size:11px; font-weight:900; letter-spacing:.16em; }
.profile-heading h1 { margin:6px 0 5px; color:#fff; font-size:clamp(28px,5vw,42px); line-height:1.05; }
.profile-heading p { margin:0; color:#8f9696; font-size:14px; }
.profile-logout { border:1px solid rgba(255,59,48,.28); background:rgba(255,59,48,.08); color:#ff8179; padding:11px 16px; border-radius:12px; font-weight:800; cursor:pointer; }
.profile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.profile-card { background:linear-gradient(145deg,rgba(17,21,20,.98),rgba(9,12,11,.98)); border:1px solid rgba(255,255,255,.09); border-radius:20px; padding:20px; box-shadow:0 18px 45px rgba(0,0,0,.22); }
.profile-card-title { display:flex; gap:12px; align-items:center; margin-bottom:18px; }
.profile-card-title>span { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:rgba(0,230,161,.08); border:1px solid rgba(0,230,161,.16); font-size:20px; }
.profile-card-title h2 { margin:0; color:#fff; font-size:18px; }
.profile-card-title p { margin:4px 0 0; color:#747c7c; font-size:12px; }
.profile-form { display:grid; gap:14px; }
.profile-two-col { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.profile-readonly { opacity:.7; cursor:not-allowed; }
.profile-textarea { min-height:92px; resize:vertical; padding:13px 15px; height:auto; }
.profile-textarea.small { min-height:72px; }
.profile-optional { color:#626969; font-size:10px; font-weight:500; }
.location-box { display:flex; gap:13px; align-items:center; padding:15px; border-radius:15px; border:1px solid rgba(0,230,161,.14); background:rgba(0,230,161,.045); }
.location-icon { width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:rgba(0,230,161,.10); font-size:20px; }
.location-copy { min-width:0; display:grid; gap:4px; }
.location-copy strong { color:#dffcf3; font-size:14px; }
.location-copy span { color:#7e8987; font-size:11px; line-height:1.4; overflow-wrap:anywhere; }
.location-actions { display:flex; gap:10px; margin-top:13px; }
.location-button,.map-button { min-height:45px; border-radius:12px; padding:0 14px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; font-weight:800; font-size:12px; cursor:pointer; }
.location-button { border:1px solid rgba(0,230,161,.28); color:#00e6a1; background:rgba(0,230,161,.08); flex:1; }
.location-button:disabled { opacity:.6; cursor:wait; }
.map-button { border:1px solid rgba(255,255,255,.10); color:#fff; background:#151918; min-width:115px; }
.map-button.disabled { opacity:.4; pointer-events:none; }
.location-help { margin:12px 0 0; color:#626969; font-size:10px; line-height:1.5; }
.profile-links { display:grid; gap:9px; }
.profile-link { display:flex; align-items:center; gap:12px; padding:12px; border-radius:13px; text-decoration:none; border:1px solid rgba(255,255,255,.07); background:#0d1110; transition:.18s ease; }
.profile-link:hover { border-color:rgba(0,230,161,.22); transform:translateY(-1px); }
.profile-link>span { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:rgba(255,255,255,.05); color:#00e6a1; }
.profile-link div { display:grid; gap:3px; flex:1; }
.profile-link strong { color:#fff; font-size:13px; }
.profile-link small { color:#6f7877; font-size:10px; }
.profile-link b { color:#00e6a1; font-size:17px; }
.profile-save-bar { margin-top:16px; padding:15px 17px; border:1px solid rgba(255,59,48,.15); background:linear-gradient(90deg,rgba(255,59,48,.06),rgba(0,230,161,.04)); border-radius:17px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.profile-save-bar>div { display:grid; gap:4px; }
.profile-save-bar strong { color:#fff; font-size:13px; }
.profile-save-bar span { color:#727a79; font-size:11px; }
.profile-save { width:auto; min-width:170px; }

@media(max-width:760px){
  .profile-page{padding:24px 12px 60px}
  .profile-heading{align-items:flex-start; flex-direction:column}
  .profile-logout{align-self:flex-end; margin-top:-52px}
  .profile-grid{grid-template-columns:1fr}
  .profile-two-col{grid-template-columns:1fr}
  .profile-save-bar{align-items:stretch; flex-direction:column}
  .profile-save{width:100%}
}
