
:root{--ink:#222a34;--muted:#66717d;--brand:#303a47;--pale:#e8edf1;--line:#d7dee5;--bg:#edf1f4}
*{box-sizing:border-box}
body{
 margin:0;color:var(--ink);font:16px/1.5 Arial,sans-serif;
 background:radial-gradient(circle at 12% 8%,#d2d9e1 0,transparent 32%),
 radial-gradient(circle at 90% 35%,#dfe4e9 0,transparent 30%),
 linear-gradient(150deg,#edf1f4,#f9fafb 52%,#e8edf1);
 background-attachment:fixed
}
button,input,select,textarea{font:inherit}
button{border:0;border-radius:10px;padding:11px 15px;background:var(--brand);color:#fff;font-weight:700;cursor:pointer}
button:hover{background:#171e28}
button:disabled{opacity:.6;cursor:not-allowed}
input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
label{display:block;margin:12px 0 5px;font-weight:700}
h1{font-size:clamp(30px,5vw,45px);line-height:1.12;margin:0 0 10px}
h2{margin:30px 0 12px}h3{margin:10px 0}
p{color:var(--muted)}
header{
 background:#252d38;border-bottom:1px solid #485360;
 padding:15px max(20px,calc((100vw - 1160px)/2));
 display:flex;justify-content:space-between;align-items:center;gap:14px;
 box-shadow:0 5px 25px #17202b22
}
.brand{display:flex;align-items:center;gap:9px;font-size:26px;font-weight:900;color:#fff;cursor:pointer}.brand-mark{width:35px;height:35px;border:3px solid #a6e4d9;border-radius:12px;display:grid;place-items:center;color:#a6e4d9;font-size:20px;line-height:1;transform:rotate(-8deg)}
nav{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
nav button{background:#424d5b;color:#fff}
nav #modeButton{background:#e1e6eb;color:#202630}
body.provider-mode{background:radial-gradient(circle at 15% 10%,#d6eae7 0,transparent 32%),linear-gradient(150deg,#edf5f2,#fafcfa 56%,#e1eeea)}
body.provider-mode header{background:#123b42;border-bottom-color:#39727a}
body.provider-mode nav button{background:#245c64;color:#fff}
body.provider-mode nav button.current{background:#d5f0e9;color:#173f43}
body.provider-mode #switchClientNav{background:#e3f0ec;color:#163e43}
body.provider-mode .brand-mark{border-color:#a5ece0;color:#a5ece0}
body.provider-mode #proPage>h1{color:#164b53}
body.provider-mode #proPage>.notice{background:#e2f1ed;color:#24565b}
body.provider-mode #proPage>.admin-tabs{display:none}
body.provider-mode .requests-shortcut{background:#175862}
.contact{color:#e6ebef;text-decoration:none;font-weight:700;padding:8px}
main{max-width:1160px;margin:auto;padding:32px 20px 70px}
.welcome-page{padding:12px 0}.welcome-hero{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:390px;overflow:hidden;padding:clamp(28px,5vw,55px);border-radius:22px;background:radial-gradient(circle at 80% 40%,#4e7693 0,#304b69 43%,#213147 100%);color:#fff}.welcome-kicker{font-size:12px;letter-spacing:.14em;font-weight:800;color:#a9e4dc}.welcome-hero h1{max-width:680px;margin:18px 0;font-size:clamp(32px,4vw,52px)}.welcome-hero p{max-width:540px;color:#e6eef5;font-size:18px}.welcome-art{display:block;width:110%;max-width:540px;margin:-28px -20px -28px auto;filter:drop-shadow(0 20px 20px #15243a36)}.welcome-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.welcome-actions button{padding:13px 20px}.welcome-about{padding:26px 2px 6px;max-width:880px}.welcome-about .welcome-kicker{color:#497d7a}.welcome-about h2{margin:7px 0}.welcome-about p{font-size:17px;margin:0}.welcome-info{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:18px 0}.welcome-info>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.welcome-info strong{font-size:18px}.welcome-info p{margin-bottom:0}
.panel,.card{
 background:#ffffffed;border:1px solid var(--line);
 border-radius:16px;padding:20px;box-shadow:0 12px 28px #27313d0b
}
.notice{background:#f5eee1;padding:13px;border-radius:10px;color:#67543c;margin-bottom:20px}
.commission-note{background:#e4f3ee;border-left:4px solid #187065;padding:13px 16px;border-radius:9px;color:#174b46}
#providerProfileSection>.profile-preview{max-width:none;border-color:#78b5ae;box-shadow:0 10px 26px #105b5a20}
#providerProfileSection>.profile-preview h3{color:#16575d}
.person-profile{padding:6px 0 14px}.person-profile .profile-header .avatar{width:112px;height:112px}.person-profile h2{margin:0 0 3px}
.provider-service{margin-top:22px;padding:20px;border:1px solid #b8d7d0;border-radius:12px;background:#f3faf7}
.provider-service h3{margin:0 0 16px}.provider-service h4{font-size:18px;margin:6px 0}
.provider-service>.profile-header{margin-bottom:12px}
#editProviderPerson{margin:8px 0}
.offer [data-view-provider]{margin:7px 0;background:#e0f0ee;color:#164b50}
.price-breakdown{background:#f0f8f6;border:1px solid #b0d6cf;border-radius:12px;padding:15px;margin:12px 0;color:#173f3b}
.price-breakdown h3,.price-breakdown h4{margin:0 0 7px;color:#174c48}
.price-breakdown h4{font-size:15px}
.price-breakdown>div:not(.price-range),.price-range>div>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #d3e5e1}
.price-breakdown .net{border-bottom:0!important;color:#125c50;font-size:17px}
.price-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.price-range>div{background:#fff;padding:12px;border-radius:9px}
@media(max-width:650px){.price-range{grid-template-columns:1fr}}
.search{display:grid;grid-template-columns:2fr 1.2fr auto;gap:10px}
.filters{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:8px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.categories,.actions{display:flex;gap:8px;flex-wrap:wrap}
.categories button,.light{background:var(--pale);color:var(--brand)}
.categories button.active{background:var(--brand);color:white}
.profession-picker{max-width:650px}.profession-picker details{margin:4px 0}.profession-picker summary{color:var(--brand);font-size:14px;padding:10px 2px}.profession-options{display:flex;flex-wrap:wrap;gap:8px;margin:5px 0 12px;max-height:180px;overflow:auto}.profession-options button{text-align:left;background:var(--pale);color:var(--ink);font-weight:600;padding:8px 12px;border-radius:20px}.profession-options button:hover{background:#d2dae2}.profession-picker .row{margin:8px 0 20px}
.offer{padding:12px;margin:10px 0;border:1px solid var(--line);border-radius:10px}.location-panel{margin-top:12px;padding:12px;background:var(--bg);border-radius:10px}.location-panel button{margin-right:8px}.location-panel a{color:#193e72}
.adjustments{padding:14px;margin:14px 0;border:1px solid var(--line);border-radius:12px;background:#f8fafb}.adjustments h4{margin:0 0 6px}.rating-stars{color:#aa6900;letter-spacing:1px}.rating-empty{color:var(--muted)}
.card button{width:100%}
.avatar{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--pale);font-size:28px}
.avatar[src]{object-fit:cover;border:2px solid var(--line)}
.profile-preview{margin:18px 0;max-width:740px}.profile-header{display:flex;gap:18px;align-items:center}.profile-header .avatar{width:86px;height:86px}.profile-header h2{margin:0}.profile-preview .price{font-size:20px}
.account-identity{margin:18px 0 22px}.account-identity strong{font-size:20px}.account-identity p{margin:4px 0}
.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.admin-tabs button{background:var(--pale);color:var(--ink)}.admin-tabs button.active{background:var(--brand);color:#fff}.admin-section{margin-top:12px}
.admin-tabs button[hidden]{display:none}.staff-option{display:inline-flex;align-items:center;gap:7px;margin:8px 12px 8px 0}.staff-option input{width:auto}.user-search-result{display:flex;flex-direction:column;align-items:flex-start;width:100%;margin:8px 0;text-align:left}.user-search-result small{font-weight:400}
.requests-shortcut{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:12px 0 20px;text-align:left;background:#203c5a;padding:17px 20px}.requests-shortcut .badge{background:#f3c765}.requests-shortcut .small{color:#eaf3fa;font-weight:400}
.badge{display:inline-flex;min-width:23px;height:23px;justify-content:center;align-items:center;padding:0 5px;border-radius:20px;background:#f3c765;color:#222a34;font-size:13px;font-weight:900}
.live-alert{position:fixed;right:18px;bottom:18px;max-width:min(400px,calc(100vw - 36px));background:#17395d;box-shadow:0 12px 30px #17202b66;text-align:left;z-index:15}
.link-button{background:none;color:#1a477e;text-decoration:underline;padding:12px 0}.link-button:hover{color:#122b4b;background:none}
summary{cursor:pointer;font-weight:700;padding:12px 0}details{margin:15px 0}
.price{color:var(--brand);font-weight:800}
.small{font-size:14px}
.hidden{display:none!important}
[hidden]{display:none!important}
.account-summary{margin:18px 0 26px}.account-summary .profile-header{margin-bottom:12px}.account-summary p{margin:4px 0 8px}
.booking{margin-bottom:14px}
.accepted-party{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:#e0f1ed;border-left:4px solid #247c87;border-radius:8px;padding:10px 14px;margin:12px 0;color:#174b51}
.accepted-party span{font-size:13px;font-weight:700}
.accepted-party strong{font-size:17px}
.extra-professions{border:1px solid var(--line);border-radius:10px;padding:14px}
.extra-professions legend{font-weight:700;padding:0 6px}
#extraCategoryChoices{display:flex;flex-wrap:wrap;gap:8px}
#extraCategoryChoices label{display:flex;align-items:center;gap:6px;padding:7px 10px;background:#edf3f4;border-radius:8px;font-size:14px}
#extraCategoryChoices input{width:auto;margin:0}
.category-add{display:flex;gap:8px;align-items:center}
.category-add input{flex:1;min-width:0}
.category-suggestions{display:block;max-height:215px;overflow:auto;margin-top:4px;border-radius:9px;background:#fff;box-shadow:0 8px 20px #173c5326}
.category-suggestions:empty{display:none}
.category-suggestions button{display:block;width:100%;text-align:left;background:#fff;color:#173c53;border:0;border-bottom:1px solid #e1e8eb;border-radius:0;padding:9px 12px}
.category-suggestions button:hover,.category-suggestions button:focus{background:#e9f3f4}
.chosen-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.chosen-category{display:inline-flex;align-items:center;gap:8px;border-radius:20px;padding:5px 7px 5px 12px;background:#e0f1ed;color:#174b51;font-weight:700}
.chosen-category button{border:0;border-radius:50%;padding:2px 7px;background:#215967;color:white}
.request-item{border-left:5px solid #247c87;padding:0;overflow:hidden}
.request-heading{padding:18px 20px 14px;background:#e9f3f4}
.request-kicker{display:block;color:#28616a;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.request-heading h3{color:#173c53;font-size:clamp(21px,2.8vw,27px);line-height:1.25;margin:5px 0 12px;overflow-wrap:anywhere}
.request-state{display:inline-block;padding:5px 11px;border-radius:20px;background:#e6edf2;color:#254b65;font-size:13px;font-weight:800}
.request-state-abierta{background:#fff0c7;color:#654400}
.request-state-cotizacion_aceptada,.request-state-en_camino{background:#dcefe7;color:#215c43}
.request-meta{display:flex;flex-wrap:wrap;gap:8px;padding:15px 20px}
.request-meta span{background:#edf2f5;color:#263f52;border-radius:8px;padding:6px 10px;font-weight:700;font-size:14px}
.request-client{display:flex;align-items:center;gap:10px;padding:0 20px 15px;color:#42546a;font-size:14px}
.request-client .avatar{width:38px;height:38px;font-size:18px}
.request-actions{border-top:1px solid var(--line);padding:16px 20px 18px}
.request-actions>p:empty{display:none}
.message-button{background:#215967;color:#fff;margin:8px 0}
.message-button:hover{background:#174550}
.thread-message{border:1px solid var(--line);border-radius:10px;padding:9px 12px;margin:8px 0;background:#fff}
.thread-message.mine{background:#e6f2f0;border-color:#b8d6d1}
.thread-message span{display:block;font-size:12px;color:#526274}
.thread-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0;color:var(--ink)}
#refreshThread{margin-top:10px}
.chat-warning{background:#fff3d8;border-left:4px solid #b77712;color:#4f3b1b;padding:12px;border-radius:8px}
.work-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:10px;margin:12px 0}
.work-gallery figure{margin:0}
.work-gallery img{width:100%;height:140px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.work-gallery button{width:100%;font-size:13px;margin-top:4px;padding:7px}
.work-gallery .work-photo-zoom{display:block;margin:0;padding:0;border:0;background:transparent;cursor:zoom-in}
.work-gallery .work-photo-zoom:focus-visible{outline:3px solid #14758a;outline-offset:3px}
.photo-lightbox{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:55px 20px 20px;background:rgba(5,14,29,.93);cursor:zoom-out}
.photo-lightbox img{display:block;max-width:100%;max-height:calc(100vh - 80px);object-fit:contain;border-radius:8px;cursor:default}
.photo-lightbox-close{position:absolute;top:12px;right:16px;width:44px;height:44px;border-radius:50%;background:#fff;color:#142438;font-size:22px;cursor:pointer}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.status{display:inline-block;background:var(--pale);color:var(--brand);border-radius:30px;padding:5px 10px;font-size:14px;font-weight:700}
.overlay{position:fixed;inset:0;background:#101720bd;display:grid;place-items:center;padding:15px;overflow:auto;z-index:20}
.modal{width:min(100%,560px);max-height:90vh;overflow:auto;background:#fff;border-radius:17px;padding:24px}
.close{float:right;background:var(--pale);color:var(--brand)}
.chatbox{min-height:100px;max-height:240px;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px}
.chatbox p{margin:7px 0;color:var(--ink)}
@media(max-width:800px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.welcome-hero{grid-template-columns:1fr}.welcome-art{max-width:380px;margin:-30px auto -70px}}
@media(max-width:600px){header{display:block}nav{margin-top:10px}.grid,.search,.filters,.welcome-info{grid-template-columns:1fr}nav button{padding:9px}.welcome-hero{min-height:0}.welcome-art{max-width:300px;margin:-10px auto -48px}}

main{min-height:80vh}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.formgrid label{margin:0}.formgrid label input{margin-top:6px}.stack>*+*{margin-top:14px}.feedback{padding:12px;border-radius:9px;background:#e8edf1}.feedback.error{background:#f8e5e5;color:#842d2d}.card .actions button{width:auto}@media(max-width:600px){.formgrid{grid-template-columns:1fr}}
.market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;margin:20px 0}
.market-card{min-width:0}.market-card h3{margin:12px 0 5px}.market-card>strong{font-size:1.35rem}.market-description{white-space:pre-wrap;overflow-wrap:anywhere}.market-photos{display:flex;gap:7px;overflow-x:auto}.market-zoom{padding:0;flex:none;border:0;background:none;cursor:zoom-in}.market-zoom img{width:120px;height:105px;object-fit:cover;border-radius:8px}.market-seller{border-top:1px solid var(--line);padding-top:12px;align-items:center}.market-seller .avatar{width:44px;height:44px}.market-seller p{margin:3px 0;color:#667789;font-size:13px}
.market-back{margin-bottom:16px}.sale-breakdown{display:grid;gap:8px;padding:14px;background:#f3f5f7;border-radius:12px}.sale-breakdown h3{margin:0 0 4px}.sale-breakdown>div{display:flex;justify-content:space-between;gap:16px}.sale-breakdown .net{border-top:1px solid var(--line);padding-top:9px;font-weight:700}.sale-breakdown .net strong{color:#155b69}
.app-download{margin:20px 0}.app-download-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.app-download-options>div{padding:15px;border:1px solid var(--line);border-radius:12px}.app-download-options strong{display:block;margin-bottom:12px}.app-download-options button{width:100%}@media(max-width:600px){.app-download-options{grid-template-columns:1fr}}

.download-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:#dcedeb;font-size:30px;margin-bottom:12px}.app-download-options>div:nth-child(2) .download-icon{background:#e8edf5}

.welcome-top{display:grid;grid-template-columns:minmax(0,3fr) minmax(235px,1fr);gap:20px;align-items:stretch}.welcome-top .welcome-hero{min-width:0}.welcome-top .app-download{margin:0;background:#f3f5f7;color:#25394a}.welcome-top .app-download-options{grid-template-columns:1fr}.welcome-top .app-download-options>div{background:#fff}.welcome-top .app-download h2{font-size:1.2rem;margin-top:0}@media(max-width:1050px){.welcome-top{grid-template-columns:1fr}.welcome-top .app-download-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.welcome-top .app-download-options{grid-template-columns:1fr}}
.mobile-menu-button,.mobile-nav{display:none}
@media(max-width:600px){
 header{position:sticky;top:0;z-index:18;display:flex;justify-content:space-between;align-items:center;padding:10px max(16px,env(safe-area-inset-left)) 10px max(16px,env(safe-area-inset-right));min-height:65px}
 .brand{font-size:23px}.brand-mark{width:33px;height:33px}
 .mobile-menu-button{display:block;background:#425364;font-size:21px;line-height:1;padding:9px 13px}
 header #desktopNav{display:none;position:absolute;top:100%;left:0;right:0;z-index:19;margin:0;padding:12px 16px 20px;background:#252d38;max-height:70dvh;overflow-y:auto;box-shadow:0 12px 20px #17202b33}
 body.mobile-menu-open header #desktopNav{display:flex}
 header #desktopNav button,header #desktopNav .contact{min-height:42px}
 body.provider-mode header #desktopNav{background:#123b42}
 main{padding:18px 14px calc(98px + env(safe-area-inset-bottom))}
 h1{font-size:clamp(29px,8vw,37px)}.panel,.card{padding:16px}.welcome-hero{border-radius:18px;padding:23px}.welcome-hero h1{font-size:34px}
 .mobile-nav:not(.hidden){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:17;margin:0;padding:7px max(5px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(5px,env(safe-area-inset-left));background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 22px #18243421}
 .mobile-nav button{min-width:0;padding:4px 1px;border-radius:9px;background:transparent;color:#465669;font-size:11px;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .mobile-nav button span{display:block;margin:0 auto 2px;font-size:23px;font-weight:400;line-height:1.2}
 .mobile-nav button[aria-current="page"]{background:#e1f1ee;color:#145d62}
 body.provider-mode .mobile-nav button[aria-current="page"]{background:#daf1eb;color:#155962}
 .market-grid{grid-template-columns:1fr}.market-photos img{width:110px;height:100px}
}

/* v43 Color and contrast */
:root{--ink:#172b42;--muted:#52647a;--brand:#2459a5;--pale:#eaf1fa;--line:#d5e1ee;--bg:#f0f5fa}
button:hover{background:#194681}
button:focus-visible,a:focus-visible{outline:3px solid #ca870f;outline-offset:3px}
.panel{box-shadow:0 5px 18px #193b6310}
.rating-stars{color:#a66a00;font-size:1.15em;font-weight:800;letter-spacing:2px}
.rating-empty{color:#756b59}
.sales-rating{color:#8a5a00;font-weight:700}
.purchase-card{border-left:4px solid #3678c1;margin:14px 0}
.purchase-card[data-purchase-state="recibida_prueba"]{border-left-color:#19835b}
.purchase-card[data-purchase-state="en_disputa"]{border-left-color:#b45309}
.purchase-status{display:inline-block;padding:6px 12px;border-radius:30px;background:#e5efff;color:#204c91;font-weight:700}
.purchase-status[data-state="disponible"],.purchase-status[data-state="recibida_prueba"]{background:#def4e9;color:#126345}
.purchase-status[data-state="solicitada"],.purchase-status[data-state="en_disputa"]{background:#fff0ce;color:#8a4e08}
.purchase-status[data-state="rechazada"]{background:#fde5e5;color:#9b2929}
.purchase-status[data-state="cancelada"]{background:#e8edf3;color:#46556a}
.purchase-status[data-state="reembolsada_prueba"]{background:#eee6fa;color:#6a378f}
[data-order-action="aceptar"],[data-order-action="recibido"],#continuePurchase,[data-buy-item]{background:#17734f;color:#fff}
[data-order-action="aceptar"]:hover,[data-order-action="recibido"]:hover,#continuePurchase:hover,[data-buy-item]:hover{background:#105a3d}
[data-order-action="rate"]{background:#ffe7ab;color:#674500}
[data-order-action="rate"]:hover{background:#f8d37b}
[data-order-action="problem"]{background:#fff0db;color:#8a450b}
[data-order-action="problem"]:hover{background:#ffe0b0}
[data-order-action="rechazar"],[data-order-action="cancelar"]{background:#fce6e6;color:#9c3030}
[data-order-action="chat"]{background:#236b87;color:#fff}
.sale-breakdown{background:#edf7f3;border:1px solid #d1e9df}
.sale-breakdown .net{color:#125c40}.sale-breakdown .net strong{color:#125c40}
/* v44: coherent roles and photographic catalogs */
:root{--brand:#1469da;--pale:#edf5ff;--bg:#f2f7fd}
body.provider-mode{--brand:#7041df;--pale:#f1ecff;--bg:#f7f4ff}
body.seller-mode{--brand:#008d96;--pale:#e8f8f6;--bg:#effaf8}
header,body.provider-mode header{background:linear-gradient(110deg,var(--brand),color-mix(in srgb,var(--brand),#172b42 25%))}
header nav button{background:#ffffff20;color:white}header nav button:hover{background:#ffffff35}
body.provider-mode header #desktopNav,body.seller-mode header #desktopNav{background:var(--brand)}
.panel,.card{border-radius:20px;background:#fff;box-shadow:0 6px 22px #2742690b}
#clientProfileCard,#profilePreview{overflow:hidden}
.role-banner{background:var(--brand);color:white;font-size:1.2rem;font-weight:800;padding:20px;border-radius:14px;margin-bottom:24px}
#clientProfileCard .role-banner{background:#1469da}
.person-profile{padding:20px;background:#f3efff;border-radius:16px;margin-bottom:16px}
#clientProfileCard h3,.provider-service h3,.seller-store h3,#mySales>h2{color:var(--brand)}
.status[data-verified="true"]{background:#ddf7e7;color:#126c32}
.rating-stars{color:#b77900}.rating-empty{color:#8b7550}
.market-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:22px;align-items:start}
.product-tile{padding:0;overflow:hidden;border:1px solid #e1eaf0;transition:box-shadow .2s,transform .2s}
.product-tile:hover{transform:translateY(-3px);box-shadow:0 10px 28px #2742691c}
.product-cover{display:block;padding:0;border-radius:0;width:100%;background:#edf3f6;aspect-ratio:4/3;overflow:hidden}
.product-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.product-cover:hover img{transform:scale(1.035)}
.product-body{padding:18px;display:flex;flex-direction:column;gap:9px}
.product-body p{margin:0}.product-body .sale-breakdown{font-size:.85rem}
.product-title,.seller-link{background:transparent;color:var(--ink);text-align:left;padding:0;white-space:normal;overflow-wrap:anywhere}
.product-title{font-size:1.08rem;font-weight:800}.product-title:hover,.seller-link:hover{background:transparent;color:var(--brand)}
.seller-link{color:var(--brand);font-size:.9rem}.product-price{font-size:1.25rem;color:var(--ink)}
.stock-label{font-size:.85rem;color:#166847}.buy-button{width:100%;background:#008d96;margin-top:6px}.buy-button:hover{background:#006f77}
.product-placeholder{display:grid;place-items:center;height:100%;min-height:100px;color:#66788c;background:#edf3f6}
.store-modal{width:min(1100px,100%)}.seller-store{--brand:#008d96;--pale:#e8f8f6}.selected-product{background:#f0faf8;padding:20px;border-radius:16px;margin-top:20px}
.profile-purchases{margin-top:24px;border-top:1px solid #e1eaf0;padding-top:12px}
.mini-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}
.mini-product{display:flex;flex-direction:column;gap:7px;background:white;color:var(--ink);text-align:left;border:1px solid #e1eaf0;padding:10px;border-radius:14px;overflow:hidden}
.mini-product:hover{background:#edf5ff}.mini-product img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
@media(max-width:600px){.market-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-body{padding:12px}.product-title{font-size:.95rem}.product-price{font-size:1.1rem}.product-body .actions{flex-wrap:wrap}.mini-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-modal{padding:16px}}
@media(max-width:360px){.market-grid{grid-template-columns:1fr}}
/* v45: profile dashboard matching the approved reference */
.role-dashboard{--role:#126cf0;--role-dark:#064291;--role-soft:#edf5ff;border-radius:23px;background:linear-gradient(160deg,#ffffff,#f5faff);box-shadow:0 10px 40px #376baf13;overflow:hidden;max-width:760px;margin:0 auto 28px}
.role-seller{--role:#009aa4;--role-dark:#00636b;--role-soft:#e9faf8;background:linear-gradient(160deg,#fff,#f3fcfa)}
.role-provider{--role:#7444ec;--role-dark:#382078;--role-soft:#f1ecff;background:linear-gradient(160deg,#fff,#f8f5ff)}
.dashboard-top{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(100deg,var(--role),color-mix(in srgb,var(--role),white 10%));padding:18px 24px;color:white}
.dashboard-top>strong{font-size:1.5rem;letter-spacing:-.5px}.dashboard-top button{padding:5px 9px;font-size:1.5rem;background:transparent;color:white}
.dashboard-content{padding:26px}.dashboard-person{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:15px;align-items:center;margin:0 0 26px}
.dashboard-person .avatar{width:70px;height:70px;background:var(--role-soft);border:1px solid color-mix(in srgb,var(--role),white 75%);object-fit:cover}
.dashboard-person-name>strong{font-size:1.07rem;color:#17233f}.dashboard-person-name p{font-size:.88rem;margin:5px 0;color:#63769a}.dashboard-person-name .status{font-size:.74rem;padding:5px 9px;font-weight:500}
.dashboard-rating{max-width:190px;font-size:.72rem;color:#677797;text-align:right;line-height:1.55}.dashboard-rating .rating-stars{display:block;font-size:1.7rem;letter-spacing:1px;color:#e5a410;white-space:nowrap}.dashboard-rating .rating-empty{font-size:.78rem}.dashboard-rating strong{font-size:.85rem}
.dashboard-title{display:flex;align-items:center;gap:16px;margin-bottom:22px}.dashboard-icon{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;border-radius:50%;background:var(--role-soft);color:var(--role);font-size:30px}
.dashboard-title h2{font-size:1.45rem;letter-spacing:-.6px;line-height:1.2;color:var(--role-dark);margin:0 0 6px}.dashboard-title p{color:#657698;margin:0;font-size:.9rem;line-height:1.5}
.dashboard-section{padding:18px;border-radius:20px;background:white;border:1px solid #f0f4f9;box-shadow:0 4px 17px #3b5e8b08;margin:14px 0}
.dashboard-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.dashboard-section-heading h3{display:flex;gap:9px;align-items:center;margin:0!important;color:var(--role)!important;font-size:1.1rem;letter-spacing:-.3px}.dashboard-section-heading h3 span{font-size:1.4rem}
.dashboard-link{padding:0;background:transparent;color:var(--role);font-size:.8rem;font-weight:500;white-space:nowrap}.dashboard-link:hover{background:transparent;color:var(--role-dark);text-decoration:underline}
.dashboard-thumbnails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-thumb{padding:0;background:transparent;color:#14243c;display:flex;flex-direction:column;text-align:left;gap:5px;min-width:0;line-height:1.25;border-radius:8px;font-size:.86rem}
.dashboard-thumb:hover{background:var(--role-soft)}.dashboard-thumb img{width:100%;aspect-ratio:1.4;object-fit:cover;border-radius:8px}.dashboard-thumb strong{font-size:.85rem;font-weight:500;overflow-wrap:anywhere}.dashboard-thumb>span:last-child{font-size:.76rem;color:#7a8ca9}.dashboard-no-photo{display:grid;place-items:center;aspect-ratio:1.4;width:100%;background:var(--role-soft);color:#617892;border-radius:8px;font-size:.8rem}
.dashboard-row{width:100%;display:flex;align-items:center;gap:12px;background:white;border-radius:0;color:#19314a;padding:12px 0;border-bottom:1px solid #edf2f8;text-align:left;font-size:.85rem;font-weight:400}
.dashboard-row:last-child{border-bottom:none;padding-bottom:0}.dashboard-row:hover{background:var(--role-soft)}.dashboard-row img,.dashboard-row-symbol{width:49px;height:49px;object-fit:cover;border-radius:8px;flex-shrink:0}.dashboard-row-symbol{display:grid;place-items:center;background:var(--role-soft);color:var(--role);font-size:1.3rem;border-radius:50%}
.dashboard-row-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.dashboard-row-text strong{font-weight:500;font-size:.87rem;overflow-wrap:anywhere}.dashboard-row-text small{color:#7b8dab;font-size:.78rem}.dashboard-row-value{white-space:nowrap;color:#17243f}
.dashboard-pill{background:var(--role-soft);color:var(--role-dark);padding:5px 10px;border-radius:22px;font-size:.72rem;white-space:nowrap}
.dashboard-cta{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;background:linear-gradient(100deg,var(--role),color-mix(in srgb,var(--role),white 10%));padding:18px;border-radius:16px;color:white;font-size:1.1rem;font-weight:750;margin-top:16px;box-shadow:0 4px 12px color-mix(in srgb,var(--role),transparent 90%)}.dashboard-cta:hover{background:var(--role-dark)}.dashboard-cta span{margin-left:auto}.dashboard-footer{display:flex;gap:20px;justify-content:center;margin:17px 0 0}.dashboard-details{margin-top:18px;color:var(--role-dark);font-size:.9rem}.dashboard-details summary{cursor:pointer;padding:10px 0}
#clientProfileCard,#profilePreview{padding:0;border:none;background:none;box-shadow:none}#sellerProfileHeading{margin-bottom:24px}
body{background:radial-gradient(ellipse at 0% 20%,#dbeeff88,transparent 55%),var(--bg)}body.provider-mode{background:radial-gradient(ellipse at 100% 20%,#e7dcff99,transparent 55%),var(--bg)}
@media(max-width:600px){.dashboard-content{padding:18px}.dashboard-top{padding:15px 18px}.dashboard-person{grid-template-columns:58px minmax(0,1fr);gap:12px;margin-bottom:20px}.dashboard-person .avatar{width:58px;height:58px}.dashboard-rating{grid-column:2;text-align:left;max-width:none}.dashboard-rating .rating-stars{display:inline;font-size:1.4rem}.dashboard-title{gap:12px}.dashboard-icon{width:52px;height:52px;font-size:25px}.dashboard-title h2{font-size:1.23rem}.dashboard-title p{font-size:.83rem}.dashboard-section{padding:14px}.dashboard-thumbnails{gap:8px}.dashboard-section-heading h3{font-size:1rem}.dashboard-row{gap:9px}.dashboard-row img,.dashboard-row-symbol{width:42px;height:42px}.dashboard-pill{padding:5px 7px;font-size:.68rem}.dashboard-row-value{font-size:.8rem}.dashboard-section-heading .dashboard-link{font-size:.75rem}.dashboard-thumbnails>p{grid-column:1/-1}}
.dashboard-icon svg{width:30px;height:30px}.dashboard-section-heading h3>span{display:flex}.dashboard-section-heading h3 svg{width:23px;height:23px}.dashboard-thumb{font-weight:400}.dashboard-row-symbol{font-family:Arial,sans-serif}
/* v46: standalone profile screens; no nested legacy page */
body.profile-screen>header,body.profile-screen>#mobileNav,body.profile-screen #devNotice{display:none!important}
body.profile-screen main{max-width:none;padding:28px 24px 50px;margin:0 auto}
body.profile-screen[data-profile-screen="buyer"] #homePage>:not(#clientProfileCard){display:none!important}
body.explore-screen #clientProfileCard{display:none!important}
body.profile-screen[data-profile-screen="seller"] #marketPage>:not(#sellerProfileHeading){display:none!important}
body.profile-screen[data-profile-screen="provider"] #proPage>:not(#providerProfileSection){display:none!important}
body.profile-screen[data-profile-screen="provider"] #providerProfileSection>:not(#profilePreview){display:none!important}
body.profile-screen #clientProfileCard,body.profile-screen #profilePreview{margin:0 auto;max-width:760px}
.dashboard-top-actions{display:flex;gap:10px;align-items:center}.dashboard-top-actions button{font-size:1.2rem}
.profile-test-note{color:#627592;font-size:.75rem;text-align:center;margin:14px 0 0}
.app-drawer{display:grid;gap:10px}.app-drawer button{text-align:left;background:#eff4fa;color:#233956;padding:14px}
body:not(.profile-screen)>header,body.provider-mode:not(.profile-screen)>header{background:#19324d}
body:not(.profile-screen)>header nav button{background:#ffffff12;color:#f6f9ff}
body.provider-mode:not(.profile-screen)>header #desktopNav{background:#19324d}
#purchaseOrders{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.purchase-card{padding:20px;margin:0;border:1px solid #e1eaf0;border-radius:20px;box-shadow:0 5px 18px #3558760b}
.purchase-summary{display:flex;gap:15px;align-items:flex-start;margin-bottom:16px}.purchase-item-photo{width:90px;height:90px;object-fit:cover;border-radius:12px;flex-shrink:0;background:#edf4f8}.purchase-image-empty{display:grid;place-items:center;color:#7890a0;font-size:.75rem}
.purchase-summary h3{font-size:1.05rem;margin:0 0 7px;overflow-wrap:anywhere}.purchase-summary p{margin:4px 0;font-size:.8rem}.purchase-summary strong{font-size:1.1rem}.purchase-card .purchase-status{font-size:.8rem;margin:0 0 12px}.purchase-card .sale-breakdown{font-size:.8rem;padding:12px;margin-bottom:12px}.purchase-card .small{font-size:.8rem}.purchase-card .rating-stars{color:#d89b15}.purchase-card .actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.purchase-card .actions button{font-size:.82rem;padding:10px 12px;border-radius:10px;min-height:40px}
.purchase-section{background:transparent;border:0;box-shadow:none;padding:0}
@media(max-width:600px){body.profile-screen main{padding:14px 12px 30px}#purchaseOrders{grid-template-columns:1fr}}

/* One profile per screen, matching each individual reference card */
body.profile-screen #clientProfileCard,body.profile-screen #profilePreview,body.profile-screen #sellerProfileHeading{max-width:520px;width:100%;margin:0 auto}
body.profile-screen .role-dashboard{max-width:520px;margin:0 auto;border-radius:22px}
body.profile-screen .dashboard-content{padding:26px 22px}
body.profile-screen .dashboard-person{grid-template-columns:74px minmax(0,1fr) 130px;gap:13px;margin-bottom:22px;min-height:82px}
body.profile-screen .dashboard-person .avatar{width:74px;height:74px}
body.profile-screen .dashboard-rating{text-align:right;grid-column:auto;max-width:none;font-size:.7rem}
body.profile-screen .dashboard-rating .rating-stars{display:block;font-size:1.5rem;letter-spacing:0;white-space:nowrap;color:#e6aa19}
body.profile-screen .dashboard-title{gap:16px;margin-bottom:16px}
body.profile-screen .dashboard-title h2{font-size:1.5rem}
body.profile-screen .dashboard-icon{width:70px;height:70px}
body.profile-screen .dashboard-section{padding:17px;border-radius:20px;margin:14px 0}
body.profile-screen .dashboard-thumbnails{gap:12px}
body.profile-screen .dashboard-thumb img{aspect-ratio:1.5}
body.profile-screen .dashboard-cta{margin-top:15px;padding:18px;border-radius:16px}
.dashboard-avatar{position:relative}.dashboard-avatar .avatar{display:grid;place-items:center}.avatar-check{position:absolute;right:0;bottom:0;width:23px;height:23px;border:2px solid #fff;border-radius:50%;background:#15923a;color:white;display:grid;place-items:center;font-weight:800;font-size:13px}
.dashboard-top-actions svg{width:20px;height:20px;display:block}.dashboard-top-actions button{padding:4px}.dashboard-top-actions{gap:16px}
.dashboard-logo{display:flex;align-items:center;gap:10px}.dashboard-logo svg{width:30px;height:30px}
@media(max-width:420px){body.profile-screen .dashboard-content{padding:20px 15px}body.profile-screen .dashboard-person{grid-template-columns:56px minmax(0,1fr) 100px;gap:8px}body.profile-screen .dashboard-person .avatar{width:56px;height:56px}body.profile-screen .dashboard-rating .rating-stars{font-size:1.2rem}body.profile-screen .dashboard-person-name>strong{font-size:.92rem}body.profile-screen .dashboard-person-name .status{font-size:.65rem;white-space:normal}body.profile-screen .dashboard-title{gap:12px}body.profile-screen .dashboard-title h2{font-size:1.23rem}body.profile-screen .dashboard-title p{font-size:.8rem}body.profile-screen .dashboard-icon{width:52px;height:52px}body.profile-screen .dashboard-thumbnails{gap:8px}body.profile-screen .dashboard-section{padding:13px}body.profile-screen .dashboard-section-heading h3{font-size:1rem}}
body:not(.profile-screen) #sellerProfileHeading{display:none}
body.profile-screen main>p.small{text-align:center;margin:16px auto;max-width:520px;font-size:.78rem}

/* v47: full-width individual profiles with visible role navigation */
body.profile-screen{background:radial-gradient(ellipse at top left,#e1efff,transparent 60%),#f5f8fd}
body.profile-screen[data-profile-screen="seller"]{background:radial-gradient(ellipse at top left,#dff5f1,transparent 60%),#f4faf9}
body.profile-screen[data-profile-screen="provider"]{background:radial-gradient(ellipse at top right,#eee5ff,transparent 60%),#f8f6fd}
body.profile-screen main{width:100%;padding:24px 32px 40px}
body.profile-screen #feedback{display:none!important}
body.profile-screen #clientProfileCard,body.profile-screen #profilePreview,body.profile-screen #sellerProfileHeading,body.profile-screen .role-dashboard{max-width:none;width:100%}
body.profile-screen .role-dashboard{min-height:calc(100dvh - 100px);border:1px solid #ffffff;box-shadow:0 12px 42px #24466b0d}
.profile-switcher{display:flex;gap:12px;padding:18px 32px;border-bottom:1px solid #e9eef6;background:#fff}
.profile-switcher button{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 24px;background:#f0f4f9;color:#53647d;border:1px solid #e2e8f1;border-radius:12px;font-size:1rem}
.profile-switcher svg{width:22px;height:22px}
.profile-switcher button[aria-current="page"]{background:var(--role-soft);border-color:var(--role);color:var(--role-dark)}
.profile-switcher button:hover{background:var(--role-soft);color:var(--role-dark)}
body.profile-screen .dashboard-top{padding:22px 32px}
body.profile-screen .dashboard-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:30px 32px}
body.profile-screen .dashboard-person,body.profile-screen .dashboard-title,body.profile-screen .dashboard-cta,body.profile-screen .dashboard-details{grid-column:1/-1;margin:0}
body.profile-screen .dashboard-person{grid-template-columns:90px minmax(0,1fr) 220px;gap:20px}
body.profile-screen .dashboard-person .avatar{width:90px;height:90px}
body.profile-screen .dashboard-person-name>strong{font-size:1.3rem}
body.profile-screen .dashboard-person-name p{font-size:1rem}
body.profile-screen .dashboard-person-name .status{background:#e0f8eb;color:#127333;border-radius:10px;font-size:.85rem;padding:7px 12px}
body.profile-screen .dashboard-person-name .status[data-verified="false"]{background:#f0f3f7;color:#596a80}
body.profile-screen .dashboard-rating .rating-stars{font-size:2rem;color:#edb125}
body.profile-screen .dashboard-title h2{font-size:1.9rem}
body.profile-screen .dashboard-title p{font-size:1rem}
body.profile-screen .dashboard-section{margin:0;padding:24px;border:1px solid #eaf0f7;box-shadow:0 6px 24px #315b8910;min-width:0}
body.profile-screen .dashboard-section-heading{margin-bottom:20px}
body.profile-screen .dashboard-section-heading h3{font-size:1.25rem}
body.profile-screen .dashboard-thumb img{aspect-ratio:1.5;width:100%;border-radius:12px}
body.profile-screen .dashboard-thumb strong{font-size:1rem}
body.profile-screen .dashboard-thumb>span:last-child{font-size:.88rem}
body.profile-screen .dashboard-row{padding:17px 0;font-size:1rem}
body.profile-screen .dashboard-row img,body.profile-screen .dashboard-row-symbol{width:64px;height:64px}
body.profile-screen .dashboard-row-text strong{font-size:1rem}
body.profile-screen .dashboard-row-text small{font-size:.88rem}
body.profile-screen .dashboard-cta{width:100%;font-size:1.15rem;min-height:62px}
@media(max-width:760px){
 body.profile-screen main{padding:12px}
 .profile-switcher{padding:12px;gap:8px}
 .profile-switcher button{flex:1;padding:11px 5px;font-size:.85rem;gap:5px}
 .profile-switcher svg{width:18px;height:18px}
 body.profile-screen .dashboard-top{padding:18px}
 body.profile-screen .dashboard-content{grid-template-columns:minmax(0,1fr);padding:22px 18px;gap:20px}
 body.profile-screen .dashboard-person{grid-template-columns:62px minmax(0,1fr) 105px;gap:9px}
 body.profile-screen .dashboard-person .avatar{width:62px;height:62px}
 body.profile-screen .dashboard-person-name>strong{font-size:.95rem}
 body.profile-screen .dashboard-person-name p{font-size:.8rem}
 body.profile-screen .dashboard-person-name .status{font-size:.65rem;padding:5px}
 body.profile-screen .dashboard-rating .rating-stars{font-size:1.2rem}
 body.profile-screen .dashboard-title h2{font-size:1.3rem}
 body.profile-screen .dashboard-title p{font-size:.85rem}
 body.profile-screen .dashboard-section{padding:16px}
 body.profile-screen .dashboard-section-heading h3{font-size:1.05rem}
 body.profile-screen .dashboard-thumb strong{font-size:.85rem}
 body.profile-screen .dashboard-thumb>span:last-child{font-size:.75rem}
 body.profile-screen .dashboard-row img,body.profile-screen .dashboard-row-symbol{width:48px;height:48px}
 body.profile-screen .dashboard-row-text strong{font-size:.88rem}
 body.profile-screen .dashboard-row-text small{font-size:.78rem}
}

.profile-switcher button[data-profile-route="buyer"]{--tab:#176fe8;--tab-soft:#edf5ff;--tab-ink:#124785}
.profile-switcher button[data-profile-route="seller"]{--tab:#009aa4;--tab-soft:#e8f8f5;--tab-ink:#00646a}
.profile-switcher button[data-profile-route="provider"]{--tab:#7444ec;--tab-soft:#f0ebff;--tab-ink:#503099}
.profile-switcher button{background:var(--tab-soft);color:var(--tab-ink);border-color:transparent}
.profile-switcher button[aria-current="page"]{background:var(--tab);color:#fff;border-color:var(--tab);box-shadow:0 4px 12px color-mix(in srgb,var(--tab),transparent 80%)}
.profile-switcher button:hover{background:var(--tab-soft);color:var(--tab-ink);border-color:var(--tab)}

.dashboard-thumb .dashboard-sold{align-self:flex-start;background:#e0f8eb;color:#08734e!important;border-radius:24px;padding:5px 14px;font-weight:600}

.live-alert{display:flex;align-items:flex-start;border-radius:14px;overflow:hidden;color:white}.live-alert.hidden{display:none}.live-alert-open{flex:1;background:transparent;color:inherit;border:0;padding:16px;text-align:left;margin:0;box-shadow:none}.live-alert-close{flex:0 0 44px;width:44px;min-height:44px;background:transparent;color:inherit;border:0;padding:10px;margin:4px;box-shadow:none;font-size:20px}

#switchProviderNav,#proNav,#switchClientNav{display:none!important}
@media(max-width:700px){.store-modal .actions{display:flex!important;flex-wrap:wrap}.store-modal .actions button{min-height:44px;pointer-events:auto;position:relative}.modal{max-height:85dvh;overflow-y:auto;-webkit-overflow-scrolling:touch}}

/* v60: Costa Rica launch; other markets are not enabled. */
.country-control{display:flex;align-items:center;gap:8px;font-size:14px;color:inherit}.country-control select{width:auto;max-width:260px;padding:9px}.launch-country{display:block;margin-bottom:18px;font-weight:600;color:#167b7b}@media(max-width:640px){.country-control{width:100%;flex-wrap:wrap}.country-control select{max-width:100%;flex:1}.launch-country{font-size:14px}}
