/* Auth shell: coastal brand panel + white card */
.auth-shell{max-width:1100px;margin:2.5rem auto;padding:0 1.5rem;display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:stretch}
.auth-brand{position:relative;overflow:hidden;border-radius:var(--wcp-radius);padding:2.5rem;color:#fff;background:linear-gradient(160deg,#1E9A98 0%,#176A78 45%,#12314B 100%);box-shadow:var(--wcp-shadow);display:flex;flex-direction:column;gap:1.25rem}
.auth-brand::before{content:"";position:absolute;right:-15%;top:-25%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,0) 70%);pointer-events:none}
.auth-brand::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-6px;height:90px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0 60c150-60 300-60 450 0s300 60 450 0 200-40 300-20v80H0z' fill='rgba(255,255,255,.10)'/%3E%3C/svg%3E") center/cover no-repeat;pointer-events:none}
.auth-brand .wcp-pill{background:rgba(255,255,255,.16);color:#fff;align-self:flex-start}
.auth-brand-title{color:#fff;font-size:clamp(2rem,3.5vw,2.75rem);margin:0}
.auth-brand-title em{color:#BFE9E4;font-style:normal}
.auth-brand-copy{color:rgba(255,255,255,.86);font-size:1.05rem;max-width:34ch}
.auth-props{list-style:none;margin:auto 0 0;padding:0;display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1}
.auth-props li{display:flex;gap:.9rem;align-items:flex-start}
.auth-prop-icon{flex:none;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--wcp-teal);display:grid;place-items:center}
.auth-prop-icon svg{width:22px;height:22px}
.auth-props strong{display:block;color:#fff;font-size:.95rem}
.auth-props p{color:rgba(255,255,255,.8);font-size:.875rem;margin:0}
.auth-card{background:#fff;border-radius:var(--wcp-radius);box-shadow:var(--wcp-shadow);padding:2.5rem;display:flex;flex-direction:column;gap:1rem}
.auth-card-title{font-size:2rem;margin:0}
.auth-card-subtitle{color:var(--wcp-muted);margin:0 0 .5rem}
.auth-card-footer{border-top:1px solid var(--wcp-border);padding-top:1rem;margin-top:.5rem;text-align:center;color:var(--wcp-muted);font-size:.925rem}
@media (max-width:900px){
  .auth-shell{grid-template-columns:1fr;margin:1.25rem auto;gap:1.25rem}
  .auth-brand{padding:1.75rem}
  .auth-props{display:none}
  .auth-card{padding:1.75rem}
}

/* Home hero */
.hero{background:linear-gradient(90deg,rgba(243,238,230,.94) 0%,rgba(243,238,230,.74) 38%,rgba(243,238,230,.32) 62%,rgba(243,238,230,.08) 85%),url("/_content/WestCoastPro.UI/images/hero-beach.jpg") center/cover no-repeat;background-color:var(--wcp-sand);border-bottom:1px solid var(--wcp-border)}
.hero-inner{max-width:1200px;margin:0 auto;padding:4rem 1.5rem;display:grid;grid-template-columns:1.2fr .8fr;gap:2.5rem;align-items:center}
.hero-copy{font-size:1.2rem;max-width:42ch}
.hero-actions{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;margin-top:1.5rem}
.hero-card{background:#fff;border-radius:var(--wcp-radius);box-shadow:var(--wcp-shadow);padding:1.75rem}
.hero-card h3{font-family:var(--wcp-font-body);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--wcp-navy);margin:0 0 1rem}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
.service-tile{border:1px solid var(--wcp-border);border-radius:var(--wcp-radius-sm);padding:1rem;text-align:center;font-weight:600;font-size:.9rem;color:var(--wcp-navy);background:var(--wcp-cream)}
.service-tile span{display:block;font-size:1.6rem;margin-bottom:.35rem}
@media (max-width:900px){
  .hero-inner{grid-template-columns:1fr;padding:2.5rem 1rem}
  .hero{background:linear-gradient(180deg,rgba(243,238,230,.92) 0%,rgba(243,238,230,.92) 60%,rgba(243,238,230,.6) 100%),url("/_content/WestCoastPro.UI/images/hero-beach.jpg") center/cover no-repeat;background-color:var(--wcp-sand)}
}

/* MAUI app chrome */
.app-shell{min-height:100vh;display:flex;flex-direction:column}
.app-header{padding:calc(env(safe-area-inset-top) + .75rem) 1rem .75rem;background:#fff;border-bottom:1px solid var(--wcp-border);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.app-body{flex:1;padding:1.25rem 1rem}
.app-body .auth-shell{margin:0;padding:0}
.account-card{background:#fff;border-radius:var(--wcp-radius);box-shadow:var(--wcp-shadow);padding:1.75rem;display:flex;flex-direction:column;gap:1rem;max-width:560px;margin:0 auto}
.account-avatar{width:56px;height:56px;border-radius:50%;background:var(--wcp-teal-soft);color:var(--wcp-teal-dark);display:grid;place-items:center;font-weight:700;font-size:1.4rem;font-family:var(--wcp-font-display)}
