/* Mangala Nakatha v3.8.1 — premium visual refresh + animation layer.
   Additive only: no API, permission or payment behaviour is changed here. */
@font-face{font-family:"MN Manrope";src:url('/assets/fonts/manrope-latin-variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"MN Display";src:url('/assets/fonts/cormorant-garamond-latin-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
:root{
  --mn-ink:#281c31;--mn-muted:#6f6676;--mn-plum:#6d2f79;--mn-plum-2:#8f4f8c;
  --mn-rose:#c76f91;--mn-blush:#f7e8ef;--mn-cream:#fffaf6;--mn-gold:#b78a3f;
  --mn-green:#25745c;--mn-line:rgba(79,45,88,.13);--mn-shadow:0 18px 50px rgba(58,29,66,.11);
  --mn-shadow-soft:0 10px 28px rgba(58,29,66,.075);--mn-radius:24px;--mn-radius-sm:16px;
}
html{scroll-behavior:smooth}
body{font-family:"MN Manrope","Noto Sans Sinhala","Iskoola Pota",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--mn-ink);background:
  radial-gradient(circle at 8% 8%,rgba(199,111,145,.08),transparent 26rem),
  radial-gradient(circle at 92% 25%,rgba(109,47,121,.07),transparent 28rem),#fffdfb}
h1,h2,h3,.page-hero h1,.profile-profession,.paid-profile-heading h2,.registration-card h2{font-family:"MN Display","Noto Serif Sinhala",Georgia,serif;letter-spacing:-.018em;color:var(--mn-ink)}
.page-hero{position:relative;overflow:hidden;background:linear-gradient(132deg,#52225f 0%,#78356f 44%,#bd6689 100%);isolation:isolate}
.page-hero::before,.page-hero::after{content:"";position:absolute;border-radius:999px;pointer-events:none;z-index:-1}
.page-hero::before{width:520px;height:520px;right:-130px;top:-260px;background:radial-gradient(circle,rgba(255,255,255,.16),transparent 66%)}
.page-hero::after{width:360px;height:360px;left:-130px;bottom:-220px;background:radial-gradient(circle,rgba(255,214,227,.2),transparent 68%)}
.page-hero h1{font-size:clamp(2.35rem,4.8vw,4.8rem);line-height:.98;color:#fff;text-shadow:0 8px 28px rgba(35,8,38,.14)}
.page-hero p:not(.eyebrow){max-width:760px;color:rgba(255,255,255,.88);font-size:1.04rem;line-height:1.72}
.page-hero .eyebrow.light{color:#ffe8f2;letter-spacing:.13em}
.vip-page-hero{background:linear-gradient(132deg,#3c2445 0%,#6f3f67 45%,#b58a44 115%)}
.section{position:relative}
.button{position:relative;overflow:hidden;border-radius:14px!important;font-family:"MN Manrope",system-ui,sans-serif!important;font-weight:760!important;letter-spacing:.005em;box-shadow:0 10px 22px rgba(100,44,112,.17);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,background .22s ease}
.button::after{content:"";position:absolute;inset:-80% -40%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.28) 50%,transparent 62%);transform:translateX(-55%);transition:transform .55s ease;pointer-events:none}
.button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(100,44,112,.23);filter:saturate(1.08)}
.button:hover::after{transform:translateX(55%)}
.button:active{transform:translateY(0) scale(.985)}
.button-outline,.button-secondary,.button-quiet{box-shadow:none}
input,select,textarea{font-family:"MN Manrope","Noto Sans Sinhala",system-ui,sans-serif!important;border-radius:13px!important;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease}
input:focus,select:focus,textarea:focus{border-color:rgba(109,47,121,.55)!important;box-shadow:0 0 0 4px rgba(109,47,121,.09)!important;background:#fff!important;outline:0}
.field label,.filter-bar label{font-weight:720;color:#403448}
.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:.74rem;font-weight:800}

/* Header/footer refinements */
.site-header{backdrop-filter:saturate(1.2) blur(16px);background:rgba(255,253,251,.88)!important;border-bottom:1px solid rgba(98,54,105,.09)}
.primary-nav a{border-radius:10px;transition:background .2s ease,color .2s ease,transform .2s ease}
.primary-nav a:hover{background:rgba(109,47,121,.06);transform:translateY(-1px)}
.primary-nav a.active{background:linear-gradient(135deg,rgba(109,47,121,.11),rgba(199,111,145,.09));color:var(--mn-plum)}
.announcement{background:linear-gradient(90deg,#3d1d48,#6d2f79 52%,#9a4d78);color:#fff}
.site-footer{background:linear-gradient(155deg,#28142f,#4c2055 62%,#652b60)!important;color:rgba(255,255,255,.86)}
.site-footer h3{color:#fff}.site-footer a{color:rgba(255,255,255,.8)}.site-footer a:hover{color:#fff}

/* Proposal catalogue — equal-height, aligned, premium text-only cards */
.text-proposals-page .section{padding-top:34px}
.text-proposals-page .page-shell{max-width:1240px}
.filter-bar{display:grid!important;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;gap:12px!important;align-items:end;padding:18px!important;border:1px solid var(--mn-line);border-radius:20px;background:rgba(255,255,255,.92);box-shadow:var(--mn-shadow-soft);margin-bottom:18px}
.filter-bar label{display:grid;gap:7px;font-size:.77rem;letter-spacing:.02em;color:#5c4f62}
.filter-bar input,.filter-bar select{min-height:44px;background:#fffafc;border:1px solid rgba(89,52,95,.16)}
.paid-access-banner{border-radius:20px!important;border:1px solid rgba(74,47,82,.1)!important;box-shadow:var(--mn-shadow-soft);padding:18px 20px!important;margin-bottom:28px;background:linear-gradient(120deg,#fff,#fff8fb)!important}
.paid-access-banner.is-active{background:linear-gradient(120deg,#f6fff9,#fbfffd)!important;border-color:rgba(37,116,92,.18)!important}
.paid-access-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(109,47,121,.09);font-size:19px}
.is-active .paid-access-icon{background:rgba(37,116,92,.11);color:var(--mn-green)}
.text-proposal-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px!important;align-items:stretch}
.text-proposal-card{display:flex!important;flex-direction:column;height:100%;min-width:0;border:1px solid var(--mn-line)!important;border-radius:22px!important;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fff9fc 100%)!important;box-shadow:var(--mn-shadow-soft)!important;transition:transform .3s cubic-bezier(.2,.75,.2,1),box-shadow .3s ease,border-color .3s ease}
.text-proposal-card:hover{transform:translateY(-7px);box-shadow:0 24px 54px rgba(67,32,74,.15)!important;border-color:rgba(109,47,121,.25)!important}
.text-proposal-card.vip-card{background:linear-gradient(180deg,#fffefa 0%,#fff9f4 100%)!important;border-color:rgba(183,138,63,.2)!important}
.text-proposal-top{min-height:66px;padding:15px 17px!important;background:linear-gradient(120deg,rgba(109,47,121,.11),rgba(199,111,145,.08))!important}
.vip-card .text-proposal-top{background:linear-gradient(120deg,rgba(109,47,121,.11),rgba(183,138,63,.11))!important}
.proposal-type-badge,.proposal-vip-badge{border:1px solid rgba(103,58,110,.09);box-shadow:0 4px 12px rgba(66,34,72,.06);white-space:nowrap}
.proposal-vip-badge{background:linear-gradient(135deg,#fff4cf,#fff);color:#7b5820}
.proposal-code{font-family:"MN Manrope",sans-serif;white-space:nowrap;color:#58445e}
.proposal-body{display:flex!important;flex:1;flex-direction:column;padding:20px!important}
.paid-profile-name{min-height:22px;margin:0 0 3px;color:var(--mn-plum);font-weight:760}
.profile-profession{min-height:56px;margin:0!important;font-size:1.55rem!important;line-height:1.08!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.profile-subline{min-height:26px;margin:10px 0 0!important;display:flex;align-items:center;gap:8px;color:#786d7d}
.profile-subline i{width:4px;height:4px;border-radius:50%;background:var(--mn-rose)}
.text-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:17px 0 0!important}
.text-detail-grid>div{display:grid;align-content:start;min-height:76px;padding:12px 13px;border:1px solid rgba(87,51,93,.08);border-radius:14px;background:rgba(255,255,255,.76)}
.text-detail-grid dt{font-size:.69rem;text-transform:uppercase;letter-spacing:.065em;font-weight:800;color:#938597}
.text-detail-grid dd{margin:4px 0 0;font-weight:680;line-height:1.35;color:#3f3244;overflow-wrap:anywhere}
.proposal-story{min-height:96px!important;max-height:118px;overflow:hidden;margin-top:12px!important;padding:13px 14px!important;border:1px solid rgba(109,47,121,.07);background:linear-gradient(135deg,rgba(109,47,121,.045),rgba(199,111,145,.04))!important}
.proposal-story strong{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--mn-plum)}
.member-contact-panel,.locked-profile-details{border-radius:16px!important;margin-top:14px!important}
.member-contact-panel{background:linear-gradient(135deg,#f7fff9,#fff)!important;border:1px solid rgba(37,116,92,.14)!important;box-shadow:inset 0 1px rgba(255,255,255,.8)}
.locked-profile-details{background:linear-gradient(135deg,#fff8fb,#fff)!important;border:1px solid rgba(109,47,121,.1)!important}
.contact-action{border-radius:12px!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.contact-action:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(37,116,92,.09)}
.verification-row{min-height:30px;margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}
.verification-row span{padding:6px 9px;border-radius:999px;background:rgba(37,116,92,.08);color:#21644f;font-weight:720;font-size:.72rem}
.profile-card-actions{display:grid;gap:10px;margin-top:auto!important;padding-top:16px}
.inline-proposal-form{display:grid;gap:8px}
.inline-proposal-form input{min-height:43px}
.visitor-reply-cta{position:relative;grid-template-columns:44px 1fr auto!important;min-height:70px;margin-top:2px!important;padding:14px 16px!important;background:linear-gradient(135deg,#5b256a 0%,#863d79 52%,#ba6288 100%)!important;border:1px solid rgba(255,255,255,.15)!important;box-shadow:0 14px 28px rgba(101,43,112,.22)!important;transition:transform .24s ease,box-shadow .24s ease,filter .24s ease}
.visitor-reply-cta::after{content:"→";grid-column:3;grid-row:1/3;align-self:center;font-size:22px;color:#fff;transition:transform .2s ease}
.visitor-reply-cta:hover{transform:translateY(-3px) scale(1.008);box-shadow:0 18px 34px rgba(101,43,112,.28)!important;filter:saturate(1.08)}
.visitor-reply-cta:hover::after{transform:translateX(4px)}
.visitor-reply-cta span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.13);font-size:20px!important}
.visitor-reply-cta strong{font-size:.89rem}.visitor-reply-cta small{font-size:.69rem!important;line-height:1.35}

/* Member profile detail */
.paid-profile-shell,.profile-editor-shell{max-width:1180px}
.paid-profile-layout{display:grid!important;grid-template-columns:320px minmax(0,1fr)!important;gap:26px!important;align-items:start}
.paid-profile-aside{position:sticky;top:104px;display:grid;gap:14px}
.text-profile-identity{position:relative;overflow:hidden;padding:28px 20px!important;border-radius:22px!important;background:linear-gradient(145deg,#fff0f6,#f7efff 62%,#fff)!important;border:1px solid rgba(109,47,121,.13)!important;box-shadow:var(--mn-shadow-soft)}
.text-profile-identity::after{content:"";position:absolute;width:130px;height:130px;right:-55px;top:-55px;border-radius:50%;background:rgba(199,111,145,.11)}
.text-profile-monogram{display:grid!important;place-items:center;width:74px;height:74px;margin:0 auto 13px!important;border-radius:22px;background:linear-gradient(135deg,#6d2f79,#b45f86);box-shadow:0 15px 28px rgba(109,47,121,.2);font-size:31px!important}
.paid-member-seal{border-radius:16px!important;background:linear-gradient(135deg,#f4fff8,#fff)!important;border:1px solid rgba(37,116,92,.14)!important}
.full-contact-panel{box-shadow:var(--mn-shadow-soft)}
.paid-profile-content{padding:26px!important;border:1px solid var(--mn-line);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:var(--mn-shadow)}
.paid-profile-heading{padding-bottom:20px;border-bottom:1px solid rgba(87,51,93,.09)}
.paid-profile-heading h2{font-size:clamp(2rem,3.3vw,3.1rem);line-height:1.02;margin:.15em 0}
.profile-tier-detail{background:linear-gradient(135deg,#5c2868,#a05a81)!important;color:#fff!important;border:0!important;box-shadow:0 9px 20px rgba(92,40,104,.18)}
.full-profile-detail-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important;margin-top:18px}
.full-profile-detail-grid>div{min-height:82px;padding:13px 14px;border-radius:15px;background:linear-gradient(145deg,#fffafd,#fff);border:1px solid rgba(93,56,99,.09)}
.full-profile-detail-grid dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.065em;font-weight:820;color:#928296}
.full-profile-detail-grid dd{margin:5px 0 0;font-weight:680;line-height:1.35;overflow-wrap:anywhere}
.full-profile-text-section{margin-top:15px;padding:18px 19px;border-radius:17px;border:1px solid rgba(109,47,121,.09);background:linear-gradient(135deg,rgba(109,47,121,.035),rgba(199,111,145,.035))}
.full-profile-text-section h3{margin:0 0 7px;font-size:1.45rem}.full-profile-text-section p{margin:0;line-height:1.72;color:#5d5061}
.full-profile-proposal-box{margin-top:20px;padding:20px!important;border-radius:20px!important;background:linear-gradient(135deg,#4c2159,#72326e 56%,#a4537d)!important;color:#fff;box-shadow:0 18px 38px rgba(73,31,85,.2)}
.full-profile-proposal-box h3,.full-profile-proposal-box .eyebrow{color:#fff}.full-profile-proposal-box p{color:rgba(255,255,255,.85)}
.full-profile-proposal-box input{background:rgba(255,255,255,.96)!important}

/* Profile editor */
.profile-editor-layout{display:grid!important;grid-template-columns:300px minmax(0,1fr)!important;gap:26px!important;align-items:start}
.profile-preview-panel{position:sticky;top:104px;display:grid;gap:12px}
.profile-preview-card{position:relative;overflow:hidden;padding:26px!important;border-radius:24px!important;background:linear-gradient(145deg,#5b2868 0%,#7d386f 53%,#bd6689 125%)!important;color:#fff!important;border:0!important;box-shadow:0 24px 52px rgba(76,32,88,.22)!important}
.profile-preview-card::before{content:"";position:absolute;width:180px;height:180px;right:-85px;top:-80px;border-radius:50%;background:rgba(255,255,255,.1)}
.profile-preview-card h2,.profile-preview-card .eyebrow{color:#fff}.profile-preview-profession,.profile-privacy-note p{color:rgba(255,255,255,.82)!important}
.profile-preview-avatar{display:grid!important;place-items:center;width:78px!important;height:78px!important;border-radius:24px!important;background:rgba(255,255,255,.15)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;font-family:"MN Display",serif;font-size:2rem!important;box-shadow:0 12px 30px rgba(31,10,36,.18)}
.profile-preview-meta span{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.16)!important;color:#fff!important}
.profile-progress-light{padding-top:15px;border-top:1px solid rgba(255,255,255,.14)}
.profile-progress-light div{color:#fff}.profile-progress-track{background:rgba(255,255,255,.16)!important}.profile-progress-track i{background:linear-gradient(90deg,#ffd6e4,#fff4c8)!important}
.profile-privacy-note{background:rgba(255,255,255,.095)!important;border-color:rgba(255,255,255,.13)!important}
.profile-editor-content{display:grid;gap:18px}
.registration-card.profile-details-card,.registration-card.profile-section-card{border:1px solid var(--mn-line)!important;border-radius:22px!important;background:rgba(255,255,255,.96)!important;box-shadow:var(--mn-shadow-soft)!important;padding:25px!important}
.profile-details-card h2,.profile-section-card h2{font-size:2rem;margin:.15em 0 .3em}
.card-intro{color:var(--mn-muted);line-height:1.65}
.profile-editor-content .form-grid{gap:14px!important}
.profile-editor-content .field{padding:0!important;background:transparent!important;border:0!important}
.profile-editor-content input,.profile-editor-content select,.profile-editor-content textarea{background:#fffbfd;border:1px solid rgba(87,51,93,.14)}
.upload-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px!important;border-radius:15px;background:#fffafd;border:1px solid rgba(87,51,93,.08)}
.preference-check{padding:12px 13px;border-radius:13px;background:#fffafd;border:1px solid rgba(87,51,93,.08)}

/* Generic surface animation hooks */
.mn-motion .mn-reveal{opacity:0;transform:translateY(18px) scale(.992);transition:opacity .62s cubic-bezier(.2,.7,.2,1),transform .62s cubic-bezier(.2,.7,.2,1)}
.mn-motion .mn-reveal.is-revealed{opacity:1;transform:none}
.mn-motion .text-proposal-grid .text-proposal-card:nth-child(3n+2){transition-delay:.05s}
.mn-motion .text-proposal-grid .text-proposal-card:nth-child(3n+3){transition-delay:.1s}
[data-registration-panel]:not([hidden]){animation:mnPanelIn .48s cubic-bezier(.2,.8,.2,1) both}
@keyframes mnPanelIn{from{opacity:0;transform:translateY(12px) scale(.992)}to{opacity:1;transform:none}}
@keyframes mnSoftPulse{0%,100%{box-shadow:0 0 0 5px rgba(109,47,121,.10),0 8px 20px rgba(109,47,121,.15)}50%{box-shadow:0 0 0 9px rgba(109,47,121,.035),0 10px 24px rgba(109,47,121,.18)}}

@media(max-width:1080px){
  .text-proposal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}
  .filter-bar .button{min-height:44px}
  .full-profile-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:820px){
  .paid-profile-layout,.profile-editor-layout{grid-template-columns:1fr!important}
  .paid-profile-aside,.profile-preview-panel{position:static}
  .profile-preview-panel{max-width:none}
}
@media(max-width:680px){
  .page-hero h1{font-size:2.45rem}.filter-bar{grid-template-columns:1fr 1fr;padding:14px!important}
  .filter-bar label:first-child,.filter-bar label:nth-child(4),.filter-bar label:nth-child(5),.filter-bar .button{grid-column:1/-1}
  .text-proposal-grid{grid-template-columns:1fr}.proposal-body{padding:17px!important}.profile-profession{min-height:auto}
  .text-detail-grid{grid-template-columns:1fr 1fr!important}.text-detail-grid>div{min-height:70px}
  .full-profile-detail-grid{grid-template-columns:1fr 1fr!important}.paid-profile-content{padding:18px!important}
  .upload-row{grid-template-columns:1fr}.visitor-reply-cta{grid-template-columns:42px 1fr auto!important}
}
@media(max-width:440px){.text-detail-grid,.full-profile-detail-grid{grid-template-columns:1fr!important}.filter-bar{grid-template-columns:1fr}.filter-bar label{grid-column:1!important}.profile-card-actions{gap:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mn-motion .mn-reveal,[data-registration-panel]:not([hidden]),.button,.text-proposal-card,.visitor-reply-cta,.contact-action{animation:none!important;transition:none!important;transform:none!important}.button::after{display:none}}
