/* Shared member experience: a compact mobile app shell, even in desktop preview. */
.portal-member.is-member{--app-green:#176f59;--app-ink:#253c33;--app-muted:#7c8b84;--app-line:#e8eeea;--app-bg:#f4f7f5;background:var(--app-bg)}
.portal-member.is-member header{box-sizing:border-box;position:sticky;top:0;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;height:56px;padding:0 max(10px,env(safe-area-inset-right)) 0 max(10px,env(safe-area-inset-left));border:0;border-bottom:1px solid #13513f;background:linear-gradient(135deg,#237861 0%,#17624e 58%,#124d3e 100%);box-shadow:0 5px 18px #123c3026}
.portal-member.is-member header .brand{grid-column:2;display:flex;align-items:center;justify-content:center;width:100%;height:42px;margin:0;color:#fff;font-size:16px;font-weight:650;line-height:1;letter-spacing:.2px;text-align:center;white-space:nowrap;text-shadow:0 1px 1px #0a392b40}
.portal-member.is-member .member-header-back{grid-column:1;grid-row:1;position:static;z-index:2;display:grid;place-items:center;width:42px;height:42px;min-height:42px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;font-size:0;line-height:0;box-shadow:none}.portal-member.is-member .member-header-back:before{content:'';display:block;width:10px;height:10px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:translate(2px,7px) rotate(45deg)}.portal-member.is-member .member-header-back:hover{background:#ffffff14}.portal-member.is-member .member-header-back:active{background:#ffffff25}.portal-member.is-member .member-header-back[hidden]{display:none!important}
.member-app-title{display:block;font-size:16px;font-weight:650;line-height:1;letter-spacing:.2px}
.portal-member.is-member main{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
.portal-member.is-member footer{display:none}
.portal-member.is-member .card,.portal-member.is-member .order-record,.portal-member.is-member .account-menu,.portal-member.is-member .shipping-address-card,.portal-member.is-member .payout-account-card{border:1px solid var(--app-line);border-radius:18px;box-shadow:0 7px 24px #18392d08}
.portal-member.is-member button,.portal-member.is-member input,.portal-member.is-member select,.portal-member.is-member textarea{border-radius:12px}
.portal-member.is-member button.primary,.portal-member.is-member form>.primary{min-height:48px;border-radius:14px;background:var(--app-green);border-color:var(--app-green);font-weight:650;box-shadow:0 6px 16px #176f5925}
.portal-member.is-member input,.portal-member.is-member select,.portal-member.is-member textarea{border-color:#e1e9e4;background:#f9fbfa}
.portal-member.is-member input:focus,.portal-member.is-member select:focus,.portal-member.is-member textarea:focus{background:#fff;border-color:#65a28e;box-shadow:0 0 0 3px #2c85671a}
.portal-member.is-member #memberNavSlot nav{border-radius:18px 18px 0 0;box-shadow:0 -8px 30px #173e3012;padding-top:8px}
.portal-member.is-member #memberNavSlot nav button{position:relative;transition:color .18s ease,transform .18s ease}
.portal-member.is-member #memberNavSlot nav button.active{color:var(--app-green);transform:translateY(-1px)}
.portal-member.is-member #memberNavSlot nav button.active:before{content:'';position:absolute;top:-8px;width:22px;height:3px;border-radius:0 0 5px 5px;background:var(--app-green)}
.portal-member.is-member .empty{border:1px dashed #dce7e1;border-radius:18px;background:#fff;color:var(--app-muted)}
.page-account-detail #balances .balance{padding-bottom:23px}.balance-value-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.balance-value-row .amount{min-width:0}.balance-payout-link{position:static;z-index:2;flex:0 0 auto;min-height:34px!important;margin:0!important;padding:6px 12px!important;border:1px solid #ffffff30!important;border-radius:17px!important;background:#ffffff17!important;color:#fff!important;font-size:11px!important;box-shadow:none!important}.balance-payout-link span{margin-left:4px;font-size:16px;line-height:0}.withdrawal-account-required{align-items:center!important;padding:20px!important}.withdrawal-account-required .member-account-modal{text-align:center;max-width:340px;border-radius:20px!important;padding:26px 22px!important}.withdrawal-account-required .member-account-modal p{margin:0 0 22px;color:#718179;font-size:12px;line-height:1.8}.withdrawal-account-required .member-account-modal>.primary{width:100%}.withdrawal-account-empty{margin-top:8px}

/* Primary screens */
.page-member:not(.page-finance) #content{padding-bottom:10px}
.page-orders .member-orders-toolbar,.page-team #content>h2{margin-top:3px}
.page-orders .member-orders-toolbar h2,.page-team #content>h2{font-size:20px;font-weight:700;color:var(--app-ink)}
.page-orders .order-record{border:0}
.page-orders .order-record-top{font-weight:600;color:#40584d}
.page-orders .order-swatch{border:0;border-radius:13px}
.page-orders .order-total b{color:var(--app-green)}
.page-team #content>p{margin:-12px 0 16px}
.page-team #branchView .table-wrap,.page-team #teamTable .table-wrap{background:transparent}
.page-team #content>.row{position:sticky;top:64px;z-index:5;background:var(--app-bg);padding:8px 0;margin:8px 0}
.page-team #teamRoot{background:#fff;border-color:#dfe8e3;color:var(--app-green)}
.page-account .account-overview{gap:14px}
.page-account .account-profile{border-radius:20px;padding:22px;background:linear-gradient(135deg,#174f42,#218069);box-shadow:0 12px 28px #174f4225}
.page-account .account-menu{border:0}
.page-account .account-menu>button{min-height:72px;padding:14px 17px}
.page-account .account-menu-icon{border-radius:13px;background:#edf7f2;color:var(--app-green)}
.page-account-detail .member-subpage{gap:14px}
.page-account-detail .subpage-back{font-size:13px;color:var(--app-green);padding:4px 2px}
.page-account-detail .member-subpage>.card,.page-account-detail #content>.card{border:0}
.page-account-detail .payout-list-heading h2{font-size:20px;color:var(--app-ink)}
.page-account-detail .shipping-address-card,.page-account-detail .payout-account-card{border:0}
.page-account-detail .add-payout-button{position:sticky;bottom:82px;z-index:4}

/* Shop follows the same visual rhythm as the wallet. */
.page-purchase .purchase-products,.page-purchase .purchase-delivery,.page-purchase .purchase-confirm{border:0}
.page-purchase .purchase-step>span{background:#e5f3ed;color:var(--app-green)}
.page-purchase .purchase-products .product{border:1px solid #e7ede9;border-radius:16px;background:#fafcfb}
.page-purchase .purchase-live-summary{margin-top:10px;padding:16px 3px 5px}
.page-purchase .purchase-next{margin-top:14px}

@media(max-width:700px){
 .portal-member.is-member main{margin-top:14px;padding-left:14px;padding-right:14px}
 .portal-member.is-member header{height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}
 .portal-member.is-member .card{padding:19px 17px}
 .portal-member.is-member #memberNavSlot nav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}
 .page-orders .member-orders-toolbar{align-items:flex-end}
 .page-orders .member-orders-toolbar button{min-height:39px;border-radius:12px;padding:8px 12px}
 .page-team .is-member table tr,.page-team table tr{border:0;border-radius:16px;box-shadow:0 6px 20px #18392d08}
 .page-account-detail .member-account-modal-backdrop{padding:0}
 .page-account-detail .member-account-modal{border-radius:22px 22px 0 0;padding:23px 18px calc(22px + env(safe-area-inset-bottom))}
}

/* Home / shop */
.shop-hero{position:relative;overflow:hidden;margin-bottom:18px;padding:21px 20px;border-radius:22px;background:linear-gradient(135deg,#174f42,#16745c);color:#fff;box-shadow:0 14px 30px #174f4228}.shop-hero:after{content:'';position:absolute;width:160px;height:160px;right:-60px;top:-75px;border:32px solid #ffffff0d;border-radius:50%}.shop-welcome{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between}.shop-welcome span{font-size:15px;font-weight:650}.shop-welcome small{padding:5px 9px;border-radius:12px;background:#ffffff18;color:#d9ece5;font-size:10px}.shop-hero p{margin:23px 0 5px;color:#bcd7ce;font-size:11px}.shop-hero>strong{position:relative;z-index:1;display:block;font:650 31px/1.2 "Segoe UI",sans-serif}.shop-hero>button{position:absolute;z-index:2;right:18px;bottom:20px;min-height:34px;padding:7px 12px;border:1px solid #ffffff2b;border-radius:18px;background:#ffffff16;color:#fff;font-size:11px}.mobile-section-title{display:flex;align-items:flex-end;justify-content:space-between;margin:3px 2px 12px}.mobile-section-title h2{margin:0 0 4px;color:var(--app-ink);font-size:19px}.mobile-section-title p{margin:0;color:var(--app-muted);font-size:11px}.mobile-section-title>span{padding:5px 9px;border-radius:12px;background:#e7f3ed;color:#26745e;font-size:10px}.page-purchase .purchase-products{padding:0!important;background:transparent;border:0;box-shadow:none}.page-purchase .purchase-products>.purchase-step{display:none}.page-purchase .purchase-products .products{gap:12px}.page-purchase .purchase-products .product{grid-template-columns:56px minmax(0,1fr) 110px;padding:17px 14px;border:0!important;border-radius:18px!important;background:#fff!important;box-shadow:0 7px 24px #18392d0a}.page-purchase .purchase-products .product-art{width:52px;height:58px;border-radius:15px}.page-purchase .purchase-products .product h3{font-size:15px}.page-purchase .purchase-products .product-info small{font-size:10px}.page-purchase .purchase-products .product strong{font-size:20px;color:#176f59}.page-purchase .purchase-live-summary{position:sticky;z-index:8;bottom:73px;margin:15px 0 0;padding:14px 16px;border:0;border-radius:17px;background:#fff;box-shadow:0 10px 30px #18392d18}.page-purchase .purchase-next{margin-top:10px}

/* Orders */
.orders-app-head{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;overflow:hidden;margin-bottom:20px;border-radius:22px;background:#ffffff22;box-shadow:0 12px 30px #174f4224}.orders-app-head>div{display:flex;flex-direction:column;padding:17px 18px;background:linear-gradient(135deg,#174f42,#1b705a);color:#fff}.orders-app-head>div:last-child{grid-column:1/-1;padding-top:14px;padding-bottom:15px;background:#155d4c}.orders-app-head span{font-size:10px;color:#bcd7ce}.orders-app-head strong{margin:7px 0 2px;font:650 25px "Segoe UI",sans-serif}.orders-app-head small{font-size:9px;color:#d2e5de}.orders-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 2px 13px}.orders-section-head h2{margin:0 0 4px;font-size:19px}.orders-section-head p{margin:0;color:var(--app-muted);font-size:11px}.orders-section-head button{display:flex;align-items:center;gap:5px;min-height:35px;padding:7px 11px;border-color:#dbe8e2;background:#fff;color:var(--app-green);font-size:11px}.orders-section-head .icon{width:15px;height:15px}.page-orders .member-order-list{gap:13px}.page-orders .order-record{padding:18px 17px;border-radius:18px}.order-paid-dot{display:flex;align-items:center;gap:5px;color:#208160;font-size:11px}.order-paid-dot:before{content:'';width:6px;height:6px;border-radius:50%;background:#28a477}.page-orders .order-date{margin:6px 0 15px}.page-orders .order-item{margin:12px 0}.page-orders .order-swatch{width:44px;height:48px}.page-orders .order-total{margin-top:15px;padding:14px 0}.page-orders .order-detail summary{display:flex;align-items:center;justify-content:space-between;color:#6f8278;list-style:none}.page-orders .order-detail summary::-webkit-details-marker{display:none}.page-orders .order-detail summary i{font-size:20px;font-style:normal;color:#a3b0a9}.page-orders .order-detail[open] summary i{transform:rotate(90deg)}

/* Team */
.team-hero{overflow:hidden;margin-bottom:20px;border-radius:22px;background:linear-gradient(135deg,#174f42,#1b745c);color:#fff;box-shadow:0 14px 30px #174f4227}.team-hero-copy{padding:22px 20px 18px}.team-hero-copy span{display:block;color:#bcd7ce;font-size:11px}.team-hero-copy strong{display:inline-block;margin:6px 7px 0 0;font:650 34px "Segoe UI",sans-serif}.team-hero-copy small{color:#d5e7e0;font-size:11px}.team-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:15px 8px;background:#ffffff0c;border-top:1px solid #ffffff12}.team-stats div{display:flex;flex-direction:column;align-items:center;border-right:1px solid #ffffff16}.team-stats div:last-child{border:0}.team-stats b{font:600 16px "Segoe UI",sans-serif}.team-stats span{margin-top:5px;color:#bcd7ce;font-size:9px}.team-branches{margin-bottom:20px}.branch-chip-list{display:flex;gap:10px;overflow-x:auto;padding:1px 1px 7px;scrollbar-width:none}.branch-chip{min-width:128px;padding:14px;border-radius:16px;background:#fff;box-shadow:0 6px 20px #18392d09}.branch-chip span{display:block;overflow:hidden;color:#52665d;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.branch-chip b{display:block;margin-top:8px;color:var(--app-green);font:650 21px "Segoe UI",sans-serif}.branch-chip small{font-size:9px;font-weight:400;color:#89968f}.team-level-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.team-level-bar button{min-height:32px;padding:5px 8px;border:0;background:transparent;color:var(--app-green);font-size:11px}.team-level-bar span{color:#566a60;font-size:13px;font-weight:650}.team-member-list{display:flex;flex-direction:column;gap:11px}.team-member-card{display:grid;grid-template-columns:43px minmax(0,1fr) 25px;align-items:start;gap:11px;padding:16px 13px;border-radius:18px;background:#fff;box-shadow:0 7px 22px #18392d09}.team-member-avatar{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:#e7f4ee;color:var(--app-green);font-size:16px;font-weight:700}.team-member-main>div:first-child{display:flex;align-items:center;gap:7px}.team-member-main>div>b{font-size:14px;color:#30473d}.team-member-main>div>span{padding:3px 6px;border-radius:8px;background:#edf6f2;color:#397962;font-size:9px}.team-member-main>small{display:block;margin-top:5px;color:#8a9790;font-size:10px}.team-member-data{display:flex;gap:12px;margin-top:12px}.team-member-data span{color:#89958f;font-size:9px}.team-member-data b{display:block;margin-top:3px;color:#40564b;font-size:11px}.team-next{align-self:center;min-width:25px!important;padding:0!important;border:0!important;background:transparent!important;color:#9caaa2!important;font-size:24px!important;box-shadow:none!important}
