/* Quiet customer surfaces. Brand red remains reserved for primary actions. */
.customer-portal:not(.provider-mode){--bg:#f7f7f9;--card:#ffffff;--surface:#eeeff3;--input:#ffffff;--text:#25262d;--muted:#666b78;--border:#dfe2e9;--shadow:0 5px 20px #25262d07;background:var(--bg);line-height:1.85}
html[data-theme=dark] .customer-portal:not(.provider-mode){--bg:#141519;--card:#1e2026;--surface:#292c34;--input:#191b20;--text:#f1f2f6;--muted:#aeb3c1;--border:#363b47;--shadow:0 5px 20px #00000012;--accent-soft:#381c27;--incoming:#252831;--outgoing:#40212e;--chat-bg:#17191f}
.customer-portal:not(.provider-mode) main{padding-top:12px}.customer-portal:not(.provider-mode) .app-header{padding:10px 0 8px}.customer-portal:not(.provider-mode) .catalog-searchbar{margin-bottom:16px;border-radius:15px;box-shadow:none}.customer-portal:not(.provider-mode) .catalog-searchbar:focus-within{box-shadow:0 0 0 3px var(--accent-soft)}
.customer-portal:not(.provider-mode) .home-intro{padding:20px;margin:0 0 20px;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.customer-portal:not(.provider-mode) .home-intro:after{width:118px;height:118px;inset-inline-end:-50px;top:-50px;border:22px solid var(--accent-soft);opacity:.7}.customer-portal:not(.provider-mode) .home-intro .eyebrow{display:flex;align-items:center;gap:7px;color:var(--accent);font-size:11px;font-weight:600}.customer-portal:not(.provider-mode) .home-intro .eyebrow:before{content:'';width:5px;height:5px;background:currentColor;border-radius:50%;flex:none}.customer-portal:not(.provider-mode) .home-intro h2{font-size:25px;line-height:1.6;font-weight:700;color:var(--text);margin:8px 0}.customer-portal:not(.provider-mode) .home-intro p{font-size:13px;line-height:1.95;color:var(--muted);font-weight:400;margin:0 0 14px;max-width:480px}.customer-portal:not(.provider-mode) .intro-steps{color:var(--muted);font-size:10px;font-weight:500;gap:8px;margin-bottom:15px}.customer-portal:not(.provider-mode) .intro-steps span{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:3px 7px}.customer-portal:not(.provider-mode) .home-intro a{background:var(--action);color:var(--on-accent);border:0;border-radius:11px;padding:9px 14px;min-height:44px;font-size:12px;box-shadow:none}
.customer-portal:not(.provider-mode) .section-heading{margin:22px 0 12px}.customer-portal:not(.provider-mode) .section-heading h2{font-size:19px;line-height:1.7}.customer-portal:not(.provider-mode) #resultcount{font-size:11px;border:0;background:transparent;padding:0;color:var(--muted)}.customer-portal:not(.provider-mode) .category-strip{margin-bottom:22px;gap:8px}.customer-portal:not(.provider-mode) #screenmenu button{border-color:var(--border);background:var(--card);font-weight:500}.customer-portal:not(.provider-mode) #screenmenu button[aria-current=page]{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.customer-portal:not(.provider-mode) #screenmenu button>.app-icon{stroke-width:1.5;width:20px;height:20px}.customer-portal:not(.provider-mode) .catalog-section{margin-bottom:26px}.customer-portal:not(.provider-mode) .catalog-section-header{margin-bottom:10px}.customer-portal:not(.provider-mode) .catalog-section-header h3{font-size:17px;font-weight:700}.customer-portal:not(.provider-mode) .catalog-view-all{background:transparent;border:0;padding:8px 4px;font-weight:600}.customer-portal:not(.provider-mode) .catalog-rail{gap:12px;padding:3px 1px 12px}.customer-portal:not(.provider-mode) .provider-card{position:relative;padding:7px;border-radius:18px;border-color:var(--border);background:var(--card);box-shadow:var(--shadow)}.customer-portal:not(.provider-mode) .provider-card .provider-cover{height:150px;border-radius:12px;background:var(--surface)}.customer-portal:not(.provider-mode) .provider-card .provider-cover img{height:100%;width:100%;max-height:none;object-fit:cover;border-radius:inherit}.customer-portal:not(.provider-mode) .provider-cover-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;font-size:11px;font-weight:500;background:var(--surface);color:var(--muted)}.customer-portal:not(.provider-mode) .provider-cover-placeholder svg{width:34px;height:34px;color:var(--accent);opacity:.7}.customer-portal:not(.provider-mode) .provider-cover-placeholder span{font-size:11px}.customer-portal:not(.provider-mode) .provider-card h3{margin:6px 5px 2px}.customer-portal:not(.provider-mode) .provider-title{display:block;width:100%;min-height:44px;font-size:15px;line-height:1.7;font-weight:600;text-align:right}.customer-portal:not(.provider-mode) .provider-card .provider-city{font-size:11px;line-height:1.7;margin:0 5px 8px}.customer-portal:not(.provider-mode) .provider-card>.price-note{font-size:12px;font-weight:600;padding:8px 5px 4px;line-height:1.8}.customer-portal:not(.provider-mode) .provider-card-rating{font-size:11px!important;line-height:1.7!important;margin:5px!important;color:var(--muted)}.customer-portal:not(.provider-mode) .provider-save{position:absolute;top:15px;inset-inline-end:15px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffff66;border-radius:50%;background:#ffffffed;color:#373b45;box-shadow:0 2px 9px #00000014;font:400 27px/1 Arial,sans-serif;z-index:2}.customer-portal:not(.provider-mode) .provider-save[aria-pressed=true]{color:#cc123b;background:#fff1f4}.customer-portal:not(.provider-mode) .provider-save:disabled{cursor:progress;opacity:.6}.customer-portal:not(.provider-mode) .provider-cover .verification-badge{padding:3px 7px;border-radius:7px;font-size:9px}.customer-portal:not(.provider-mode) .verification-badge.unverified{box-shadow:none}
.customer-portal:not(.provider-mode) .occasion-resume{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-inline-start:3px solid var(--accent);border-radius:14px;padding:13px 14px;margin:0 0 22px;background:var(--card)}.occasion-resume-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.occasion-resume-copy strong{font-size:14px;line-height:1.7}.resume-eyebrow{font-size:10px;color:var(--accent)}.occasion-resume-copy>.muted{font-size:11px}.customer-portal:not(.provider-mode) .occasion-resume button{font-size:11px;flex-shrink:0;padding:8px 10px;border-radius:10px;background:var(--bg)}
.customer-portal:not(.provider-mode) .catalog-skeletons{display:flex;gap:12px;overflow:hidden;margin:14px 0 20px}.catalog-skeleton{flex:0 0 224px;background:var(--card);border:1px solid var(--border);padding:8px;border-radius:18px}.catalog-skeleton span{display:block;background:var(--surface);border-radius:8px}.skeleton-image{height:150px;margin-bottom:14px}.skeleton-line{height:14px;margin:10px 5px}.skeleton-line.short{width:48%;height:10px}.catalog-empty{grid-column:1/-1;width:100%}.customer-portal:not(.provider-mode) .cw-empty{border-style:solid;background:var(--card);padding:28px 20px}.customer-portal:not(.provider-mode) .cw-empty p{font-size:13px;line-height:1.9;max-width:340px;margin-inline:auto}.customer-portal:not(.provider-mode) .cw-empty strong{font-size:17px}
.customer-portal:not(.provider-mode) #notice:not(:empty){padding:12px 14px;margin:0 0 16px;border-radius:12px;background:var(--accent-soft);color:var(--text);border:1px solid var(--border);font-size:12px}.customer-portal:not(.provider-mode) #notificationtoast{top:auto;bottom:calc(96px + env(safe-area-inset-bottom,0px));left:16px;right:16px;max-width:420px;margin:0 auto;padding:12px 16px;background:var(--card);color:var(--text);border:1px solid var(--border);border-inline-start:3px solid var(--accent);border-radius:13px;box-shadow:0 5px 24px #00000020;font-size:12px;font-weight:500}.customer-portal.native:not(.provider-mode) #notificationtoast{bottom:18px}.customer-portal:not(.provider-mode) .customer-nav{border-radius:19px 19px 0 0;padding-top:8px;box-shadow:0 -4px 18px #00000004}.customer-portal:not(.provider-mode) .customer-nav a{border-radius:12px;font-weight:600;font-size:11px}.customer-portal:not(.provider-mode) .customer-nav a[aria-current=page]{background:var(--accent-soft)}.customer-portal:not(.provider-mode) .customer-nav .app-icon{width:23px;height:23px}.customer-portal:not(.provider-mode) .account-menu a{padding:14px 16px;font-size:13px}.customer-portal:not(.provider-mode) .account-menu{border-radius:16px}.customer-portal:not(.provider-mode) #memberarea{border-radius:17px;box-shadow:none}.customer-portal:not(.provider-mode) .theme-settings{padding:15px;border-radius:14px}.customer-portal:not(.provider-mode) .cw-stat{box-shadow:none}.customer-portal:not(.provider-mode) .cw-request-card,.customer-portal:not(.provider-mode) .cw-event-summary{box-shadow:var(--shadow)}
@media(hover:hover) and (pointer:fine){.customer-portal:not(.provider-mode) .provider-card:hover{border-color:var(--accent)}.customer-portal:not(.provider-mode) .provider-save:hover{background:#fff1f4;color:#cc123b}}
@media(prefers-reduced-motion:no-preference){.customer-portal:not(.provider-mode) button,.customer-portal:not(.provider-mode) a,.customer-portal:not(.provider-mode) input,.customer-portal:not(.provider-mode) .provider-card{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}.customer-portal:not(.provider-mode) .provider-cover img{animation:customer-image-in .2s ease-out}.customer-portal:not(.provider-mode) .catalog-skeleton span{animation:customer-loading 1.4s ease-in-out infinite}@keyframes customer-image-in{from{opacity:.35}to{opacity:1}}@keyframes customer-loading{50%{opacity:.5}}}
@media(prefers-reduced-motion:reduce){.customer-portal:not(.provider-mode) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:800px){.customer-portal:not(.provider-mode) .home-intro{padding:24px 28px}.customer-portal:not(.provider-mode) .home-intro h2{font-size:29px}.customer-portal:not(.provider-mode) .home-intro p{font-size:14px}.customer-portal:not(.provider-mode) .provider-card .provider-cover{height:156px}}
@media(max-width:350px){.customer-portal:not(.provider-mode) .home-intro{padding:17px}.customer-portal:not(.provider-mode) .home-intro h2{font-size:22px}.customer-portal:not(.provider-mode) .occasion-resume{flex-wrap:wrap}.customer-portal:not(.provider-mode) .intro-steps{gap:5px}.customer-portal:not(.provider-mode) .intro-steps span{padding:3px 5px}}

.customer-portal:not(.provider-mode) .has-occasion .home-intro{display:none}.customer-portal:not(.provider-mode) .has-occasion .occasion-resume{margin-top:0}.customer-portal:not(.provider-mode) .home-intro{padding-block:18px}.customer-portal:not(.provider-mode) .home-intro p{margin-bottom:12px}html[data-theme=dark] .customer-portal:not(.provider-mode) .provider-save{background:#1b1e26ed;color:#f1f2f6;border-color:#ffffff40}html[data-theme=dark] .customer-portal:not(.provider-mode) .provider-save[aria-pressed=true]{color:#ff8299;background:#3b212c}
.catalog-feature-filters{margin:14px 0;padding:12px 14px;border:1px solid var(--border);border-radius:14px;display:flex;flex-wrap:wrap;gap:8px 18px}.catalog-feature-filters[hidden]{display:none}.catalog-feature-filters legend{font-weight:700;font-size:13px}.catalog-feature-filters label{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;min-height:44px}.catalog-feature-filters input[type=checkbox]{width:18px;height:18px;padding:0;accent-color:var(--action)}

.provider-image-caption{font-size:11px;line-height:1.7;margin:4px 8px 8px}.provider-hero>.provider-image-caption{padding:8px 12px;margin:0}
