@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#31263e;--muted:#776d80;--primary:#7846a8;--primary-dark:#60338c;--rose:#e96e82;--gold:#f2b85b;--mint:#53ad9b;--paper:#fffaf6;--lav:#f2edfb;--line:#eee5ef;--shadow:0 16px 42px rgba(64,35,76,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;background:linear-gradient(180deg,#fffaf6 0,#fff 380px,#fff 100%);color:var(--ink);min-height:100vh}.navbar{box-shadow:0 6px 24px rgba(62,39,76,.06)}.navbar-brand,h1,h2,h3,.price{font-family:Manrope,sans-serif}.navbar-brand{font-size:1.42rem;letter-spacing:-.05em;color:var(--primary-dark)}.brand-mark{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:12px;background:linear-gradient(140deg,var(--rose),#f6a377);color:#fff;margin-right:5px;font-size:1.08rem;box-shadow:0 5px 14px #e96e8245}.navbar .nav-link{font-weight:600;color:#65566e;padding:.55rem .8rem!important;border-radius:99px;transition:.18s}.navbar .nav-link:hover{background:#f7effa;color:var(--primary)}
.text-primary{color:var(--primary)!important}.btn{font-weight:700;transition:transform .15s,box-shadow .15s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(115deg,var(--primary),#a3549b);border:0;box-shadow:0 8px 18px #7846a832}.btn-primary:hover,.btn-primary:focus{background:linear-gradient(115deg,var(--primary-dark),#923d88);box-shadow:0 10px 22px #7846a845}.btn-outline-primary{color:var(--primary);border-color:#c9b4df}.btn-outline-primary:hover{background:var(--lav);color:var(--primary-dark);border-color:#ab8bc7}.btn-success{background:var(--mint);border-color:var(--mint)}
main.container{max-width:1210px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:800;color:var(--rose)}.hero{position:relative;background:linear-gradient(112deg,#fff0df 0%,#ffe8ed 47%,#ece8ff 100%);border:1px solid #f8dfe5;border-radius:30px;overflow:hidden;box-shadow:0 22px 56px #9f5d7514}.hero:before,.hero:after{content:'';position:absolute;border-radius:50%;pointer-events:none}.hero:before{width:270px;height:270px;right:16%;top:-180px;background:#fff9}.hero:after{width:180px;height:180px;right:-45px;bottom:-95px;background:#f8cd9150}.hero h1{letter-spacing:-.055em;line-height:1.1;max-width:650px;color:#3b2b4a}.hero .lead{max-width:620px}.hero-art{width:230px;height:230px;border:12px solid #ffffff75;border-radius:50%;margin:auto;background:radial-gradient(circle at 30% 25%,#fff 0 10%,#ffd5dd 11% 35%,#e2d8ff 36% 70%,#ffe1b5 71%);display:grid;place-items:center;color:#aa598d;font-size:90px;box-shadow:0 25px 55px #7362ba30;position:relative;z-index:1}.filter-panel,.content-panel,.auth-card,.plan-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:22px;box-shadow:var(--shadow)}.filter-panel{background:linear-gradient(135deg,#fff 0%,#fffafd 100%);border-color:#f0e7ef}.form-control,.form-select{border-color:#e9dfe9;border-radius:12px;padding:.68rem .82rem;color:var(--ink);background-color:#fff}.form-control::placeholder{color:#aa9eaf}.form-control:focus,.form-select:focus{border-color:#b48bd0;box-shadow:0 0 0 .22rem #7846a81a}.form-label{font-size:.88rem;font-weight:700;color:#5f5269}.form-text{color:#8a7d90}.profile-card{border-radius:21px;background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:0 10px 32px #31263e0a;transition:transform .2s,box-shadow .2s}.profile-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px #31263e18}.photo-wrap{display:block;height:255px;position:relative;background:#f6edf5;overflow:hidden}.photo-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.profile-card:hover .photo-wrap img{transform:scale(1.035)}.photo-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(140deg,#ffe8e7,#ede4ff 62%,#fff0d9);color:#a770bd;font-size:60px}.photo-placeholder.large{min-height:440px}.feature-badge{position:absolute;top:13px;left:13px;background:linear-gradient(110deg,#ffe1a4,#ffd47f);color:#72501f;border-radius:99px;padding:6px 13px;font-size:.75rem;font-weight:800;box-shadow:0 6px 16px #6f4a1d22}.profile-about{color:#7b7182;font-size:.9rem;min-height:42px}.empty-state{background:#fff;border:1px dashed #d8c9df;border-radius:20px;padding:38px;text-align:center;color:#7a6f80;box-shadow:0 10px 32px #31263e08}.auth-card{max-width:560px;margin:24px auto;padding:34px;background:linear-gradient(145deg,#fff,#fff8fc)}.auth-card h1{color:#3b2b4a}.form-page{max-width:960px;margin:auto}.form-page>.content-panel{margin-top:18px}.stat-card{height:100%;background:linear-gradient(135deg,#fff 0%,#f8f0fb 100%);border:1px solid #eee1f0;border-radius:19px;padding:20px;box-shadow:0 8px 25px #31263e08}.stat-card small{display:block;color:var(--muted);margin-bottom:6px}.stat-card strong{font:800 1.9rem Manrope,sans-serif;color:var(--primary-dark)}.stat-card.compact{height:auto;padding:12px 22px}.stat-card.compact strong{font-size:1.4rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px}.details-grid>div{background:linear-gradient(135deg,#fff7f0,#f7f2fc);border:1px solid #f1e7ed;border-radius:14px;padding:12px}.details-grid small{display:block;color:var(--muted);font-size:.75rem}.details-grid strong{font-size:.92rem}.profile-gallery{display:grid;grid-template-columns:1fr 1fr;gap:9px}.profile-gallery img{width:100%;height:215px;object-fit:cover;border-radius:16px;border:2px solid #fff;box-shadow:0 5px 16px #33263c13}.profile-gallery img:first-child{grid-column:span 2;height:410px}.info-section{border-top:1px solid var(--line);padding:15px 0}.info-section h3{font-size:1rem;color:var(--primary-dark)}.info-section p{color:#6f6578;white-space:pre-wrap}.contact-box{background:linear-gradient(120deg,#f4edff,#fff0f2);border:1px solid #e7d9f3;border-radius:17px;padding:18px}.plan-card{height:100%;padding:28px;border-top:5px solid #c6afd9}.plan-card.recommended{border:2px solid var(--primary);border-top:5px solid var(--rose);box-shadow:0 16px 42px #7846a81d;transform:translateY(-4px)}.price{font-size:2.6rem;font-weight:800;letter-spacing:-.06em;margin:10px 0;color:var(--primary-dark)}.plan-card ul{min-height:116px;padding-left:20px;color:var(--muted);line-height:1.9}.mini-profile{height:100%;background:#fff;border:1px solid var(--line);border-radius:17px;padding:15px;display:flex;flex-direction:column;gap:5px;box-shadow:0 8px 24px #31263e08}.mini-photo{height:100px;width:100px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#ffe5e7,#ebe2ff);color:var(--primary);font-size:35px;margin:0 auto 6px}.mini-photo img{width:100%;height:100%;object-fit:cover}.mini-profile strong,.mini-profile small{text-align:center}.mini-profile small{color:var(--muted)}.mini-profile a{text-align:center;margin-top:6px}.photo-manage{position:relative}.photo-manage img{width:100%;height:120px;object-fit:cover;border-radius:13px}.photo-manage form{margin-top:5px}.moderation-form{min-width:225px}.message-bubble{background:#f6f0fa;border:1px solid #eee2f1;border-radius:14px;padding:12px;margin:10px 0}.chat-window{height:430px;overflow-y:auto;border:1px solid #eadfed;border-radius:17px;background:linear-gradient(145deg,#fffafd,#f8f5ff);padding:14px}.chat-line{width:fit-content;max-width:82%;padding:10px 14px;border-radius:16px;background:#eee7f8;margin:9px 0}.chat-line small{display:block;font-size:.7rem;color:var(--muted)}.chat-line.mine{margin-left:auto;background:#ffe8ec}.site-footer{padding:30px 0 90px;margin-top:55px;border-top:1px solid #f0e6ee;font-size:.85rem;color:var(--muted);background:linear-gradient(90deg,#fffaf5,#fff8fc)}.featured-strip{position:fixed;z-index:20;bottom:0;left:0;right:0;background:linear-gradient(95deg,#39294c,#58385e);color:#fff;padding:9px 14px;display:flex;gap:16px;align-items:center;box-shadow:0 -7px 25px #24152f30}.featured-strip>strong{white-space:nowrap;color:#ffd889;font-size:.8rem}.featured-track{display:flex;gap:12px;overflow:auto;scrollbar-width:none}.featured-track a{display:flex;align-items:center;gap:8px;white-space:nowrap;background:#ffffff17;border:1px solid #ffffff18;border-radius:30px;padding:4px 12px 4px 5px;color:#fff;text-decoration:none;font-size:.78rem}.featured-track img{height:34px;width:34px;object-fit:cover;border-radius:50%}.contact-hero{border-radius:25px;padding:34px;background:linear-gradient(115deg,#fff0df,#ffe8ef 55%,#efebff);border:1px solid #f3dce5}.contact-hero h1{letter-spacing:-.05em}.contact-point{display:flex;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.contact-point>span{height:38px;width:38px;border-radius:13px;background:#f6e9f6;color:var(--primary);display:grid;place-items:center;font-size:1.1rem}.contact-point strong,.contact-point small{display:block}.contact-point small{color:var(--muted);margin-top:2px}.ref-code{font-size:1.1rem;background:#fff1d9;color:#754c13;border:1px dashed #e7b75f;padding:9px 14px;border-radius:12px}.table{--bs-table-bg:transparent}.table thead th{color:#817387;font-size:.77rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.badge.text-bg-light{background:#f6eff8!important;color:#654973!important}
@media(max-width:767px){.hero{border-radius:22px}.hero h1{font-size:2.25rem}.filter-panel,.content-panel{padding:16px}.auth-card{padding:23px}.profile-gallery img:first-child{height:300px}.profile-gallery img{height:160px}.featured-strip{padding:8px}.featured-strip>strong{font-size:.68rem}.featured-track a{font-size:.72rem}.plan-card.recommended{transform:none}}

/* Bright, high-contrast refresh and responsive customer interactions */
:root{--ink:#28203a;--muted:#68617b;--primary:#d92e68;--primary-dark:#a91f54;--rose:#f04e79;--gold:#ffca55;--mint:#13a995;--paper:#fff9ec;--lav:#f0f4ff;--line:#e5e9f4;--shadow:0 16px 42px rgba(47,42,90,.10)}
body{background:radial-gradient(ellipse at 9% 0,#fff0c9 0,transparent 30%),radial-gradient(ellipse at 100% 12%,#ffe2ed 0,transparent 28%),linear-gradient(180deg,#fffdf7 0,#fff 420px)}
.navbar{border-bottom:3px solid #ffe06d!important}.navbar .nav-link{color:#483c62}.navbar .nav-link:hover{background:#fff0c8;color:#a91f54}.brand-mark{background:linear-gradient(140deg,#ed3d72,#ff975c);box-shadow:0 5px 14px #ed3d7244}
.btn-primary{background:linear-gradient(115deg,#d92e68,#f05668);box-shadow:0 8px 18px #d92e6830}.btn-primary:hover,.btn-primary:focus{background:linear-gradient(115deg,#b21e55,#dc3f5d)}.btn-success{background:linear-gradient(110deg,#0b9a88,#18b8a0);border:0}.btn-warning{background:#ffda67;border-color:#f5c63c;color:#533a00}.btn-warning:hover{background:#ffc943;color:#422f00}
.hero{background:linear-gradient(112deg,#fff0bd 0%,#ffdce9 48%,#dff4ff 100%);border-color:#ffd0d7;box-shadow:0 22px 56px #9f5d751c}.hero h1{color:#352344}.hero-art{background:radial-gradient(circle at 30% 25%,#fff 0 10%,#ffbdcb 11% 35%,#ddd2ff 36% 70%,#ffe68b 71%);color:#ce3f79}
.filter-panel{background:linear-gradient(135deg,#fff,#fff8e8);border-color:#f3dfaa}.content-panel,.auth-card,.plan-card{box-shadow:0 12px 34px rgba(67,48,95,.09);border-color:#e8e4f2}.stat-card{background:linear-gradient(135deg,#fff8d8,#ffe8ef 60%,#e6f8ff);border-color:#f0d7df}.stat-card strong{color:#a91f54}.details-grid>div{background:linear-gradient(135deg,#fff8e7,#f4efff);border-color:#e9e1f4}.profile-card{border-color:#eee0ee;box-shadow:0 12px 30px #40265012}.profile-card:hover{box-shadow:0 20px 42px #40265022}.photo-wrap{background:linear-gradient(135deg,#ffe0e9,#e3efff,#fff1bd)}.profile-placeholder{background:linear-gradient(135deg,#ffe1eb,#e1f4ff,#fff0bd)}
.ops-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.ops-links a{display:flex;align-items:center;min-height:76px;padding:18px;border:1px solid #f0d8a1;border-radius:18px;background:linear-gradient(120deg,#fff4cf,#ffe7ef 55%,#e8f5ff);color:#7b254f;font-weight:800;text-decoration:none;box-shadow:0 8px 24px #47325310;transition:.18s}.ops-links a:hover{transform:translateY(-2px);box-shadow:0 14px 30px #4732531b}
.proposal-list{display:grid;gap:10px}.proposal-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px;border:1px solid #ece4f2;border-radius:16px;background:linear-gradient(100deg,#fffdf7,#fff5f8 60%,#f2f8ff)}.proposal-person{display:flex;align-items:center;gap:12px;min-width:0}.proposal-person>div:last-child{display:grid;gap:3px}.proposal-person a{color:var(--ink);text-decoration:none}.proposal-person small{color:var(--muted)}.proposal-avatar{flex:0 0 64px;width:64px;height:64px;border-radius:18px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#ffe3ea,#e3efff);color:var(--primary);font-size:28px}.proposal-avatar img{width:100%;height:100%;object-fit:cover}.proposal-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.proposal-status{font-weight:800}.status-accepted{color:#0b907c!important}.status-reject,.status-block{color:#b22d53!important}.status-shortlist{color:#946500!important}.reject-note{max-width:600px;color:#a43a56!important;background:#fff0f3;border-radius:8px;padding:5px 8px}.photo-preview-image{width:100%;height:100px;object-fit:cover;border-radius:12px;border:2px solid #fff;box-shadow:0 5px 16px #30224320}
.swipe-action-form{touch-action:manipulation}.swipe-dismiss{opacity:0;transform:translateY(-18px) scale(.97);transition:opacity .2s,transform .2s}.skip-center{display:none}.gesture-toast{position:fixed;left:50%;bottom:88px;transform:translate(-50%,12px);z-index:70;padding:11px 18px;border-radius:99px;background:#30203f;color:#fff;font-weight:700;opacity:0;pointer-events:none;transition:.2s;box-shadow:0 8px 24px #24162b45}.gesture-toast.show{opacity:1;transform:translate(-50%,0)}
.chat-widget{position:fixed;z-index:80;left:18px;bottom:82px}.chat-launcher{display:flex;align-items:center;gap:9px;border:0;border-radius:99px;padding:12px 17px;background:linear-gradient(115deg,#d92e68,#f0646f);color:#fff;font-weight:800;box-shadow:0 10px 28px #84264c45}.chat-launcher>span{font-size:1.3rem}.chat-launcher small{font-size:.8rem}.chat-launcher.is-open{background:#452e60}.chat-panel{position:absolute;left:0;bottom:62px;width:min(370px,calc(100vw - 28px));height:480px;max-height:calc(100dvh - 125px);background:#fff;border:1px solid #eadff0;border-radius:22px;box-shadow:0 20px 60px #2f1b4a35;display:flex;flex-direction:column;overflow:hidden}.chat-panel[hidden]{display:none!important}.chat-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 17px;background:linear-gradient(110deg,#d92e68,#f0646f);color:#fff}.chat-panel>header strong,.chat-panel>header small{display:block}.chat-panel>header small{opacity:.9;font-size:.76rem}.chat-panel>header button{border:0;background:#ffffff25;color:#fff;border-radius:50%;width:34px;height:34px;font-size:1.5rem;line-height:1}.widget-chat-window{flex:1;overflow:auto;padding:12px;background:linear-gradient(145deg,#fffdf7,#fff4fa 58%,#eff8ff)}.chat-welcome{padding:12px;border-radius:15px;background:#fff0c7;color:#614318;font-size:.88rem}.widget-chat-form{display:flex;gap:8px;padding:10px;border-top:1px solid #eee5f1}.widget-chat-form input{flex:1;min-width:0;border:1px solid #e8deed;border-radius:14px;padding:10px 12px}.widget-chat-form button{width:42px;border:0;border-radius:13px;background:#d92e68;color:white;font-size:1.2rem}.widget-chat-error{min-height:0;padding:0 12px;color:#a91f54;font-size:.8rem}.widget-chat-error:not(:empty){padding-bottom:8px}.widget-chat-window .chat-line{max-width:88%;font-size:.9rem}.chat-line.mine{background:#dff5ed}.chat-line:not(.mine){background:#fff0c7}
.table-responsive{border-radius:16px}.table thead th{background:#fff5d9;color:#59476a}.table tbody tr:hover{background:#fff9ef}
@media(max-width:767px){.proposal-row{align-items:flex-start;flex-direction:column}.proposal-actions{justify-content:flex-start;width:100%}.proposal-actions form,.proposal-actions a{flex:1}.proposal-actions .btn{width:100%}.skip-center{display:block;position:fixed;z-index:60;left:50%;bottom:15px;transform:translateX(-50%);border:0;border-radius:99px;padding:10px 24px;background:#fff;color:#43334f;font-weight:800;box-shadow:0 6px 24px #321c3c35}.chat-widget{left:12px;bottom:76px}.chat-launcher{padding:11px 13px}.chat-launcher small{font-size:.73rem}.chat-panel{height:min(480px,calc(100dvh - 110px));bottom:58px}.featured-strip{padding-left:6px;padding-right:6px}.featured-strip>strong{max-width:64px;white-space:normal}.site-footer{padding-bottom:130px}.photo-wrap{height:270px}.swipe-action-form .btn{font-size:.75rem;padding:.42rem .65rem}}

/* Match possibility estimate */
.possibility-card{background:linear-gradient(145deg,#fff,#fff3f6 54%,#f0f6ff);border:1px solid #f0dce8;border-radius:24px;padding:24px;box-shadow:0 16px 38px #5a365514}
.possibility-photo{height:180px;width:180px;border-radius:22px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#ffe0eb,#e4e6ff,#fff0c7);color:#b42d66;font-size:4rem;margin:0 auto;text-align:center}
.possibility-photo img{height:100%;width:100%;object-fit:cover}
.possibility-card h2,.possibility-card>p{text-align:center}
.possibility-stat{display:flex;justify-content:space-between;align-items:center;margin-top:22px;color:#60556c;font-weight:700}
.possibility-stat strong{font-size:1.7rem;color:#ad285f}
.possibility-card .progress{height:12px;border-radius:20px;background:#eadfea}
.possibility-card .progress-bar{background:linear-gradient(90deg,#f5b74d,#dc3772);border-radius:20px}
.possibility-card .chance-progress .progress-bar{background:linear-gradient(90deg,#29b6a2,#5465d7)}
.match-reasons{display:grid;gap:8px}
.match-reason{display:grid;grid-template-columns:26px 1fr auto;gap:8px;align-items:center;border:1px solid #eee5f1;background:#fff;border-radius:13px;padding:11px 13px}
.match-reason>span{height:24px;width:24px;border-radius:50%;display:grid;place-items:center;background:#e4f7ef;color:#13826f;font-weight:800}
.match-reason strong{font-size:.92rem}.match-reason small{color:#827789;white-space:nowrap}.match-reason.muted>span{background:#f5f0f3;color:#8b7e8a}
.filter-panel .form-label{font-weight:700;color:#55455f;font-size:.8rem;margin-bottom:5px}
@media(max-width:575.98px){.possibility-card{padding:18px}.possibility-photo{height:145px;width:145px}.match-reason{grid-template-columns:24px 1fr;}.match-reason small{grid-column:2}.filter-panel{padding:13px}}
