
/* V4 — reference design: soft pink cards, clear mobile hierarchy. */
:root{--ink:#18142d;--pink:#ff1677;--muted:#89849e}body{color:var(--ink);background:#fff2f7}.v4-app{background:radial-gradient(ellipse at 95% 0,#ffc6dc99,transparent 33%),radial-gradient(ellipse at 0 26%,#fff,transparent 50%),linear-gradient(#fff0f6,#fff8fb);padding-top:20px}.v4-app .top-header{margin-bottom:26px}.top-header .brand{font-size:27px;letter-spacing:-1px}.top-header .subbrand{letter-spacing:3px;font-size:10px}.top-header .row{gap:7px}.city-pill,.round-button{background:#fff;border-radius:30px;min-height:40px;padding:9px 13px;font-size:13px;font-weight:600;white-space:nowrap}.round-button{width:40px;padding:10px;display:grid;place-items:center}.round-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.v4-app h1{font-size:27px}.v4-app .carousel{border:1px solid white;border-radius:21px}.lux-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:17px 15px;margin:18px 0;border:1px solid white;border-radius:22px;text-align:left;background:linear-gradient(115deg,#ffaecaaa,#ffe7f1 52%,#ffc3dc);box-shadow:0 8px 24px #e34b9020}.lux-banner b{font-size:19px;color:#661536;display:block}.lux-banner small{display:block;line-height:1.6;color:#8a5770;margin-top:5px}.lux-banner em{border-radius:28px;background:linear-gradient(110deg,#ff64a3,#ff0876);color:white;white-space:nowrap;font-size:12px;font-style:normal;padding:11px 12px}.gem{font-size:38px;color:#ff267e;text-shadow:0 2px white,0 6px 10px #ff408c66}.people-section .section{margin:18px 0 10px}.people-section h2{font-size:21px;display:flex;align-items:center;gap:4px}.people-section h2 i{font-size:30px;color:var(--pink);font-style:normal}.people-section h2 small{font-weight:400;font-size:10px;max-width:100px}.blue h2 i,.blue .price,.blue .link{color:#3565ff}.home-people{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.home-people>.empty{grid-column:1/-1;padding:22px;font-size:13px}.mini-person{background:#fffcfe;padding:0 0 9px;border-radius:13px;overflow:hidden;text-align:left;box-shadow:0 8px 16px #a65c8212;min-width:0}.mini-photo{height:100px;position:relative}.mini-photo img{width:100%;height:100%;object-fit:cover}.mini-photo span{position:absolute;right:3px;top:5px;background:#ff2584;color:white;font-size:9px;border-radius:5px;padding:2px 4px}.blue .mini-photo span{background:#3875ff}.mini-person>b,.mini-person>strong{display:block;padding:3px 7px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.mini-person>strong{color:var(--pink);font-size:15px}.mini-person small{font-size:10px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin:5px 0 9px}.page-heading h1 span,.pink{color:var(--pink)}.page-subtitle{font-size:13px;color:var(--muted);margin-bottom:20px}.sort-tabs{display:flex;gap:30px;margin:20px 0 12px}.sort-tabs button{padding:7px 3px;font-size:17px}.sort-tabs .selected{border-bottom:3px solid var(--pink)}.filter-chips{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 18px}.filter-chips .chip{background:white;border:0;padding:9px 16px;border-radius:22px}.filter-chips .selected{background:linear-gradient(120deg,#ff84b0,#ff3b8a);color:#fff}.discovery-card{display:flex;align-items:center;position:relative;margin-bottom:12px;background:#ffffffdc;border:2px solid white;border-radius:21px;padding:5px}.discovery-main{display:flex;align-items:center;gap:12px;text-align:left;min-width:0;flex:1;padding:0}.discovery-main>div:last-child{min-width:0;flex:1}.discovery-main h2{font-size:18px}.discovery-main .avatar-wrap{width:40%;height:125px;flex-shrink:0}.discovery-main .avatar{width:100%;height:100%;border-radius:16px;object-fit:cover}.discovery-main .avatar-level{right:4px;bottom:5px}.discovery-main .price{font-size:21px;display:block;margin-top:8px}.discovery-main .tag{font-size:10px;padding:4px 6px}.verified{color:#ff4388;font-size:14px}.heart-button{width:33px;height:33px;border:1px solid #ffc6dc;color:var(--pink);border-radius:50%;font-size:22px;margin:0 6px}.v4-app .card{border-radius:22px;background:#ffffffd9;border:1px solid white;box-shadow:0 8px 25px #d95b8c09}.order-tabs{display:flex;overflow:auto;gap:8px;margin:20px 0 17px;padding-bottom:7px;scrollbar-width:none}.order-tabs button{flex:0 0 auto;border:0;background:#ffffffc9;border-radius:30px;padding:11px 16px;font-size:14px}.order-tabs .selected{background:linear-gradient(110deg,#ff1478,#ff987c);color:#fff;box-shadow:0 6px 16px #ff589d33}.order-open{display:flex;gap:12px;width:100%;text-align:left;padding:0}.order-photo{width:90px;height:115px;object-fit:cover;border-radius:14px}.order-content{flex:1;min-width:0}.order-content .price{font-size:21px}.order-title{margin-bottom:7px}.order-title b{font-size:17px}.order-title span{white-space:nowrap}.order-content p{font-size:12px}.order-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:12px}.order-actions .compact{min-width:85px}.order-note{color:#82768f;font-size:12px;margin-top:10px}.order-card .cta{margin-top:0}.profile-hero{display:flex;align-items:center;gap:13px;position:relative;margin:20px 0}.profile-hero .avatar-wrap{width:82px;height:82px;flex-shrink:0}.profile-hero .avatar{width:100%;height:100%;border:4px solid white;box-shadow:0 5px 20px #f074a433}.profile-hero>div:nth-child(2){min-width:0;flex:1}.profile-hero h2{font-size:22px}.profile-hero small{font-size:10px}.edit-pill{font-size:11px;background:white;border-radius:20px;padding:9px 11px;white-space:nowrap}.growth.card{color:white;background:linear-gradient(110deg,#ff4c92,#ff99bc);margin:18px 0;border:1px solid white}.growth small,.growth .muted{color:#fff}.growth .level-track{background:#cf55855c}.growth .level-track i{background:white}.v4-app .balance-card{border:1px solid white;background:linear-gradient(125deg,#ffc8dd,#fff4f8);color:#661536;border-radius:23px;margin:16px 0}.balance-card small{color:#94526f}.v4-app .list-row{background:#ffffffad;padding:17px 14px;border-bottom:1px solid #f4e5ed}.v4-app .list-row small{display:block;margin-top:6px}.availability{display:flex;justify-content:space-between;align-items:center}.availability button{display:flex;gap:12px;align-items:center;color:var(--pink);font-weight:600}.switch{width:44px;height:26px;border-radius:20px;background:#ccc;position:relative}.switch:after{content:'';position:absolute;width:22px;height:22px;left:2px;top:2px;border-radius:50%;background:white}.switch.on{background:linear-gradient(90deg,#ff0876,#ff699e)}.switch.on:after{left:20px}.dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dashboard-stats .stat{text-align:left;border:1px solid white;border-radius:19px;background:#fffafde8;padding:17px 12px}.dashboard-stats strong{font-size:24px;overflow-wrap:anywhere}.dashboard-stats i{float:right;color:var(--pink);font-size:18px;font-style:normal}.work-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0}.work-tools button{padding:16px 7px;background:#ffffffd9;border:1px solid white;border-radius:20px;text-align:center}.work-tools i{display:block;font-style:normal;font-size:29px;color:#bd79ef;margin-bottom:7px}.work-tools b{display:block;font-size:13px}.work-tools small{font-size:10px;display:block;margin-top:6px}.message-heading{position:relative;padding:8px 0 22px}.message-heading:after{content:'♡';position:absolute;right:18px;top:0;font-size:90px;color:#ff99bf;text-shadow:0 5px white,0 10px 20px #ffb0cb}.message-heading p{color:#827193;font-size:17px}.message-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:18px}.message-categories button{padding:15px 5px;background:#fffcfee0;border:1px solid white;border-radius:20px}.message-categories i{display:block;font-size:30px;color:var(--pink);font-style:normal;margin-bottom:8px}.message-categories b{font-size:14px}.message-row{width:100%;text-align:left;margin:10px 0}.conversation-row{display:flex;gap:13px;align-items:center}.conversation-row>div{flex:1;min-width:0}.conversation-row p{font-size:13px;color:#827193}.conversation-row small{font-size:11px}.schedule-row{display:grid;text-align:left;gap:8px}.chat-list{min-height:45vh}.chat-line{margin:15px 0;display:flex;flex-direction:column;align-items:flex-start}.chat-line p{max-width:85%;padding:10px 14px;background:white;border-radius:15px;overflow-wrap:anywhere;white-space:pre-wrap}.chat-line.mine{align-items:flex-end}.chat-line.mine p{background:#ffdfec}.chat-line small{margin-top:4px}.chat-compose{display:flex;align-items:end;gap:10px}.chat-compose textarea{min-height:65px}.chat-compose .cta{width:75px;padding:13px}.nav{border-radius:25px 25px 0 0;box-shadow:0 -7px 25px #dd63910c;background:#fffdfef5}.nav button{font-size:12px;min-width:55px}.nav svg{width:24px;height:24px}.nav button.active svg{filter:drop-shadow(0 0 5px #ffadd0)}.login-method-switch{text-align:center;margin:5px 0 12px}.login-method-switch button{font-size:13px;color:#9c7183;min-height:44px;padding:10px 20px}
@media(max-width:360px){.home-people{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-photo{height:145px}.top-header .brand{font-size:22px}.top-header .subbrand{font-size:8px;letter-spacing:2px}.city-pill{padding:8px;font-size:12px}.lux-banner{gap:7px;padding:14px 10px}.lux-banner b{font-size:16px}.lux-banner em{font-size:10px;padding:9px}.gem{font-size:30px}.profile-hero{flex-wrap:wrap}.profile-hero .edit-pill{margin-left:auto}.discovery-main{gap:8px}.discovery-main .avatar-wrap{width:36%;height:120px}.discovery-main h2{font-size:16px}.heart-button{margin:0;width:28px;height:28px;font-size:18px}.order-photo{width:70px;height:100px}.order-card{padding:13px}.order-title{flex-wrap:wrap}.dashboard-stats .stat{padding:12px 7px}.dashboard-stats strong{font-size:20px}.people-section h2 small{display:none}}
@media(max-width:760px){body[data-portal=admin]{padding:0}.admin-main .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-main .settings-form .grid{grid-template-columns:1fr!important}.admin-main header{align-items:start}.admin-main header>div{min-width:0}.admin-main .row{flex-wrap:wrap}.admin-main .table-wrap{overflow:visible;padding:0;background:transparent;border:0}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;white-space:normal;width:100%}.table-wrap thead{display:none}.table-wrap tr{background:white;border-radius:18px;margin:12px 0;padding:10px 14px;border:1px solid #f6e6ee}.table-wrap td{display:flex;gap:12px;justify-content:space-between;padding:9px 0;overflow-wrap:anywhere;align-items:flex-start;font-size:13px}.table-wrap td:before{content:attr(data-label);color:#958496;flex:0 0 90px;font-size:12px}.table-wrap td:last-child{border-bottom:0;flex-wrap:wrap}.table-wrap td button{min-height:36px;background:#fff0f6;border-radius:10px;margin:2px}.table-wrap td.empty{display:block}.table-wrap td.empty:before{display:none}.admin-main .settings-form{width:100%}.modal{padding:12px}.modal-panel{padding:18px;max-height:calc(100dvh - 24px)}.modal-panel .grid{grid-template-columns:1fr}.admin-login{margin:8vh auto;max-width:100%}.admin-main .stat strong{font-size:21px}.sidebar{position:sticky!important;top:0;z-index:8;background:#fff8fb}.admin-main .card .card{padding:0}}

.account-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.account-summary .balance-card{margin:0;padding:17px 12px;min-width:0}.account-summary .balance-amount{color:#80143f;font-size:29px}.account-summary .balance-card>small{color:#874964;font-weight:600}.account-summary .row{gap:5px;flex-wrap:wrap}.account-summary .compact{font-size:10px;padding:9px 8px}.member-tile{border:1px solid white;border-radius:23px;background:linear-gradient(120deg,#fffafc,#ffdce9);padding:15px 11px;text-align:left}.member-tile>b{font-size:14px;display:block;color:#6f2347}.member-tile p{font-size:12px;margin:9px 0 3px}.member-tile small{font-size:10px}.member-tile em{display:block;width:fit-content;margin-top:12px;border-radius:20px;background:var(--pink);color:white;font-size:11px;font-style:normal;padding:8px 12px}.partner-summary{grid-template-columns:1fr}.account-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);background:white;border-radius:22px;padding:16px 6px;margin:16px 0}.account-shortcuts i{display:block;font-size:25px;font-style:normal;color:var(--pink);margin-bottom:7px}.account-shortcuts b{font-size:12px}.account-menu{border-radius:22px;overflow:hidden}.v4-app .growth .level-track i{background:white!important}.v4-app .growth .level-track{background:#be3b7344!important}

.v4-app .order-tabs button.selected{background:linear-gradient(110deg,#ff1478,#ff987c);color:white;border-color:transparent}body[data-portal=partner] .order-actions .compact{flex:1}body[data-portal=partner] .order-actions>.link{width:100%;text-align:right;margin-top:3px}
