
/* DATE48 CSS SOURCE 1: /assets/index-DUpOroX-.css */
.date48-match-celebration{z-index:1200;padding:18px;padding-bottom:calc(22px + env(safe-area-inset-bottom));place-items:end center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.date48-match-celebration__backdrop{-webkit-backdrop-filter:blur(14px);background:#0a080c94;border:0;width:100%;height:100%;padding:0;position:absolute;top:0;bottom:0;left:0;right:0}.date48-match-celebration__card{box-sizing:border-box;text-align:center;color:#171217;background:#fffffff2;border:1px solid #ffffff57;border-radius:30px;width:min(100%,420px);padding:30px 24px 22px;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000047}.date48-match-celebration__card:before{content:"";filter:blur(10px);pointer-events:none;background:#bd185929;border-radius:50%;width:190px;height:190px;position:absolute;top:-120px;left:50%;transform:translate(-50%)}.date48-match-celebration__spark{color:#bd1859;margin-bottom:12px;font-size:22px;position:relative}.date48-match-celebration__avatar{background:#bd185917;border-radius:50%;place-items:center;width:94px;height:94px;margin:0 auto 19px;font-size:30px;font-weight:700;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 5px #bd185914}.date48-match-celebration__avatar img{object-fit:cover;width:100%;height:100%}.date48-match-celebration__eyebrow{letter-spacing:.18em;color:#bd1859;margin:0 0 7px;font-size:10px;font-weight:700}.date48-match-celebration__card h2{letter-spacing:-.04em;margin:0;font-size:max(31px,min(9vw,42px));font-weight:650;line-height:1}.date48-match-celebration__copy{color:#171217a3;max-width:310px;margin:14px auto 22px;font-size:15px;line-height:1.45}.date48-match-celebration__actions{gap:9px;display:grid}.date48-match-celebration__actions button{min-height:50px;font:inherit;cursor:pointer;border:0;border-radius:16px}.date48-match-celebration__primary{color:#fff;background:#bd1859;font-weight:650}.date48-match-celebration__secondary{color:#3d343a;background:#1410140e}.date48-matches-page{box-sizing:border-box;width:min(100%,720px);padding:26px 16px calc(100px + env(safe-area-inset-bottom));margin:0 auto}.date48-matches-head{padding:14px 4px 25px}.date48-matches-head p{letter-spacing:.17em;color:#bd1859;margin:0 0 7px;font-size:10px;font-weight:700}.date48-matches-head h1{letter-spacing:-.045em;margin:0;font-size:max(34px,min(10vw,48px));line-height:.98}.date48-matches-head span{opacity:.58;max-width:440px;margin-top:12px;font-size:14px;line-height:1.45;display:block}.date48-matches-list{gap:10px;display:grid}.date48-match-row{width:100%;min-height:82px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:#7f7f7f0e;border:1px solid #7f7f7f24;border-radius:22px;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:13px;padding:10px 12px;display:grid}.date48-match-row__avatar{background:#bd185914;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:relative}.date48-match-row__avatar img{object-fit:cover;border-radius:50%;width:58px;height:58px}.date48-match-row__avatar>b{font-size:20px}.date48-match-row__avatar>i{color:#fff;background:#bd1859;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;font-style:normal;display:grid;position:absolute;bottom:-2px;right:-1px;box-shadow:0 0 0 3px #ffffffe6}.date48-match-row__body{gap:5px;min-width:0;display:grid}.date48-match-row__body strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.date48-match-row__body small{text-overflow:ellipsis;white-space:nowrap;opacity:.55;font-size:12px;overflow:hidden}.date48-match-row__meta{opacity:.45;justify-items:end;gap:5px;display:grid}.date48-match-row__meta small{font-size:11px}.date48-match-row__meta b{font-size:24px;font-weight:300;line-height:1}.date48-matches-status,.date48-matches-empty{background:#7f7f7f0e;border:1px solid #7f7f7f24;border-radius:26px}.date48-matches-status{text-align:center;opacity:.62;padding:28px}.date48-matches-empty{text-align:center;padding:38px 24px}.date48-matches-empty>div{color:#bd1859;font-size:34px}.date48-matches-empty h2{margin:13px 0 7px;font-size:24px}.date48-matches-empty p{opacity:.58;max-width:330px;margin:0 auto 20px;line-height:1.45}.date48-matches-empty button{color:#fff;min-height:46px;font:inherit;background:#bd1859;border:0;border-radius:15px;padding:0 22px;font-weight:650}@media (prefers-color-scheme:dark){.date48-match-celebration__card{color:#fff;background:#19161bf5}.date48-match-celebration__copy{color:#ffffff9e}.date48-match-celebration__secondary{color:#fff;background:#ffffff14}.date48-match-row__avatar>i{box-shadow:0 0 0 3px #141216f2}}.date48-chat-page{min-height:100dvh;padding:0 0 calc(154px + env(safe-area-inset-bottom));background:linear-gradient(#fff 0%,#fcf9fa 100%)}.date48-chat-page--state{place-items:center;min-height:calc(100dvh - 82px);padding:24px;display:grid}.date48-chat-state{text-align:center;background:#fffffff0;border:1px solid #22161c14;border-radius:26px;width:min(100%,420px);padding:28px 22px;box-shadow:0 18px 60px #1f141914}.date48-chat-state button{font:inherit;background:0 0;border:0}.date48-chat-state h1{margin:18px 0 8px;font-size:24px}.date48-chat-state p{color:#231a1f9e;margin:0;line-height:1.5}.date48-chat-head{z-index:30;min-height:72px;padding:max(8px, env(safe-area-inset-top)) 14px 8px;-webkit-backdrop-filter:blur(18px);background:#ffffffe6;border-bottom:1px solid #24191f12;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;display:grid;position:sticky;top:0}.date48-chat-head__back,.date48-chat-head__date{color:#221a1e;width:40px;height:40px;font:inherit;background:#2b1f250e;border:0;border-radius:50%;place-items:center;display:grid}.date48-chat-head__back{font-size:25px}.date48-chat-head__date{font-size:13px;font-weight:800}.date48-chat-person{text-align:left;background:0 0;border:0;align-items:center;gap:10px;min-width:0;padding:0 8px;display:flex}.date48-chat-person__avatar{color:#6e525d;background:#f0e7ea;border-radius:50%;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid;overflow:hidden}.date48-chat-person__avatar img{object-fit:cover;width:100%;height:100%}.date48-chat-person__copy{min-width:0}.date48-chat-person__copy strong,.date48-chat-person__copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.date48-chat-person__copy strong{color:#21181c;font-size:15px;font-weight:760}.date48-chat-person__copy small{color:#a54a70;margin-top:2px;font-size:11px;font-weight:650}.date48-chat-thread{width:min(100%,680px);margin:0 auto;padding:22px 14px 24px}.date48-chat-intro{text-align:center;width:min(100%,330px);margin:4px auto 26px}.date48-chat-intro>span{color:#ad4f76;background:#f8e9ef;border-radius:50%;place-items:center;width:42px;height:42px;margin:0 auto 10px;display:grid}.date48-chat-intro strong{color:#21191d;font-size:16px;display:block}.date48-chat-intro p{color:#22191d85;margin:5px 0 0;font-size:13px;line-height:1.45}.date48-chat-message{justify-content:flex-start;margin:7px 0;display:flex}.date48-chat-message.is-mine{justify-content:flex-end}.date48-chat-message>div{color:#21191d;background:#f0ecee;border-radius:18px 18px 18px 6px;max-width:min(82%,430px);padding:10px 12px 7px}.date48-chat-message.is-mine>div{color:#fff;background:#211a1d;border-radius:18px 18px 6px}.date48-chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.38}.date48-chat-message small{color:#23191e6e;text-align:right;margin-top:3px;font-size:9px;display:block}.date48-chat-message.is-mine small{color:#ffffff8a}.date48-chat-error{right:16px;bottom:calc(150px + env(safe-area-inset-bottom));z-index:42;color:#fff;text-align:center;background:#801f3eed;border-radius:14px;max-width:520px;margin:0 auto;padding:9px 12px;font-size:12px;position:fixed;left:16px}.date48-chat-composer{right:0;bottom:calc(72px + env(safe-area-inset-bottom));z-index:40;-webkit-backdrop-filter:blur(16px);background:#fffffff5;border:1px solid #22181d14;border-radius:25px;grid-template-columns:minmax(0,1fr) 44px;gap:8px;width:min(100% - 20px,680px);margin:0 auto;padding:8px;display:grid;position:fixed;left:0;box-shadow:0 12px 40px #26191f1c}.date48-chat-composer textarea{resize:none;color:#21191d;width:100%;min-height:42px;max-height:112px;font:inherit;background:0 0;border:0;outline:0;padding:10px 8px 8px;font-size:15px;line-height:1.35}.date48-chat-composer textarea::placeholder{color:#22181d5e}.date48-chat-composer>button{color:#fff;width:42px;height:42px;font:inherit;background:#21191d;border:0;border-radius:50%;align-self:end;font-size:20px;font-weight:700}.date48-chat-composer>button:disabled{opacity:.3}@media (max-width:820px){.date48-chat-page{width:100vw;width:100dvw;max-width:100vw;margin-left:-50vw;max-width:100dvw;margin-left:-50dvw;position:relative;left:50%;overflow-x:clip}.date48-chat-thread{width:100%;max-width:none;padding:18px max(10px, env(safe-area-inset-right)) 30px max(10px, env(safe-area-inset-left));margin:0}.date48-chat-head{width:100%;padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right))}.date48-chat-message>div{max-width:84%}}.date48-chat-composer--v2{border-radius:27px;grid-template-columns:40px minmax(0,1fr) 42px;gap:5px;width:min(100% - 12px,760px);padding:6px}.date48-chat-composer__field{background:#26191f0b;border-radius:22px;align-items:flex-end;min-width:0;display:flex}.date48-chat-composer--v2 textarea{min-height:40px;padding:10px 10px 8px}.date48-chat-composer--v2 .date48-chat-composer__emoji{color:#5d4a53;background:0 0;border:0;border-radius:50%;align-self:end;place-items:center;width:40px;height:40px;font-size:24px;line-height:1;display:grid}.date48-chat-composer--v2 .date48-chat-composer__emoji.is-active{color:#ae2b64;background:#ae2b641a}.date48-chat-composer--v2 .date48-chat-composer__send{color:#fff;width:42px;height:42px;font:inherit;background:#21191d;border:0;border-radius:50%;align-self:end;place-items:center;font-size:20px;font-weight:750;display:grid}.date48-chat-composer--v2 .date48-chat-composer__send:disabled{opacity:.26}.date48-chat-emoji-panel{right:6px;bottom:calc(128px + env(safe-area-inset-bottom));z-index:41;-webkit-backdrop-filter:blur(22px);background:#fffffff7;border:1px solid #22181d14;border-radius:24px;width:min(100% - 12px,520px);margin:0 auto;padding:10px;position:fixed;left:6px;box-shadow:0 18px 60px #26191f21}.date48-chat-emoji-panel__grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;display:grid}.date48-chat-emoji-panel__grid button{aspect-ratio:1;background:0 0;border:0;border-radius:14px;place-items:center;min-width:0;font-size:25px;display:grid}.date48-chat-emoji-panel__grid button:active{background:#ae2b6417;transform:scale(.92)}@media (max-width:380px){.date48-chat-emoji-panel__grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.date48-chat-emoji-panel{overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;max-height:min(42dvh,350px);overflow-y:auto}.date48-chat-emoji-panel::-webkit-scrollbar{display:none}@media (max-width:820px){html,body,#root{width:100%!important;min-width:0!important;max-width:100%!important;overflow-x:clip!important}.app-page:has(.date48-chat-page){box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow-x:clip!important;overflow-y:visible!important}.app-shell:has(.date48-chat-page){box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow-x:clip!important;overflow-y:visible!important}.screen-body:has(.date48-chat-page){box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow-x:clip!important;overflow-y:visible!important}.app-shell:has(.date48-chat-page){padding-left:0!important;padding-right:0!important}.screen-body:has(.date48-chat-page){padding-left:0!important;padding-right:0!important}.date48-chat-page{box-sizing:border-box!important;overscroll-behavior-x:none!important;touch-action:pan-y!important;width:100%!important;min-width:0!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;position:relative!important;left:auto!important;right:auto!important;overflow-x:clip!important;overflow-y:visible!important;transform:none!important}.date48-chat-head,.date48-chat-thread,.date48-chat-composer,.date48-chat-emoji-panel,.date48-chat-message{box-sizing:border-box!important;min-width:0!important;max-width:100%!important}.date48-chat-head{z-index:120!important;-webkit-backdrop-filter:blur(18px)saturate(1.12)!important;backdrop-filter:blur(18px)saturate(1.12)!important;background:#fffffffa!important;width:100%!important;margin-left:0!important;margin-right:0!important;position:sticky!important;top:0!important;left:0!important;right:0!important;transform:none!important}.date48-chat-thread{width:100%!important;padding-left:max(12px, env(safe-area-inset-left))!important;padding-right:max(12px, env(safe-area-inset-right))!important}.date48-chat-message>div{overflow-wrap:anywhere!important;word-break:break-word!important;min-width:0!important;max-width:82%!important}.date48-chat-composer,.date48-chat-emoji-panel{box-sizing:border-box!important;max-width:calc(100% - 12px)!important}}body.date48-direct-chat-open .bottom-nav,body.date48-direct-chat-open .date48-clean-bottom-bar{display:none!important}.date48-chat-composer--v2{grid-template-columns:40px 40px minmax(0,1fr) 44px}.date48-chat-composer__attachment{color:#4c2537c7;cursor:pointer;background:#ffffffbd;border:0;border-radius:50%;place-items:center;width:40px;min-width:40px;height:40px;padding:0;font-size:28px;font-weight:300;line-height:1;display:grid;box-shadow:inset 0 0 0 1px #4c253714}.date48-chat-composer__attachment:active{transform:scale(.94)}.date48-chat-composer__attachment:disabled{opacity:.42;cursor:default}.date48-chat-photo-preview{z-index:126;left:max(10px, env(safe-area-inset-left));right:max(10px, env(safe-area-inset-right));bottom:calc(72px + max(8px, env(safe-area-inset-bottom)));-webkit-backdrop-filter:blur(22px)saturate(1.15);backdrop-filter:blur(22px)saturate(1.15);background:#ffffffeb;border-radius:20px;align-items:center;gap:11px;width:auto;max-width:720px;margin:0 auto;padding:9px 12px 9px 9px;display:flex;position:fixed;box-shadow:0 14px 44px #2e141f29,inset 0 0 0 1px #602e4414}.date48-chat-photo-preview__media{flex:0 0 62px;width:62px;height:62px;position:relative}.date48-chat-photo-preview__media img{object-fit:cover;border-radius:15px;width:100%;height:100%;display:block}.date48-chat-photo-preview__media button{color:#fff;background:#301d25e6;border:0;border-radius:50%;place-items:center;width:23px;height:23px;padding:0;font-size:18px;line-height:1;display:grid;position:absolute;top:-6px;right:-6px}.date48-chat-photo-preview__copy{gap:3px;min-width:0;display:grid}.date48-chat-photo-preview__copy strong{color:#38242d;font-size:14px;line-height:1.2}.date48-chat-photo-preview__copy small{color:#38242d85;font-size:12px}.date48-chat-message>.date48-chat-bubble.has-photo{padding:5px;overflow:hidden}.date48-chat-message>.date48-chat-bubble.has-photo p{margin:7px 8px 2px}.date48-chat-message>.date48-chat-bubble.has-photo small{padding:3px 7px 5px;display:block}.date48-chat-photo-bubble{cursor:zoom-in;background:#eee7eab8;border:0;border-radius:18px;width:min(72vw,360px);max-width:100%;margin:0;padding:0;display:block;overflow:hidden}.date48-chat-photo-bubble img{object-fit:cover;width:100%;max-height:440px;display:block}.date48-chat-photo-lightbox{z-index:1000;padding:max(58px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(26px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#140e11e0;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.date48-chat-photo-lightbox img{object-fit:contain;border-radius:22px;max-width:100%;max-height:100%;display:block;box-shadow:0 28px 80px #0000005c}.date48-chat-photo-lightbox__close{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));color:#fff;background:#ffffff24;border:0;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-size:29px;line-height:1;display:grid;position:absolute}@media (max-width:640px){.date48-chat-photo-bubble{width:min(75vw,330px)}.date48-chat-photo-preview{left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right))}}:root{color:#171717;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8f3ec;font-family:Inter,system-ui,sans-serif}html,body,#root{width:100%;min-height:100%;margin:0}body{background:radial-gradient(circle at 8% 10%,#b4577924,#0000 24%),radial-gradient(circle at 88% 14%,#9154ad14,#0000 18%),linear-gradient(#fcfaf7 0%,#f4ede4 100%);min-height:100vh}*{box-sizing:border-box}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0}.app-page{min-height:100vh;padding:0}.app-shell{width:min(100%,460px);min-height:100vh;margin:0 auto;padding:14px 14px 120px}.brand{background:#ffffffc7;border:1px solid #ecdfd6f5;border-radius:999px;align-items:center;gap:10px;min-width:0;padding:8px 12px;display:flex;box-shadow:0 8px 20px #2f1a150d}.brand__logo{object-fit:contain;border-radius:10px;width:36px;height:36px}.brand__copy{flex-direction:column;display:flex}.brand__copy strong{font-size:16px;line-height:1.05}.brand__copy span{color:#736964;margin-top:3px;font-size:11px}.topbar__actions{gap:8px;display:flex}.icon-btn,.pill-btn{color:#241f1c;background:#ffffffd1;border:1px solid #ecdfd6f5;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 14px;display:inline-flex;box-shadow:0 8px 20px #2f1a150d}.icon-btn{width:42px;min-width:42px;padding:0}.screen-body{display:block}.page-stack{gap:16px;display:grid}.section-card{background:#ffffffa8;border:1px solid #ecdfd6f5;border-radius:28px;padding:18px;box-shadow:0 12px 28px #2e19140d}.section-card--accent{background:linear-gradient(135deg,#ffffff8f 0%,#ffffff75 100%),linear-gradient(135deg,#f2e0d7 0%,#f9efe9 100%)}.section-kicker{color:#8b2d4d;letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.section-card h1{margin:0;font-size:20px;line-height:1.15}.section-card p{color:#5f5651;margin:10px 0 0;font-size:15px;line-height:1.6}.section-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-row strong{font-size:20px}.stories-row{scrollbar-width:none;grid-auto-columns:72px;grid-auto-flow:column;gap:12px;display:grid;overflow-x:auto}.story{flex-direction:column;align-items:center;gap:7px;display:flex}.story span{color:#4f4742;font-size:12px}.story__ring{background:linear-gradient(135deg,#ff647f 0%,#b356ff 50%,#ffd057 100%);border-radius:999px;place-items:center;width:68px;height:68px;padding:3px;display:grid}.story__avatar{background:radial-gradient(circle at 50% 28%,#ffffff85,#0000 18%),linear-gradient(#d9c8be 0%,#bd9e8d 100%);border:3px solid #faf5ef;border-radius:999px;width:100%;height:100%}.accent-btn{color:#fff;background:linear-gradient(135deg,#a72f59 0%,#7f2042 100%);border-radius:999px;min-height:48px;margin-top:16px;padding:0 20px;box-shadow:0 12px 24px #7f20423d}.card-list{gap:14px;display:grid}.profile-card{background:#ffffffbd;border:1px solid #ecdfd6f5;border-radius:24px;overflow:hidden}.profile-card__visual{background:radial-gradient(circle at 60% 22%,#ffffff47,#0000 18%),linear-gradient(135deg,#93294b 0%,#d69d8e 100%);min-height:180px}.profile-card__body{padding:16px}.profile-card__body strong{font-size:18px;display:block}.profile-card__body p{margin:8px 0 0}.bottom-nav{z-index:50;background:#ffffffeb;border:1px solid #ecdfd6f5;border-radius:24px;grid-template-columns:repeat(5,1fr);gap:8px;width:auto;max-width:440px;margin:0 auto;padding:10px;display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 14px 28px #522f421f}.bottom-nav__item{color:#2f2b2eb8;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:56px;display:flex}.bottom-nav__item.is-active{color:#181418f2;background:#f8f3edf2}.bottom-nav__item--primary{color:#fff;background:linear-gradient(#d86b98 0%,#ae2b64 100%);border-radius:20px;min-height:68px;margin-top:-10px;box-shadow:0 10px 20px #ae2b6438}.bottom-nav__icon{font-size:18px;line-height:1}@media (max-width:420px){.brand__copy span{display:none}.bottom-nav__label{font-size:10px}}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-width:0;max-width:100%}html,body{overflow-x:clip}@supports not (overflow:clip){html,body{overflow-x:hidden}}img,picture,video,canvas,svg{max-width:100%;height:auto}input,textarea,select,button{max-width:100%}pre,code{white-space:pre-wrap;word-break:break-word}[id],[class]{min-width:0}html,body,#root{max-width:100%;overflow-x:clip}@supports not (overflow:clip){html,body,#root{overflow-x:hidden}}.topbar{align-items:center;gap:12px}.brand__copy,.topbar__actions{display:none!important}.stories-strip{overflow:hidden;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.story{flex:none;align-items:center;gap:0;width:54px;min-width:54px}.story__ring{border-radius:999px;width:52px;height:52px;padding:3px;border:2px solid var(--date48-red)!important;box-shadow:none!important;background:0 0!important}.story__avatar{border-radius:999px;width:42px;height:42px}@media (max-width:760px){.topbar{margin-bottom:0!important;padding-bottom:0!important}.brand__logo{border-radius:17px;width:50px;height:50px}.page-stack{padding-top:0!important}.stories-strip{width:calc(100vw - 82px)!important;max-width:calc(100vw - 82px)!important;margin-top:-58px!important;margin-bottom:18px!important;margin-left:66px!important}.stories-row{gap:13px}.story{width:50px;min-width:50px}.story__ring{width:48px;height:48px;padding:3px}.story__avatar{width:38px;height:38px}}.stories-row{scrollbar-width:none;align-items:flex-start;margin:0;padding:0;display:flex;overflow-x:auto;gap:16px!important}.story{flex:none;justify-content:center;align-items:center;display:flex;width:74px!important;min-width:74px!important}.story__ring{border-radius:999px;border:3px solid var(--date48-red)!important;width:72px!important;height:72px!important;box-shadow:none!important;background:0 0!important;padding:3px!important}.story__avatar{border-radius:999px;background-position:50%!important;background-repeat:no-repeat!important;background-size:cover!important;width:62px!important;height:62px!important}.story__avatar--male1{background:radial-gradient(circle at 50% 28%,#ffffff59,#0000 18%),linear-gradient(#d9b39b 0 38%,#c18d6d 38% 58%,#6d4a3e 58% 100%)}.story__avatar--male2{background:radial-gradient(circle at 46% 26%,#ffffff4d,#0000 18%),linear-gradient(#d5b49f 0 37%,#b98261 37% 58%,#7a5d53 58% 100%)}.story__avatar--male3{background:radial-gradient(circle at 53% 24%,#ffffff52,#0000 18%),linear-gradient(#d9bca8 0 36%,#bf8b6a 36% 58%,#534c52 58% 100%)}.story__avatar--male4{background:radial-gradient(circle at 50% 24%,#ffffff52,#0000 18%),linear-gradient(#d8b9a5 0 36%,#b88468 36% 58%,#2d2d33 58% 100%)}.story__avatar--male5{background:radial-gradient(circle at 50% 25%,#ffffff52,#0000 18%),linear-gradient(#d8b59d 0 36%,#b97e5c 36% 58%,#5c4039 58% 100%)}.story__avatar--female1{background:radial-gradient(circle at 50% 26%,#ffffff59,#0000 18%),linear-gradient(#e6c0b1 0 36%,#c78e7c 36% 57%,#7b473d 57% 100%)}.story__avatar--female2{background:radial-gradient(circle at 48% 24%,#ffffff59,#0000 18%),linear-gradient(#ecc7ba 0 36%,#d38f7d 36% 57%,#473347 57% 100%)}.story__avatar--female3{background:radial-gradient(circle at 50% 26%,#ffffff57,#0000 18%),linear-gradient(#ebc2b2 0 36%,#d58c79 36% 57%,#2a2a34 57% 100%)}.story__avatar--female4{background:radial-gradient(circle at 51% 24%,#ffffff57,#0000 18%),linear-gradient(#edcaba 0 36%,#d38a7a 36% 57%,#6b4d34 57% 100%)}.story__avatar--female5{background:radial-gradient(circle at 50% 25%,#ffffff57,#0000 18%),linear-gradient(#efcbbc 0 36%,#d79282 36% 57%,#5a3548 57% 100%)}.profile-card__visual{background-position:50%!important;background-repeat:no-repeat!important;background-size:cover!important}.profile-card__visual--male1{background:radial-gradient(circle at 62% 20%,#fff3,#0000 16%),linear-gradient(135deg,#8d214c 0%,#c56b80 48%,#e3ae9e 100%)}.profile-card__visual--male2{background:radial-gradient(circle at 58% 18%,#fff3,#0000 16%),linear-gradient(135deg,#743f51 0%,#b97b78 48%,#d9c2a8 100%)}.profile-card__visual--male3{background:radial-gradient(circle at 58% 18%,#fff3,#0000 16%),linear-gradient(135deg,#5b2944 0%,#9b6075 48%,#d6a18f 100%)}.profile-card__visual--female1{background:radial-gradient(circle at 60% 18%,#ffffff38,#0000 16%),linear-gradient(135deg,#9b274f 0%,#cc7384 48%,#e6b29e 100%)}.profile-card__visual--female2{background:radial-gradient(circle at 60% 18%,#ffffff38,#0000 16%),linear-gradient(135deg,#8b3b60 0%,#bf8096 48%,#e1b69e 100%)}.profile-card__visual--female3{background:radial-gradient(circle at 60% 18%,#ffffff38,#0000 16%),linear-gradient(135deg,#7c3552 0%,#c86c81 48%,#e1b49b 100%)}@media (max-width:760px){.stories-strip{width:calc(100vw - 94px)!important;max-width:calc(100vw - 94px)!important;box-shadow:none!important;background:0 0!important;border:0!important;margin-top:-78px!important;margin-bottom:18px!important;margin-left:78px!important;padding:0!important}.stories-row{gap:14px!important}.story{width:72px!important;min-width:72px!important}.story__ring{width:70px!important;height:70px!important}.story__avatar{width:60px!important;height:60px!important}}:root{--date48-red:#a61946}.topbar{justify-content:space-between!important;align-items:center!important;gap:16px!important;margin-bottom:14px!important;display:flex!important}.brand{box-shadow:none!important;background:0 0!important;border:0!important;width:auto!important;min-width:0!important;padding:0!important}.brand__copy{display:none!important}.brand__logo{object-fit:cover;border-radius:18px;width:56px;height:56px;display:block;box-shadow:0 14px 28px #2a111f21}.topbar__actions{display:none!important}.topbar__settings{color:#24181d;-webkit-backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #3c2d341a;border-radius:18px;place-items:center;width:50px;height:50px;padding:0;display:grid;box-shadow:0 14px 34px #28161e1a}.topbar__settings svg{width:25px;height:25px}.stories-strip{width:100%!important;max-width:100%!important;box-shadow:none!important;background:0 0!important;border:0!important;margin:0 0 20px!important;padding:0!important;overflow:hidden!important}.stories-row{scrollbar-width:none;align-items:center!important;gap:16px!important;margin:0!important;padding:0 2px 2px!important;display:flex!important;overflow-x:auto!important}.stories-row::-webkit-scrollbar{display:none}.story{flex:none!important;justify-content:center!important;align-items:center!important;width:74px!important;min-width:74px!important;display:flex!important}.story span{display:none!important}.story__ring{border:3px solid var(--date48-red)!important;width:72px!important;height:72px!important;box-shadow:none!important;background:0 0!important;border-radius:999px!important;padding:3px!important}.story__avatar{background-position:50%!important;background-size:cover!important;border-radius:999px!important;width:60px!important;height:60px!important}.story--create{width:74px!important;min-width:74px!important}.story-create-btn{width:72px;height:72px;color:var(--date48-red);background:radial-gradient(circle at 50% 35%,#ffffffeb,#fff6f9bd),linear-gradient(135deg,#a619461a,#ffffff8a);border:2.5px dashed #a6194673;border-radius:999px;place-items:center;padding:0;display:grid;box-shadow:0 12px 28px #a6194614}.story-create-btn span{font-size:38px;font-weight:400;line-height:1;transform:translateY(-2px);display:block!important}@media (max-width:760px){.topbar{margin-bottom:14px!important}.brand__logo{border-radius:18px;width:54px;height:54px}.topbar__settings{border-radius:17px;width:48px;height:48px}.stories-strip{width:100%!important;max-width:100%!important;margin-top:0!important;margin-bottom:20px!important;margin-left:0!important}.stories-row{gap:15px!important;padding-left:0!important;padding-right:0!important}.story,.story--create{width:72px!important;min-width:72px!important}.story__ring,.story-create-btn{width:70px!important;height:70px!important}.story__avatar{width:58px!important;height:58px!important}}.bottom-nav__icon{place-items:center;display:grid}.bottom-nav__item--primary{min-width:92px}.bottom-nav__item--primary .bottom-nav__icon{font-size:2rem;font-weight:500;line-height:1}.bottom-nav__item--primary .bottom-nav__label{white-space:nowrap;margin-top:2px;font-size:.86rem;line-height:1}.bottom-nav{left:16px;right:16px;bottom:max(8px, env(safe-area-inset-bottom));padding:3px 6px calc(3px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px)saturate(145%);z-index:50;background:linear-gradient(#ffffff85,#fffbfc66);border:1px solid #ffffffc2;border-radius:18px;justify-content:space-between;align-items:flex-end;gap:2px;display:flex;position:fixed;overflow:visible;box-shadow:0 6px 14px #2e18220f,0 2px 4px #2e182208,inset 0 1px #ffffffd1}.bottom-nav:before{content:"";pointer-events:none;background:linear-gradient(#ffffff24,#ffffff08);border-radius:17px;position:absolute;top:1px;bottom:1px;left:1px;right:1px}.bottom-nav__item{z-index:1;color:#2c1d23ad;border-radius:11px;flex-direction:column;flex:1 1 0;justify-content:flex-end;align-items:center;gap:2px;min-width:42px;padding:4px 2px 3px;text-decoration:none;transition:transform .16s,background .16s,color .16s,box-shadow .16s,opacity .16s;display:flex;position:relative}.bottom-nav__item.is-active:not(.bottom-nav__item--primary){color:#1a1216e6;background:#ffffff2e;box-shadow:inset 0 1px #ffffff42}.bottom-nav__icon{place-items:center;min-height:14px;font-size:.92rem;line-height:1;display:grid}.bottom-nav__label{letter-spacing:.005em;white-space:nowrap;font-size:.58rem;line-height:1}.bottom-nav__couple-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.bottom-nav__item--primary{-webkit-backdrop-filter:blur(10px);background:linear-gradient(#f46cadf5 0%,#ce206ff7 100%);border:1px solid #ffffff4d;border-radius:17px;flex:0 0 62px;min-width:62px;padding:0 0 1px;transform:translateY(-5px);box-shadow:0 6px 12px #b2266824,0 2px 5px #b2266814,inset 0 1px #ffffff38;color:#fff!important}.bottom-nav__item--primary:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 18%,#ffffff24,#0000 34%);border-radius:16px;position:absolute;top:1px;bottom:1px;left:1px;right:1px}.bottom-nav__item--primary .bottom-nav__icon{min-height:auto;margin-top:5px;font-size:1.08rem;font-weight:500}.bottom-nav__item--primary .bottom-nav__label{white-space:nowrap;opacity:.98;margin-bottom:5px;font-size:.56rem;line-height:1}.bottom-nav__item--primary.is-active{color:#fff!important}@media (max-width:760px){.bottom-nav{left:14px;right:14px;bottom:max(7px, env(safe-area-inset-bottom));padding:3px 5px calc(3px + env(safe-area-inset-bottom));border-radius:17px;gap:2px}.bottom-nav:before{border-radius:16px}.bottom-nav__item{gap:2px;min-width:39px;padding:4px 1px 3px}.bottom-nav__icon{min-height:13px;font-size:.88rem}.bottom-nav__label{font-size:.56rem}.bottom-nav__couple-icon{width:16px;height:16px}.bottom-nav__item--primary{border-radius:16px;flex-basis:60px;min-width:60px;transform:translateY(-5px)}.bottom-nav__item--primary:before{border-radius:15px}.bottom-nav__item--primary .bottom-nav__icon{margin-top:4px;font-size:1.04rem}.bottom-nav__item--primary .bottom-nav__label{margin-bottom:4px;font-size:.54rem}}.bottom-nav{bottom:max(7px, env(safe-area-inset-bottom))!important;padding:2px 5px calc(2px + env(safe-area-inset-bottom))!important;border-radius:16px!important;gap:2px!important}.bottom-nav:before{border-radius:15px!important}.bottom-nav__item{border-radius:10px!important;gap:1px!important;min-width:38px!important;padding:2px 1px!important}.bottom-nav__icon{min-height:12px!important;font-size:.84rem!important}.bottom-nav__label{font-size:.54rem!important;line-height:1!important}.bottom-nav__item--primary{border-radius:16px!important;flex:0 0 60px!important;min-width:60px!important;margin-top:-10px!important;margin-bottom:-1px!important;padding:0 0 1px!important;transform:none!important}.bottom-nav__item--primary .bottom-nav__icon{margin-top:4px!important;font-size:1.02rem!important}@media (max-width:760px){.bottom-nav{left:14px!important;right:14px!important;bottom:max(6px, env(safe-area-inset-bottom))!important;padding:2px 4px calc(2px + env(safe-area-inset-bottom))!important;border-radius:15px!important}.bottom-nav:before{border-radius:14px!important}.bottom-nav__item{gap:1px!important;min-width:36px!important;padding:2px 1px!important}.bottom-nav__icon{min-height:11px!important;font-size:.8rem!important}.bottom-nav__label{font-size:.52rem!important}.bottom-nav__couple-icon{width:15px!important;height:15px!important}.bottom-nav__item--primary{border-radius:15px!important;flex-basis:58px!important;min-width:58px!important;margin-top:-9px!important;margin-bottom:-1px!important}.bottom-nav__item--primary:before{border-radius:14px!important}.bottom-nav__item--primary .bottom-nav__icon{margin-top:4px!important;font-size:.98rem!important}.bottom-nav__item--primary .bottom-nav__label{margin-bottom:4px!important;font-size:.52rem!important}}.bottom-nav{left:16px!important;right:16px!important;bottom:max(10px, env(safe-area-inset-bottom))!important;-webkit-backdrop-filter:blur(18px)saturate(150%)!important;background:linear-gradient(#ffffff94,#fffafc70)!important;border:1px solid #ffffffc7!important;border-radius:22px!important;justify-content:space-between!important;align-items:center!important;gap:4px!important;height:56px!important;min-height:56px!important;max-height:56px!important;padding:5px 8px!important;display:flex!important;overflow:visible!important;box-shadow:0 10px 24px #2e182214,0 2px 6px #2e18220a,inset 0 1px #ffffffdb!important}.bottom-nav:before{border-radius:21px!important;top:1px!important;bottom:1px!important;left:1px!important;right:1px!important}.bottom-nav__item{border-radius:16px!important;justify-content:center!important;align-items:center!important;gap:3px!important;min-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:4px 2px 3px!important;display:flex!important}.bottom-nav__icon{min-height:16px!important;font-size:1rem!important;line-height:1!important}.bottom-nav__label{white-space:nowrap!important;font-size:.66rem!important;line-height:1!important}.bottom-nav__couple-icon{width:19px!important;height:19px!important}.bottom-nav__item--primary{border-radius:20px!important;flex:0 0 64px!important;align-self:flex-start!important;width:64px!important;min-width:64px!important;height:64px!important;min-height:64px!important;max-height:64px!important;margin-top:-16px!important;margin-bottom:0!important;padding:0!important;transform:none!important}.bottom-nav__item--primary:before{border-radius:19px!important}.bottom-nav__item--primary .bottom-nav__icon{min-height:auto!important;margin-top:10px!important;font-size:1.32rem!important}.bottom-nav__item--primary .bottom-nav__label{margin-bottom:9px!important;font-size:.64rem!important}@media (max-width:760px){.bottom-nav{left:14px!important;right:14px!important;bottom:max(9px, env(safe-area-inset-bottom))!important;border-radius:21px!important;height:54px!important;min-height:54px!important;max-height:54px!important;padding:5px 7px!important}.bottom-nav:before{border-radius:20px!important}.bottom-nav__item{gap:2px!important;height:42px!important;min-height:42px!important;max-height:42px!important;padding:4px 1px 3px!important}.bottom-nav__icon{min-height:15px!important;font-size:.96rem!important}.bottom-nav__label{font-size:.64rem!important}.bottom-nav__couple-icon{width:18px!important;height:18px!important}.bottom-nav__item--primary{border-radius:19px!important;flex-basis:62px!important;width:62px!important;min-width:62px!important;height:62px!important;min-height:62px!important;max-height:62px!important;margin-top:-15px!important}.bottom-nav__item--primary:before{border-radius:18px!important}.bottom-nav__item--primary .bottom-nav__icon{margin-top:9px!important;font-size:1.28rem!important}.bottom-nav__item--primary .bottom-nav__label{margin-bottom:8px!important;font-size:.62rem!important}}.section-card--feed .profile-card{-webkit-backdrop-filter:blur(10px);background:linear-gradient(#ffffffeb,#fffbfcdb)!important;border:1px solid #e6daddeb!important;border-radius:28px!important;overflow:hidden!important;box-shadow:0 18px 34px #341a2414,0 4px 10px #341a240a,inset 0 1px #ffffffbf!important}.section-card--feed .profile-card__visual{border-radius:0!important;width:100%!important;height:290px!important;min-height:290px!important;margin:0!important;display:block!important}.section-card--feed .profile-card__body{padding:24px 22px!important}.section-card--feed .profile-card__body strong{margin-bottom:12px;font-size:1.02rem;line-height:1.15;display:block}.section-card--feed .pill-btn{background:#ffffffd1!important;border:1px solid #ded4d8f2!important;box-shadow:0 6px 16px #3018220d,inset 0 1px #ffffffc2!important}@media (max-width:760px){.section-card--feed .section-row{padding:0 2px 12px!important}.section-card--feed .card-list{gap:16px}.section-card--feed .profile-card{border-radius:26px!important}.section-card--feed .profile-card__visual{height:240px!important;min-height:240px!important}.section-card--feed .profile-card__body{padding:20px 18px!important}.section-card--feed .profile-card__body strong{margin-bottom:10px;font-size:.98rem}.section-card--feed .profile-card__body p{font-size:.94rem;line-height:1.52}}.section-card--feed .card-list{display:grid;gap:24px!important}.section-card--feed .profile-card__visual{width:100%!important;height:320px!important;min-height:320px!important;box-shadow:none!important;border-radius:0!important;margin:0!important;display:block!important;overflow:hidden!important}.section-card--feed .profile-card__body strong{display:block;margin:0 0 10px!important;font-size:1.08rem!important;line-height:1.12!important}@media (max-width:760px){.section-card--feed .section-row{padding:0 2px 12px!important}.section-card--feed .card-list{gap:22px!important}.section-card--feed .profile-card__visual{height:250px!important;min-height:250px!important}.section-card--feed .profile-card__body{padding:16px 0 0!important}.section-card--feed .profile-card__body strong{margin-bottom:8px!important;font-size:1rem!important}.section-card--feed .profile-card__body p{font-size:.96rem!important;line-height:1.5!important}}.section-card--feed{box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.section-card--feed .section-row{margin:0!important;padding:0 2px 14px!important}.section-card--feed .card-list{gap:28px!important;display:grid!important}.section-card--feed .profile-card{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;overflow:visible!important}.section-card--feed .profile-card__visual{width:100%!important;height:max(480px,min(72vh,760px))!important;min-height:480px!important;max-height:760px!important;box-shadow:none!important;background-position:50%!important;background-repeat:no-repeat!important;background-size:cover!important;border-radius:0!important;margin:0!important;display:block!important;overflow:hidden!important}.section-card--feed .profile-card__body{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;padding:16px 0 0!important}.section-card--feed .profile-card__body strong{color:#181215fa!important;margin:0 0 10px!important;font-size:1.14rem!important;line-height:1.12!important;display:block!important}.section-card--feed .profile-card__body p{color:#4c4348eb!important;margin:0!important;font-size:1rem!important;line-height:1.58!important}.section-card--feed .pill-btn{box-shadow:none!important;background:#ffffffb8!important;border:1px solid #e0d6d9f2!important}@media (max-width:760px){.section-card--feed .section-row{padding:0 2px 12px!important}.section-card--feed .card-list{gap:24px!important}.section-card--feed .profile-card__visual{height:68vh!important;min-height:430px!important;max-height:620px!important}.section-card--feed .profile-card__body{padding:14px 0 0!important}.section-card--feed .profile-card__body strong{margin-bottom:8px!important;font-size:1.02rem!important}.section-card--feed .profile-card__body p{font-size:.96rem!important;line-height:1.52!important}}.bottom-nav__item--primary{color:#fff!important;background:radial-gradient(circle at 50% 18%,#ffffff42,#0000 36%),linear-gradient(#f65aa9 0%,#c81968 100%)!important;border:1px solid #ffffff6b!important;box-shadow:0 9px 18px #c6196838,0 3px 8px #c619681f,inset 0 1px #ffffff4d!important}.bottom-nav__item--primary .bottom-nav__icon,.bottom-nav__item--primary .bottom-nav__label{color:#fff!important;opacity:1!important}.bottom-nav__item--primary.is-active{color:#c81968!important;background:linear-gradient(#ffffffc2,#fffafc94)!important;border:1px solid #ffffffd1!important;box-shadow:0 7px 16px #2c141f14,0 2px 6px #2c141f0a,inset 0 1px #ffffffe6!important}.bottom-nav__item--primary.is-active .bottom-nav__icon,.bottom-nav__item--primary.is-active .bottom-nav__label{color:#c81968!important;opacity:1!important;text-shadow:none!important}.bottom-nav__item--primary.is-active:before{background:radial-gradient(circle at 50% 14%,#ffffff61,#0000 40%)!important}.date48-page{color:#201a1d;background:0 0;min-height:auto;padding:0 0 118px}.date48-stories{margin:0 -16px 16px;overflow:hidden}.date48-stories__label{color:#bd1461;letter-spacing:.02em;padding:0 16px 10px;font-size:13px;font-weight:750}.date48-stories__row{scrollbar-width:none;gap:18px;padding:0 16px 10px;display:flex;overflow-x:auto}.date48-stories__row::-webkit-scrollbar{display:none}.date48-story,.date48-story-add{color:#2f272c;min-width:72px;font:inherit;text-align:center;background:0 0;border:0;flex:none;padding:0}.date48-story-add span,.date48-story__avatar{border-radius:999px;place-items:center;width:72px;height:72px;margin:0 auto 7px;display:grid}.date48-story-add span{color:#44333b;background:#ffffff9e;border:3px dashed #d03d7c6b;font-size:34px}.date48-story__avatar{border:3px solid #bd0a5b;position:relative;box-shadow:0 8px 20px #bc0b5b29}.date48-story__avatar:before{content:"";border-radius:inherit;background:radial-gradient(circle at 50% 28%,#ffffff9e,#0000 26%),linear-gradient(#ffffff4d,#512d3757);position:absolute;top:5px;bottom:5px;left:5px;right:5px}.date48-story__avatar b{z-index:1;color:#ffffffe0;text-shadow:0 2px 12px #00000038;font-size:24px;position:relative}.date48-story__avatar i{z-index:2;background:#5ccd43;border:3px solid #fff8f7;border-radius:999px;width:15px;height:15px;position:absolute;bottom:4px;right:0}.date48-story--rose{background:linear-gradient(135deg,#f5b9c8,#9f365b)}.date48-story--peach{background:linear-gradient(135deg,#f4c1a4,#7c5146)}.date48-story--cream{background:linear-gradient(135deg,#f9dccc,#b67589)}.date48-story--berry{background:linear-gradient(135deg,#d685a4,#4f3644)}.date48-story--sand{background:linear-gradient(135deg,#f1cba9,#68504d)}.date48-story small,.date48-story-add small{color:#241d21c7;font-size:13px;display:block}.date48-mode-card,.date48-geo-card,.date48-profile-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffb8;border:1px solid #8252601a;border-radius:28px;box-shadow:0 20px 46px #6036451c}.date48-mode-card{background:radial-gradient(circle at 84% 12%,#ee21851c,#0000 34%),linear-gradient(#ffffffd1,#fff7f9c2);padding:22px 18px 18px}.date48-muted{color:#251c21b8;max-width:450px;margin:13px 0 0;font-size:16px;line-height:1.45}.date48-toggle{background:#3d303629;border:0;border-radius:999px;width:82px;height:46px;padding:4px;transition:all .22s;box-shadow:inset 0 0 0 1px #3c263014}.date48-toggle span{background:#fff;border-radius:999px;width:38px;height:38px;transition:all .22s;display:block;box-shadow:0 7px 18px #5a263f2e}.date48-toggle.is-on{background:linear-gradient(135deg,#d60072,#b00058)}.date48-mode-state{text-align:right;color:#bd0a5b;letter-spacing:.22em;margin-top:8px;font-size:12px;font-weight:900}.date48-chip.is-active{color:#fff;background:linear-gradient(135deg,#d51572,#b7005c);border-color:#0000;box-shadow:0 14px 22px #c30c6233}.date48-geo-card{grid-template-columns:minmax(0,1fr) 154px;align-items:center;gap:12px;margin-top:14px;padding:15px;display:grid}.date48-geo-card__text p{color:#241b20d1;align-items:center;gap:8px;margin:0 0 9px;font-size:15px;display:flex}.date48-geo-card__text span{color:#cf116b}.date48-geo-card__text button{color:#bf0c61;background:#ffe7eeb8;border:0;border-radius:999px;margin-top:5px;padding:11px 18px;font-size:14px;font-weight:800}.date48-map-preview{background:linear-gradient(33deg,#0000 0 36%,#bec59738 37% 43%,#0000 44%),linear-gradient(145deg,#0000 0 28%,#e5b8ab3d 29% 34%,#0000 35%),repeating-linear-gradient(45deg,#d1b4aa38 0 2px,#0000 2px 24px),repeating-linear-gradient(-40deg,#d1b4aa2e 0 2px,#0000 2px 28px),#fff3ee;border-radius:18px;min-height:112px;position:relative;overflow:hidden}.date48-map-preview__halo{background:#e5198029;border:2px solid #d3137157;border-radius:999px;width:82px;height:82px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.date48-map-preview__pin{background:#cf0d69;border:4px solid #fff;border-radius:999px;width:17px;height:17px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 8px #cf0d691c}.date48-feed-head{justify-content:space-between;align-items:center;margin:24px 2px 12px;display:flex}.date48-feed-head h2{letter-spacing:-.04em;margin:0;font-size:27px}.date48-feed-head button{color:#45333b;background:#ffffffbd;border:1px solid #5f3e4b1a;border-radius:999px;padding:11px 17px;font-size:14px;box-shadow:0 10px 20px #522d3c12}.date48-profile-card{background:radial-gradient(circle at 78% 35%,#ffffff24,#0000 14%),radial-gradient(circle at 74% 40%,#d29a82 0 9%,#0000 10%),radial-gradient(circle at 79% 29%,#452a25 0 16%,#0000 17%),linear-gradient(90deg,#ffffffeb 0 42%,#ffffff2e 62%),linear-gradient(135deg,#f0d7ca,#a56258 56%,#3e2d33);align-items:flex-start;min-height:232px;padding:22px;display:flex;position:relative;overflow:hidden}.date48-profile-card__info{z-index:1;max-width:62%;position:relative}.date48-profile-card h3{letter-spacing:-.04em;margin:0 0 10px;font-size:26px}.date48-ready-badge{color:#bf0d61;background:#ffe7efdb;border-radius:999px;align-items:center;padding:8px 12px;font-size:13px;font-weight:850;display:inline-flex}.date48-profile-card p{color:#221b1fb8;margin:12px 0 0;font-size:15px;line-height:1.35}.date48-save{z-index:1;color:#2e252a;background:#ffffffdb;border:0;border-radius:999px;width:42px;height:42px;font-size:24px;position:absolute;top:16px;right:16px;box-shadow:0 10px 20px #4126321f}@media (max-width:380px){.date48-mode-card{padding:19px 14px 15px}.date48-mode-card h1{font-size:24px}.date48-geo-card{grid-template-columns:1fr}.date48-map-preview{min-height:96px}}.date48-benefits{color:#b80b5c;flex-wrap:wrap;gap:8px 14px;margin:14px 0 0;font-size:13px;font-weight:750;display:flex}.date48-feed-head>div{min-width:0}.date48-feed-head p{color:#2a212694;margin:4px 0 0;font-size:13px;font-weight:650}.date48-profile-card{cursor:pointer}.date48-profile-card--rose{background:radial-gradient(circle at 78% 35%,#ffffff24,#0000 14%),radial-gradient(circle at 74% 40%,#d29a82 0 9%,#0000 10%),radial-gradient(circle at 79% 29%,#452a25 0 16%,#0000 17%),linear-gradient(90deg,#ffffffeb 0 42%,#ffffff2e 62%),linear-gradient(135deg,#f0d7ca,#a56258 56%,#3e2d33)}.date48-profile-card--peach{background:radial-gradient(circle at 78% 35%,#ffffff2e,#0000 14%),radial-gradient(circle at 75% 42%,#efc4ac 0 10%,#0000 11%),radial-gradient(circle at 80% 30%,#7d564c 0 17%,#0000 18%),linear-gradient(90deg,#ffffffed 0 43%,#ffffff2e 63%),linear-gradient(135deg,#f6ddd0,#cf8c74 56%,#624044)}.date48-profile-card--berry{background:radial-gradient(circle at 78% 35%,#ffffff2e,#0000 14%),radial-gradient(circle at 75% 42%,#d99ab4 0 10%,#0000 11%),radial-gradient(circle at 80% 30%,#583241 0 17%,#0000 18%),linear-gradient(90deg,#ffffffed 0 43%,#ffffff29 63%),linear-gradient(135deg,#f3d6e2,#b26480 56%,#352a34)}.date48-empty{background:radial-gradient(circle at 90% 20%,#d8126f17,#0000 34%),#ffffffb8;border:1px solid #8252601a;border-radius:28px;padding:24px 20px;box-shadow:0 20px 46px #6036451a}.date48-empty h3{letter-spacing:-.04em;margin:0;font-size:24px}.date48-empty p{color:#251c21ad;margin:10px 0 18px;font-size:15px;line-height:1.45}.date48-empty button{color:#fff;background:linear-gradient(135deg,#d51572,#b7005c);border:0;border-radius:999px;width:100%;min-height:48px;font-size:15px;font-weight:850;box-shadow:0 16px 28px #c30c6238}.date48-chip:disabled,.date48-toggle:disabled{opacity:.72}.person-page{color:#201a1d;padding:0 0 118px}.person-back{color:#bd0a5b;align-items:center;margin-bottom:14px;font-weight:850;text-decoration:none;display:inline-flex}.person-page__loading{color:#2a21269e;margin:20px 0}.person-hero,.person-card{border:1px solid #8252601a;border-radius:30px;overflow:hidden;box-shadow:0 20px 46px #6036451c}.person-hero{color:#fff;background:radial-gradient(circle at 58% 30%,#ffffff2e,#0000 14%),radial-gradient(circle at 58% 28%,#d89a82 0 11%,#0000 12%),radial-gradient(circle at 60% 18%,#4f302a 0 20%,#0000 21%),linear-gradient(#ffffff0d 0 42%,#23141cd6 100%),linear-gradient(135deg,#f0d7ca,#a56258 58%,#3e2d33);align-items:flex-end;min-height:430px;padding:22px;display:flex;position:relative}.person-hero__save{color:#33272d;background:#ffffffd6;border:0;border-radius:999px;width:46px;height:46px;font-size:26px;position:absolute;top:18px;right:18px;box-shadow:0 12px 24px #2f1a2429}.person-hero__content{z-index:1;position:relative}.person-badge{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#c40c61d1;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:850;display:inline-flex}.person-hero h1{letter-spacing:-.055em;margin:14px 0 6px;font-size:40px;line-height:1}.person-hero p{color:#ffffffc7;margin:0;font-size:17px}.person-card{background:#ffffffbd;margin-top:14px;padding:22px}.person-card h1,.person-card h2{letter-spacing:-.045em;margin:0;font-size:25px;line-height:1.12}.person-card p{color:#2a2126a8;line-height:1.45}.person-chips{flex-wrap:wrap;gap:9px;margin-top:18px;display:flex}.person-chips span{color:#bd0a5b;background:#ffe7eebd;border-radius:999px;padding:10px 14px;font-size:14px;font-weight:800}.person-actions{grid-template-columns:1fr;gap:10px;margin-top:14px;display:grid}.person-actions button{color:#fff;background:linear-gradient(135deg,#d51572,#b7005c);border:0;border-radius:999px;min-height:52px;font-size:15px;font-weight:900;box-shadow:0 16px 28px #c30c6233}.person-actions button+button{color:#bd0a5b;background:#ffffffc7;box-shadow:0 12px 22px #522d3c14}.date48-map-preview{border:0;padding:0}.date48-map-sheet{z-index:80;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.date48-map-sheet__backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f171d47;border:0;position:absolute;top:0;bottom:0;left:0;right:0}.date48-map-sheet__panel{z-index:1;width:min(100%,560px);max-height:88dvh;padding:10px 18px max(24px, env(safe-area-inset-bottom));background:radial-gradient(circle at 88% 12%,#e519801a,#0000 34%),linear-gradient(#fffaf9,#fff3f4);border-radius:32px 32px 0 0;position:relative;overflow:auto;box-shadow:0 -22px 52px #2b192233}.date48-map-sheet__handle{background:#2c20262e;border-radius:999px;width:46px;height:5px;margin:2px auto 18px}.date48-map-sheet__head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.date48-map-sheet__head h3{letter-spacing:-.045em;margin:0;font-size:25px;line-height:1.05}.date48-map-sheet__head button{color:#362930;background:#ffffffd1;border:0;border-radius:999px;width:42px;height:42px;font-size:28px;line-height:1;box-shadow:0 10px 20px #532d3c14}.date48-map-shell{background:#fff3ee;border-radius:28px;height:330px;margin-top:18px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #8352601a}.date48-yandex-map{z-index:1;opacity:0;transition:opacity .24s;position:absolute;top:0;bottom:0;left:0;right:0}.date48-yandex-map.is-ready{opacity:1}.date48-map-fallback{z-index:2;background:linear-gradient(33deg,#0000 0 36%,#bec59740 37% 43%,#0000 44%),linear-gradient(145deg,#0000 0 28%,#e5b8ab47 29% 34%,#0000 35%),repeating-linear-gradient(45deg,#d1b4aa47 0 3px,#0000 3px 34px),repeating-linear-gradient(-40deg,#d1b4aa38 0 3px,#0000 3px 38px),#fff3ee;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.date48-map-fallback p{color:#271e23b8;background:#ffffffc7;border-radius:18px;margin:0;padding:12px 14px;font-size:13px;font-weight:700;position:absolute;bottom:16px;left:18px;right:18px;box-shadow:0 12px 26px #4e2c3a1a}.date48-map-sheet__halo{background:#e5198029;border:2px solid #d313715c;border-radius:999px;width:190px;height:190px;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 48px #e519800f}.date48-map-sheet__pin{background:#cf0d69;border:5px solid #fff;border-radius:999px;width:22px;height:22px;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 12px #cf0d6921}.date48-map-sheet__label{color:#be0c60;background:#ffffffd6;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:900;position:absolute;top:calc(43% + 106px);left:50%;transform:translate(-50%);box-shadow:0 12px 24px #552d3c1a}.date48-radius-row,.date48-district-row{scrollbar-width:none;gap:9px;padding:16px 0 0;display:flex;overflow-x:auto}.date48-radius-row::-webkit-scrollbar{display:none}.date48-district-row::-webkit-scrollbar{display:none}.date48-radius-row button,.date48-district-row button{color:#3a2d34;background:#ffffffc7;border:1px solid #5934411f;border-radius:999px;flex:none;min-height:40px;padding:0 15px;font-size:14px;font-weight:780}.date48-radius-row button.is-active,.date48-district-row button.is-active{color:#fff;background:linear-gradient(135deg,#d51572,#b7005c);border-color:#0000;box-shadow:0 14px 22px #c30c622e}.date48-map-apply{color:#fff;background:linear-gradient(135deg,#d51572,#b7005c);border:0;border-radius:999px;width:100%;min-height:52px;margin-top:18px;font-size:15px;font-weight:900;box-shadow:0 16px 28px #c30c6238}@media (max-width:380px){.date48-map-shell{height:270px}}.date48-geo-actions button{margin-top:0}.date48-geo-actions button+button{color:#3d3036;background:#ffffffc2}.date48-geo-actions button:disabled,.date48-location-button:disabled{opacity:.68}.date48-location-button{color:#bd0a5b;background:#ffffffd1;border:0;border-radius:999px;width:100%;min-height:48px;margin-top:14px;font-size:15px;font-weight:900;box-shadow:0 12px 24px #532d3c14}.date48-location-button span{margin-right:8px}.date48-map-note{color:#2b2026c7;background:#ffffffb8;border-radius:18px;margin:12px 2px 0;padding:12px 14px;font-size:13px;font-weight:700;line-height:1.35}.date48-map-hint{color:#2b2026c2;background:#ffffffb8;border-radius:18px;margin:12px 2px 0;padding:12px 14px;font-size:13px;font-weight:750;line-height:1.35}.date48-map-points{scrollbar-width:none;gap:9px;padding:12px 0 0;display:flex;overflow-x:auto}.date48-map-points::-webkit-scrollbar{display:none}.date48-map-points button{color:#bd0a5b;background:#ffffffd1;border:1px solid #5934411f;border-radius:999px;flex:none;min-height:38px;padding:0 14px;font-size:13px;font-weight:850;box-shadow:0 10px 18px #532d3c0f}.date48-yandex-map{cursor:crosshair}.date48-map-shell:after{content:"Тапни точку на карте";z-index:4;color:#bd0a5b;pointer-events:none;background:#ffffffd6;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;position:absolute;top:14px;left:14px;box-shadow:0 10px 20px #532d3c1a}.date48-map-shell:has(.date48-yandex-map.is-ready):after{content:"Тапни по карте — переставим радиус"}.date48-mode-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:radial-gradient(circle at 92% 4%,#fffffff5 0 2%,#0000 18%),radial-gradient(circle at 88% 20%,#d80f7129,#0000 34%),radial-gradient(circle at 5% 94%,#ffdde7db,#0000 42%),linear-gradient(145deg,#ffffffeb,#fff2f7c7);border:1px solid #ffffffb8;border-radius:30px;margin-top:12px;padding:24px 18px 18px;position:relative;overflow:hidden;box-shadow:0 28px 58px #723e5024,inset 0 0 0 1px #8e4a6214}.date48-mode-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 42% 62%,#ffffffad,#0000 26%),radial-gradient(circle,#ff34941f,#0000 62%);border:1px solid #ffffffb8;border-radius:999px;width:260px;height:260px;position:absolute;top:-136px;right:-116px;box-shadow:0 0 68px #ff55a029}.date48-mode-card:after{content:"";opacity:.74;pointer-events:none;background:linear-gradient(120deg,#0000 0 40%,#ffffff61 48%,#0000 58%),radial-gradient(circle at 72% 72%,#ffffff4d,#0000 28%);position:absolute;top:0;bottom:0;left:0;right:0}.date48-mode-card>*{z-index:1;position:relative}.date48-mode-card__main{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}.date48-eyebrow{color:#bd0a5b;letter-spacing:.22em;font-size:12px;font-weight:950}.date48-toggle.is-on{background:radial-gradient(circle at 18% 22%,#ffffff57,#0000 24%),linear-gradient(135deg,#ec1684,#b00058);box-shadow:0 18px 28px #be0b5e47,inset 0 0 0 1px #ffffff3d}.date48-mode-state{text-align:right;color:#bd0a5b;letter-spacing:.28em;margin-top:8px;padding-right:4px;font-size:11px;font-weight:950}.date48-benefits{flex-wrap:wrap;gap:8px;margin:18px 0 0;display:flex}.date48-benefits span:not(:first-child):before{display:none}.date48-quiz{background:linear-gradient(#ffffffc2,#ffffff8a);border-radius:24px;margin-top:18px;padding:17px;box-shadow:inset 0 0 0 1px #824c600f,0 16px 28px #59313f0d}.date48-quiz__title{color:#372b31a8;letter-spacing:.22em;font-size:12px;font-weight:950}.date48-chip{color:#2b2227e0;background:linear-gradient(#ffffffeb,#ffffffb3);border-color:#462c371a;min-height:38px;padding:0 17px;font-size:14px;font-weight:800;box-shadow:0 9px 18px #522d3c0d,inset 0 0 0 1px #ffffff6b}.date48-geo-card--premium{background:radial-gradient(circle at 92% 14%,#ffe4ecad,#0000 30%),linear-gradient(145deg,#ffffffe0,#fff7f9bd);border:1px solid #ffffffbd;border-radius:30px;grid-template-columns:minmax(0,1fr) 138px;gap:14px;margin-top:16px;padding:16px;position:relative;box-shadow:0 24px 48px #633a491f,inset 0 0 0 1px #8252600f}.date48-geo-card__text p{color:#231c20b8;grid-template-columns:20px auto;align-items:start;gap:8px;margin-bottom:9px;font-size:14px;line-height:1.22;display:grid}.date48-geo-card__text p span{color:#bd0a5b;filter:saturate(1.2)}.date48-geo-card__text p b{color:#231c20eb;font-weight:900}.date48-geo-radius-mini button{color:#2d2328d1;background:#ffffffb3;border:1px solid #5934411a;border-radius:999px;min-height:32px;padding:0 12px;font-size:12px;font-weight:850;box-shadow:0 8px 16px #522d3c0a}.date48-geo-radius-mini button.is-active{color:#fff;background:linear-gradient(135deg,#d51572,#b7005c);border-color:#0000;box-shadow:0 12px 22px #c30c622e}.date48-geo-actions{flex-wrap:wrap;gap:8px;margin-top:0;display:flex}.date48-geo-actions button{border-radius:999px;min-height:38px;margin-top:0;padding:0 14px;font-size:13px;font-weight:900}.date48-geo-actions button:first-child{color:#bd0a5b;background:#ffe7eebd;border:1px solid #c51b6a1a}.date48-geo-actions button+button{color:#2b2227c7;background:#ffffffbd;border:1px solid #59344114}.date48-map-preview{background:radial-gradient(circle,#d616772e 0 20%,#0000 21%),linear-gradient(33deg,#0000 0 36%,#bec59740 37% 43%,#0000 44%),linear-gradient(145deg,#0000 0 28%,#e5b8ab47 29% 34%,#0000 35%),repeating-linear-gradient(45deg,#d1b4aa4d 0 2px,#0000 2px 25px),repeating-linear-gradient(-40deg,#d1b4aa33 0 2px,#0000 2px 30px),#fff2ee;border-radius:24px;align-self:stretch;min-height:138px;box-shadow:inset 0 0 0 1px #c7437c1a,0 16px 30px #683e4d14}.date48-map-preview__halo{background:#e519802e;border:2px solid #cc106c61;width:92px;height:92px;box-shadow:0 0 0 20px #e519800f,0 18px 34px #c9156b1f}.date48-map-preview__pin{background:#d51572;border-width:5px;width:19px;height:19px}.date48-map-sheet__panel{background:radial-gradient(circle at 88% 12%,#e519801f,#0000 34%),linear-gradient(#fffaf9,#fff1f4);border-radius:34px 34px 0 0}.date48-map-shell{border-radius:30px;box-shadow:inset 0 0 0 1px #8352601a,0 18px 38px #5830401a}@media (max-width:390px){.date48-mode-card h1{font-size:32px}.date48-geo-card--premium{grid-template-columns:1fr}.date48-map-preview{min-height:126px}}.date48-geo-card--premium{border-radius:28px;grid-template-columns:minmax(0,1fr) 118px;gap:12px;padding:14px}.date48-geo-card__text{min-width:0}.date48-geo-stat{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;margin-bottom:10px;display:grid}.date48-geo-stat:last-of-type{margin-bottom:0}.date48-geo-stat__icon{color:#bd0a5b;font-size:14px;line-height:1.2;transform:translateY(1px)}.date48-geo-stat__body{min-width:0}.date48-geo-stat__body small{color:#3f30388c;letter-spacing:.02em;margin:0 0 2px;font-size:11px;font-weight:800;line-height:1.2;display:block}.date48-geo-stat__body strong{color:#211b1fe6;word-break:break-word;font-size:13px;font-weight:850;line-height:1.22;display:block}.date48-geo-radius-mini{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.date48-geo-radius-mini button{border-radius:999px;min-height:30px;padding:0 11px;font-size:12px;font-weight:850}.date48-geo-actions{flex-direction:column;gap:7px;margin-top:0;display:flex}.date48-geo-actions button{border-radius:999px;justify-content:center;width:100%;min-height:36px;padding:0 12px;font-size:12px;font-weight:900}.date48-map-preview--compact{aspect-ratio:.74;border-radius:22px;height:100%;min-height:0}.date48-map-preview--compact .date48-map-preview__halo{width:82px;height:82px;box-shadow:0 0 0 16px #e519800f,0 12px 24px #c9156b1a}.date48-map-preview--compact .date48-map-preview__pin{width:17px;height:17px}@media (max-width:390px){.date48-geo-card--premium{grid-template-columns:minmax(0,1fr) 104px;gap:10px;padding:12px}.date48-geo-stat{grid-template-columns:16px minmax(0,1fr);gap:7px;margin-bottom:8px}.date48-geo-stat__icon{font-size:13px}.date48-geo-stat__body small{font-size:10px}.date48-geo-stat__body strong{font-size:12px;line-height:1.2}.date48-geo-radius-mini{gap:5px;margin:8px 0}.date48-geo-radius-mini button{min-height:28px;padding:0 10px;font-size:11px}.date48-geo-actions{gap:6px}.date48-geo-actions button{min-height:34px;padding:0 10px;font-size:11px}.date48-map-preview--compact{border-radius:20px}.date48-map-preview--compact .date48-map-preview__halo{width:72px;height:72px}.date48-map-preview--compact .date48-map-preview__pin{width:16px;height:16px}}.date48-mode-card{border-radius:30px;margin-top:14px;margin-bottom:18px;padding:22px 18px 20px}.date48-mode-card h1{letter-spacing:-.052em;max-width:300px;font-size:max(27px,min(7.1vw,34px));line-height:1.04}.date48-toggle{width:70px;height:39px;padding:4px;transform:translateY(0)}.date48-mode-state{letter-spacing:.26em;margin-top:4px;padding-right:2px;font-size:10px}.date48-benefits{gap:7px;margin-top:17px}.date48-benefits span{color:#482c38c7;background:#ffffff94;min-height:31px;padding:0 11px;font-size:11px;font-weight:820;box-shadow:0 9px 18px #542d3c0b}.date48-quiz{background:radial-gradient(circle at 18% 0,#ffe8ef94,#0000 38%),linear-gradient(#ffffffd1,#ffffff9e);border:1px solid #ffffffc2;border-radius:28px;margin-top:22px;padding:18px 16px 17px;box-shadow:0 22px 42px #5c364514,inset 0 0 0 1px #824c600b}.date48-quiz__title{color:#342a308f;letter-spacing:.24em;margin-bottom:11px;font-size:11px;font-weight:920}.date48-chip{min-height:37px;padding:0 15px;font-size:13px;font-weight:780;box-shadow:0 8px 16px #522d3c0b,inset 0 0 0 1px #ffffff70}.date48-chip.is-active{background:radial-gradient(circle at 18% 18%,#ffffff3d,#0000 25%),linear-gradient(135deg,#d51370,#b30059);box-shadow:0 13px 24px #c30c6233,inset 0 0 0 1px #ffffff24}@media (max-width:390px){.date48-mode-card{margin-bottom:16px;padding:20px 16px 18px}.date48-mode-card h1{max-width:270px;font-size:28px;line-height:1.05}.date48-muted{max-width:260px;font-size:14px}.date48-toggle{width:64px;height:36px}.date48-toggle span{width:28px;height:28px}.date48-toggle.is-on span{transform:translate(28px)}.date48-benefits span{min-height:30px;padding:0 10px;font-size:10.5px}.date48-quiz{margin-top:20px;padding:16px 14px}.date48-chip{min-height:36px;padding:0 14px;font-size:13px}}.date48-mode-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:radial-gradient(circle at 88% 12%,#f5bbd638,#0000 28%),linear-gradient(145deg,#ffffffeb,#fff6f9d1);border:1px solid #ffffffd1;border-radius:30px;margin-top:12px;margin-bottom:18px;padding:20px 18px 18px;position:relative;overflow:hidden;box-shadow:0 20px 42px #683c4d1a,inset 0 0 0 1px #91556a0d}.date48-mode-card:before,.date48-mode-card:after{opacity:.45}.date48-mode-card__main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.date48-eyebrow{color:#bd0a5b;letter-spacing:.2em;margin:0 0 10px;font-size:11px;font-weight:900}.date48-mode-card h1{letter-spacing:-.05em;max-width:290px;margin:0;font-size:max(26px,min(7vw,34px));line-height:1.03}.date48-muted{color:#2b21279e;max-width:300px;margin-top:14px;font-size:15px;line-height:1.42}.date48-toggle{width:68px;height:38px;margin-top:6px;padding:4px}.date48-toggle span{width:30px;height:30px}.date48-toggle.is-on span{transform:translate(30px)}.date48-mode-state{color:#bd0a5b;letter-spacing:.24em;text-align:right;margin-top:8px;font-size:10px;font-weight:900}.date48-benefits{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.date48-benefits span{color:#48313ac2;background:#ffffffb8;border:1px solid #86536412;border-radius:999px;align-items:center;min-height:30px;padding:0 11px;font-size:11px;font-weight:820;display:inline-flex;box-shadow:0 8px 18px #552e3d0d}.date48-preferences-card{background:radial-gradient(circle at 12% 0,#ffe7ef73,#0000 28%),linear-gradient(#ffffffeb,#fff9fbd6);border:1px solid #ffffffd6;border-radius:30px;margin:0 0 18px;padding:18px;box-shadow:0 20px 42px #5f364414,inset 0 0 0 1px #854d5f0a}.date48-preferences-eyebrow{color:#57424c8f;letter-spacing:.24em;margin:0 0 8px;font-size:10px;font-weight:900}.date48-preferences-card__head h2{color:#241d21;letter-spacing:-.04em;margin:0;font-size:22px;line-height:1.05}.date48-preferences-card__head p{color:#2f242a94;margin:8px 0 0;font-size:14px;line-height:1.4}.date48-quiz--separate{box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:0;padding:0}.date48-quiz__title{color:#473a408a;letter-spacing:.22em;margin:0 0 10px;font-size:11px;font-weight:900}.date48-chips{flex-wrap:wrap;gap:10px;display:flex}.date48-chip{color:#2f242ae0;background:linear-gradient(#fffffff2,#fffc);border:1px solid #5a37451a;border-radius:999px;min-height:36px;padding:0 15px;font-size:13px;font-weight:780;box-shadow:0 8px 16px #532d3c0b}.date48-chip.is-active{color:#fff;background:radial-gradient(circle at 18% 18%,#ffffff3d,#0000 24%),linear-gradient(135deg,#d81373,#b5005b);box-shadow:0 12px 22px #c30c622e,inset 0 0 0 1px #ffffff24}@media (max-width:390px){.date48-mode-card{margin-bottom:16px;padding:18px 16px 16px}.date48-mode-card h1{max-width:260px;font-size:29px}.date48-muted{max-width:260px;font-size:14px}.date48-toggle{width:64px;height:36px}.date48-toggle span{width:28px;height:28px}.date48-toggle.is-on span{transform:translate(28px)}.date48-benefits span{min-height:28px;padding:0 10px;font-size:10.5px}.date48-preferences-card{margin-bottom:16px;padding:16px}.date48-preferences-card__head h2{font-size:20px}.date48-preferences-card__head p{font-size:13px}.date48-chip{min-height:35px;padding:0 14px;font-size:13px}}.date48-benefits{scrollbar-width:none;flex-wrap:nowrap;gap:7px;margin-top:15px;padding-bottom:2px;display:flex;overflow-x:auto}.date48-benefits::-webkit-scrollbar{display:none}.date48-benefits span{white-space:nowrap;border-radius:999px;flex:none;min-height:27px;padding:0 10px;font-size:10.5px;font-weight:820}.date48-preferences-card{border-radius:28px;padding:15px}.date48-preferences-card__head{margin-bottom:11px}.date48-preferences-eyebrow{letter-spacing:.22em;margin-bottom:6px;font-size:9.5px}.date48-preferences-card__head h2{font-size:19px;line-height:1.05}.date48-preferences-card__head p{margin-top:6px;font-size:12.5px;line-height:1.34}.date48-quiz__title{letter-spacing:.22em;margin-bottom:8px;font-size:10px}.date48-quiz__title--space{margin-top:15px}.date48-chips{gap:7px}.date48-chip{min-height:32px;padding:0 12px;font-size:12px;font-weight:760}.date48-chip span{margin-left:6px}@media (max-width:390px){.date48-benefits{gap:6px;margin-top:13px}.date48-benefits span{min-height:26px;padding:0 9px;font-size:10px}.date48-preferences-card{padding:14px}.date48-preferences-card__head h2{font-size:18px}.date48-preferences-card__head p{font-size:12px}.date48-chip{min-height:31px;padding:0 11px;font-size:11.5px}}.date48-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;padding-bottom:0;display:grid;overflow:visible}.date48-benefits span{white-space:nowrap;text-overflow:ellipsis;justify-content:center;min-width:0;min-height:27px;padding:0 7px;font-size:10px;font-weight:820;overflow:hidden}@media (max-width:390px){.date48-benefits{gap:5px}.date48-benefits span{min-height:26px;padding:0 6px;font-size:9.5px}}.date48-benefits{gap:0;width:auto;margin-top:13px;margin-bottom:0;display:flex;overflow:visible}.date48-benefits span{color:#703750db;white-space:nowrap;background:#ffffffa8;border:1px solid #bc4e7b1a;border-radius:999px;justify-content:flex-start;align-items:center;width:auto;min-width:0;min-height:28px;padding:0 12px;font-size:10.5px;font-weight:850;display:inline-flex;box-shadow:0 8px 18px #6034440b}@media (max-width:390px){.date48-benefits{margin-top:12px}.date48-benefits span{min-height:27px;padding:0 11px;font-size:10px}}.date48-home-classic{gap:18px;padding-bottom:132px;display:grid}.date48-home-head{justify-content:space-between;align-items:center;display:flex}.date48-home-head img{object-fit:cover;border-radius:18px;width:58px;height:58px;box-shadow:0 16px 34px #2a1a261f}.date48-home-head button{background:#ffffffc7;border:1px solid #ecdfd6f0;border-radius:22px;width:58px;height:58px;font-size:24px;box-shadow:0 14px 28px #2f1a150f}.date48-story-tools{grid-template-columns:74px 1fr;align-items:center;gap:12px;display:grid}.date48-story-add{color:#342c28;background:#ffffff7a;border:2px dashed #ae2b6457;border-radius:999px;place-items:center;width:72px;height:72px;font-size:38px;display:grid}.date48-story-tools input{color:#2f2925;background:#ffffffb8;border:1px solid #ecdfd6eb;border-radius:999px;outline:none;min-width:0;min-height:48px;padding:0 16px;box-shadow:0 10px 20px #2f1a150a}.date48-stories-strip{scrollbar-width:none;grid-auto-columns:78px;grid-auto-flow:column;gap:14px;padding:2px 2px 6px;display:grid;overflow-x:auto}.date48-stories-strip::-webkit-scrollbar{display:none}.date48-story-item{color:#4c433e;background:0 0;justify-items:center;gap:8px;display:grid}.date48-story-item b{white-space:nowrap;text-overflow:ellipsis;width:74px;font-size:11px;font-weight:650;overflow:hidden}.date48-story-thumb{color:#fff;background:radial-gradient(circle at 50% 28%,#ffffff80,#0000 17%),linear-gradient(#e3b092,#7a403c);border:5px solid #fff7f2;border-radius:999px;outline:4px solid #ae2b64;place-items:center;width:72px;height:72px;font-size:24px;font-weight:900;display:grid;overflow:hidden;box-shadow:0 12px 22px #ae2b6421}.date48-story-item.is-viewed .date48-story-thumb{outline-color:#ae2b6438}.date48-story-thumb img{object-fit:cover;width:100%;height:100%}.date48-story-video{color:#fff;background:linear-gradient(135deg,#8b2d4d,#d76b98);place-items:center;width:100%;height:100%;font-size:22px;display:grid}.date48-feed-topline{justify-content:space-between;align-items:end;gap:14px;display:flex}.date48-feed-topline h1{letter-spacing:-.055em;margin:0;font-size:36px;line-height:1}.date48-feed-topline p{color:#746963;margin:8px 0 0;font-size:14px}.date48-feed-topline button{color:#2e2723;background:#fffc;border:1px solid #ecdfd6f0;border-radius:999px;min-height:44px;padding:0 18px;font-weight:650;box-shadow:0 10px 20px #2f1a150d}.date48-filter-row{scrollbar-width:none;gap:10px;display:flex;overflow-x:auto}.date48-filter-row::-webkit-scrollbar{display:none}.date48-filter-row button{color:#2e2723;background:#ffffffc7;border:1px solid #ecdfd6f0;border-radius:999px;flex:none;min-height:42px;padding:0 18px;font-weight:650;box-shadow:0 10px 18px #2f1a150a}.date48-filter-row button.is-active{color:#8b2d4d;background:#ae2b6421;border-color:#ae2b643d}.date48-feed-notice{color:#6a5f59;background:#ffffff94;border:1px solid #ecdfd6c7;border-radius:20px;padding:12px 14px;font-size:13px;line-height:1.35}.date48-feed-list{gap:28px;display:grid}.date48-person-card{background:0 0}.date48-person-card__photo{background:radial-gradient(circle at 58% 24%, #ffffff47, transparent 14%), radial-gradient(circle at 72% 82%, #ffffff29, transparent 20%), linear-gradient(135deg, var(--profile-accent), #dca58d);border-radius:0;height:min(72vh,680px);min-height:540px;position:relative;overflow:hidden;box-shadow:0 18px 42px #2e191414}.date48-person-card__badges{flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:18px;left:18px;right:18px}.date48-person-card__badges span,.date48-person-card__meta span{border-radius:999px;align-items:center;min-height:31px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.date48-person-card__badges span{color:#fff;-webkit-backdrop-filter:blur(14px);background:#ffffff4d;border:1px solid #ffffff4d}.date48-person-card__info{gap:13px;padding:16px 0 0;display:grid}.date48-person-card__info h2{color:#171717;letter-spacing:-.04em;margin:0;font-size:26px;line-height:1.05}.date48-person-card__info p{color:#5f5651;margin:10px 0 0;font-size:18px;line-height:1.55}.date48-person-card__meta{flex-wrap:wrap;gap:7px;display:flex}.date48-person-card__meta span{color:#6a5f59;background:#ffffffa8;border:1px solid #ecdfd6db}.date48-person-card__actions{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.date48-person-card__actions button{color:#2f2925;background:#fffc;border:1px solid #ecdfd6eb;border-radius:999px;min-height:50px;font-weight:700;box-shadow:0 10px 20px #2f1a150d}.date48-person-card__actions button.is-liked{color:#fff;background:linear-gradient(#d86b98,#ae2b64);border-color:#0000;box-shadow:0 14px 26px #ae2b6438}.date48-story-viewer{z-index:200;padding:max(18px, env(safe-area-inset-top)) 18px max(22px, env(safe-area-inset-bottom));color:#fff;background:radial-gradient(circle at 50% 20%,#ffffff1f,#0000 26%),linear-gradient(#171115,#2b1721);grid-template-rows:auto 1fr auto;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.date48-story-viewer__close{top:max(16px, env(safe-area-inset-top));z-index:204;color:#fff;background:#ffffff29;border-radius:999px;width:44px;height:44px;font-size:30px;position:fixed;right:16px}.date48-story-viewer__top{gap:4px;padding-right:56px;display:grid}.date48-story-viewer__top strong{font-size:18px}.date48-story-viewer__top span{color:#ffffffb8;font-size:13px}.date48-story-viewer__media{place-items:center;min-height:0;padding:18px 0;display:grid}.date48-story-viewer__media img,.date48-story-viewer__media video{object-fit:contain;border-radius:26px;max-width:100%;max-height:100%;box-shadow:0 24px 60px #00000052}.date48-story-viewer__demo{aspect-ratio:9/16;background:radial-gradient(circle at 50% 28%,#ffffff52,#0000 16%),linear-gradient(135deg,#ae2b64,#e0aa91);border-radius:30px;place-items:center;width:min(100%,420px);display:grid}.date48-story-viewer__demo span{font-size:82px;font-weight:900}.date48-story-viewer__demo p{color:#ffffffe0;align-self:end;margin:0 0 26px;font-size:18px}.date48-story-viewer__tap{opacity:0;width:38%;position:fixed;top:92px;bottom:92px}.date48-story-viewer__bottom{grid-template-columns:1fr 1fr auto;gap:10px;display:grid}.date48-story-viewer__bottom button{color:#fff;-webkit-backdrop-filter:blur(14px);background:#ffffff29;border-radius:999px;min-height:48px;padding:0 16px;font-weight:750}@media (max-width:380px){.date48-person-card__photo{min-height:480px}.date48-person-card__actions{grid-template-columns:1fr}.date48-story-tools{grid-template-columns:72px 1fr}}.date48-home-classic,.date48-premium-feed{display:contents}.date48-home-head,.date48-feed-head,.date48-story-tools,.date48-main-card,.date48-story-add{display:none!important}.date48-inline-stories{scrollbar-width:none;grid-auto-columns:76px;grid-auto-flow:column;gap:14px;margin-bottom:18px;padding:2px 0 8px;display:grid;overflow-x:auto}.date48-inline-story{color:#4c433e;background:0 0;justify-items:center;gap:8px;display:grid}.date48-inline-story b{white-space:nowrap;text-overflow:ellipsis;width:72px;font-size:11px;font-weight:650;overflow:hidden}.date48-inline-story__thumb,.date48-inline-story--add span{border-radius:999px;place-items:center;width:70px;height:70px;display:grid;overflow:hidden}.date48-inline-story__thumb{background:radial-gradient(circle at 50% 28%, #ffffff80, transparent 17%), linear-gradient(180deg, #e3b092, var(--story-accent));color:#fff;border:5px solid #fff7f2;outline:4px solid #ae2b64;font-size:24px;font-weight:900;box-shadow:0 12px 22px #ae2b6421}.date48-inline-story.is-viewed .date48-inline-story__thumb{outline-color:#ae2b6438}.date48-inline-story__video{color:#fff;background:linear-gradient(135deg,#8b2d4d,#d76b98);place-items:center;width:100%;height:100%;font-size:22px;display:grid}.date48-inline-story--add span{color:#342c28;background:#ffffff7a;border:2px dashed #ae2b6457;font-size:38px}.date48-feed-title{justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px;display:flex}.date48-feed-title h1{color:#171717;letter-spacing:-.055em;margin:0;font-size:36px;line-height:1}.date48-feed-title p{color:#746963;margin:8px 0 0;font-size:14px}.date48-feed-title button{color:#2e2723;background:#fffc;border:1px solid #ecdfd6f0;border-radius:999px;min-height:44px;padding:0 18px;font-weight:650;box-shadow:0 10px 20px #2f1a150d}.date48-inline-filters{scrollbar-width:none;gap:10px;margin-bottom:12px;display:flex;overflow-x:auto}.date48-inline-filters::-webkit-scrollbar{display:none}.date48-inline-filters button{color:#2e2723;background:#ffffffc7;border:1px solid #ecdfd6f0;border-radius:999px;flex:none;min-height:42px;padding:0 18px;font-weight:650;box-shadow:0 10px 18px #2f1a150a}.date48-inline-filters button.is-active{color:#8b2d4d;background:#ae2b6421;border-color:#ae2b643d}.date48-feed-message{color:#6a5f59;background:#ffffff94;border:1px solid #ecdfd6c7;border-radius:20px;margin-bottom:18px;padding:12px 14px;font-size:13px;line-height:1.35}.date48-classic-feed{gap:30px;padding-bottom:128px;display:grid}.date48-classic-card{background:0 0}.date48-classic-card__photo{background:radial-gradient(circle at 58% 24%, #ffffff47, transparent 14%), radial-gradient(circle at 72% 82%, #ffffff29, transparent 20%), linear-gradient(135deg, var(--profile-accent), #dca58d);border-radius:0;width:100%;height:min(72vh,680px);min-height:540px;display:block;position:relative;overflow:hidden;box-shadow:0 18px 42px #2e191414}.date48-classic-card__badges{flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:18px;left:18px;right:18px}.date48-classic-card__badges b{color:#fff;-webkit-backdrop-filter:blur(14px);background:#ffffff4d;border:1px solid #ffffff4d;border-radius:999px;align-items:center;min-height:31px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.date48-classic-card__body{gap:13px;padding:16px 0 0;display:grid}.date48-classic-card__body h2{color:#171717;letter-spacing:-.04em;margin:0;font-size:26px;line-height:1.05}.date48-classic-card__body p{color:#5f5651;margin:0;font-size:18px;line-height:1.55}.date48-classic-card__meta{flex-wrap:wrap;gap:7px;display:flex}.date48-classic-card__meta span{color:#6a5f59;background:#ffffffa8;border:1px solid #ecdfd6db;border-radius:999px;align-items:center;min-height:31px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.date48-classic-card__actions{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.date48-classic-card__actions button{color:#2f2925;background:#fffc;border:1px solid #ecdfd6eb;border-radius:999px;min-height:50px;font-weight:700;box-shadow:0 10px 20px #2f1a150d}.date48-classic-card__actions button.is-liked{color:#fff;background:linear-gradient(#d86b98,#ae2b64);border-color:#0000;box-shadow:0 14px 26px #ae2b6438}@media (max-width:380px){.date48-classic-card__photo{min-height:480px}.date48-classic-card__actions{grid-template-columns:1fr}}.date48-classic-card__photo{cursor:pointer;touch-action:pan-y}.date48-classic-card__like{z-index:3;color:#8b2d4d;-webkit-backdrop-filter:blur(18px);background:#ffffffb8;border:1px solid #ffffff94;border-radius:999px;place-items:center;width:62px;height:62px;font-size:30px;line-height:1;display:grid;position:absolute;bottom:18px;right:18px;box-shadow:0 18px 36px #3c1b2b2e,inset 0 1px #ffffffb8}.date48-classic-card__like.is-liked{color:#fff;background:radial-gradient(circle at 50% 24%,#ffffff52,#fff0 34%),linear-gradient(#df6c9c,#ae2b64);box-shadow:0 18px 38px #ae2b6447,inset 0 1px #ffffff52}.date48-classic-card__actions{display:none!important}.date48-clean-bottom-bar{isolation:isolate}.date48-clean-bottom-bar:before{content:"";width:var(--date48-clean-w,54px);height:var(--date48-clean-h,38px);transform:translate3d(var(--date48-clean-x,6px), var(--date48-clean-y,6px), 0);opacity:var(--date48-clean-opacity,0);z-index:0;pointer-events:none;-webkit-backdrop-filter:blur(14px)saturate(1.12);backdrop-filter:blur(14px)saturate(1.12);will-change:transform, width, height;background:#fffafcf0;border:1px solid #ffffff38;border-radius:999px;transition:transform .26s cubic-bezier(.2,.8,.2,1),width .26s cubic-bezier(.2,.8,.2,1),height .26s cubic-bezier(.2,.8,.2,1),opacity .14s;position:absolute;top:0;left:0;box-shadow:inset 0 1px #ffffff57,0 2px 7px #0000001f}.date48-clean-bottom-bar:after{content:none!important;display:none!important}.date48-clean-bottom-bar>*{z-index:1;position:relative}.date48-clean-bottom-bar a,.date48-clean-bottom-bar button{-webkit-tap-highlight-color:transparent}.date48-clean-bottom-bar [data-date48-nav-item=true]:not([data-date48-center=true])[data-date48-active=true]{box-shadow:none!important;background:0 0!important}.date48-clean-bottom-bar [data-date48-nav-item=true]:not([data-date48-center=true])[data-date48-active=true]:before,.date48-clean-bottom-bar [data-date48-nav-item=true]:not([data-date48-center=true])[data-date48-active=true]:after{content:none!important;display:none!important}.date48-clean-bottom-bar--center-active:before{opacity:0!important}@media (prefers-reduced-motion:reduce){.date48-clean-bottom-bar:before{transition:none}}.d48-profile-page{width:100%;max-width:470px;padding:calc(4px + env(safe-area-inset-top,0px)) 16px calc(150px + env(safe-area-inset-bottom,0px));color:#17141b;background:radial-gradient(circle at 50% -10%,#ffffffe6,#0000 28%),linear-gradient(#f7f4ef 0%,#f4f1eb 100%);margin:0 auto}.d48-profile-hero{box-shadow:none;background:0 0;border:0;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:18px;margin:0 0 26px;padding:4px 0 0;display:grid}.d48-profile-avatar{-webkit-appearance:none;appearance:none;cursor:pointer;background:radial-gradient(circle at 30% 20%,#fffffff2,#0000 40%),linear-gradient(145deg,#eeecdf,#fff);border:1px solid #fffffffa;border-radius:999px;width:86px;height:86px;padding:0;overflow:hidden;box-shadow:0 16px 34px #1612181a,0 4px 12px #1612180f,inset 0 1px #fffffffa}.d48-profile-avatar span{color:#fff;background:linear-gradient(145deg,#f24b98,#ed7db1);place-items:center;width:100%;height:100%;font-size:38px;font-weight:850;display:grid}.d48-profile-avatar img{object-fit:cover;border-radius:999px;width:100%;height:100%;display:block}.d48-profile-title{min-width:0}.d48-profile-kicker{letter-spacing:.44em;text-transform:uppercase;color:#17141b57;margin:0 0 7px;font-size:10px;font-weight:800;line-height:1;display:block}.d48-profile-title h1{letter-spacing:-.075em;color:#141118;margin:0 0 5px;font-size:max(44px,min(12vw,56px));font-weight:900;line-height:.92}.d48-profile-title p{color:#17141b7a;margin:0 0 10px;font-size:max(19px,min(5.5vw,23px));font-weight:520;line-height:1.05}.d48-profile-trust{white-space:nowrap;color:#231f27;background:#ffffffb8;border:1px solid #17141b12;border-radius:999px;justify-content:center;align-items:center;width:min(100%,300px);min-height:34px;padding:8px 18px;font-size:12px;font-weight:850;line-height:1;display:inline-flex;box-shadow:0 8px 16px #17141b0b,inset 0 1px #fffffffa}.d48-profile-about,.d48-profile-layer,.d48-profile-safety,.d48-profile-panel{background:linear-gradient(145deg,#ffffffd1,#ffffff94);border:1px solid #fffffff5;border-radius:25px;width:100%;box-shadow:0 18px 34px #19161c13,0 5px 12px #19161c09,inset 0 1px #fffffffa}.d48-profile-about{margin:0 0 12px;padding:16px 18px 17px}.d48-profile-about h2,.d48-profile-safety h2{letter-spacing:-.06em;color:#141118;margin:0 0 8px;font-size:max(28px,min(7.6vw,36px));font-weight:900;line-height:1}.d48-profile-about p,.d48-profile-safety p{color:#17141b85;margin:0;font-size:15px;font-weight:470;line-height:1.32}.d48-profile-layers{grid-template-columns:1fr;gap:11px;margin:0 0 12px;display:grid}.d48-profile-layer{min-height:104px;padding:14px 18px 15px}.d48-profile-layer span{letter-spacing:.48em;text-transform:uppercase;color:#17141b57;margin:0 0 9px;font-size:9px;font-weight:850;line-height:1;display:block}.d48-profile-layer b{letter-spacing:-.055em;color:#141118;margin:0 0 7px;font-size:max(22px,min(6vw,27px));font-weight:900;line-height:1.02;display:block}.d48-profile-layer small{color:#17141b80;margin:0;font-size:14px;font-weight:470;line-height:1.25;display:block}.d48-profile-safety{margin:0 0 13px;padding:18px}.d48-profile-safety p{margin-bottom:14px}.d48-profile-actions{gap:10px;padding-bottom:12px;display:grid}.d48-profile-primary,.d48-profile-secondary,.d48-profile-logout{cursor:pointer;-webkit-appearance:none;appearance:none;border:0;border-radius:21px;justify-content:center;align-items:center;width:100%;min-height:54px;font-size:15px;font-weight:850;line-height:1;text-decoration:none;display:inline-flex}.d48-profile-primary{color:#fff;background:linear-gradient(135deg,#e13f8d,#ee74aa);box-shadow:0 16px 30px #d52d7c38,inset 0 1px #ffffff52}.d48-profile-secondary,.d48-profile-logout{color:#25202a;background:#ffffffb8;border:1px solid #17141b12;box-shadow:0 10px 20px #17141b0b,inset 0 1px #fffffffa}.d48-profile-muted{color:#17141b85;margin:0}.d48-profile-panel{padding:22px 18px}.d48-profile-panel--guest h1{letter-spacing:-.07em;margin:10px 0 12px;font-size:max(36px,min(10vw,52px));font-weight:900;line-height:.98}.d48-profile-panel--guest p{color:#17141b8a;margin:0 0 18px;font-size:15px;line-height:1.35}.d48-profile-checks{gap:8px;margin:0 0 18px;display:grid}.d48-profile-checks span{color:#17141bb3;background:#ffffff9e;border-radius:16px;padding:12px 14px;font-size:14px;font-weight:650;display:block}.date48-profile-page>img,.date48-account-page>img,.date48-profile-card>img,.date48-account-card>img,.date48-profile-page .date48-profile-photo,.date48-profile-page .date48-account-photo,.date48-account-page .date48-profile-photo,.date48-account-page .date48-account-photo{display:none!important}@media (max-width:390px){.d48-profile-page{padding-left:14px;padding-right:14px}.d48-profile-hero{grid-template-columns:80px minmax(0,1fr);gap:16px;margin-bottom:24px}.d48-profile-avatar{width:80px;height:80px}.d48-profile-title h1{font-size:46px}.d48-profile-title p{font-size:20px}.d48-profile-trust{width:min(100%,280px);font-size:11px}.d48-profile-layer{min-height:98px;padding:13px 16px 14px}.d48-profile-layer b{font-size:22px}}html:has(.d48-profile-page){background:#f7f4ef!important}body:has(.d48-profile-page){background:#f7f4ef!important}#root:has(.d48-profile-page){background:#f7f4ef!important}.app-page:has(.d48-profile-page){background:#f7f4ef!important}.app-shell:has(.d48-profile-page){background:#f7f4ef!important}.screen-body:has(.d48-profile-page){background:#f7f4ef!important}.d48-profile-page{background:#f7f4ef!important}.d48-profile-page:before,.d48-profile-page:after,.d48-profile-hero:before,.d48-profile-hero:after{content:none!important;display:none!important}.d48-profile-hero{box-shadow:none!important;background:0 0!important;border:0!important}.d48-profile-about,.d48-profile-layer,.d48-profile-safety,.d48-profile-panel{background:#ffffffb8!important;border:1px solid #ffffffeb!important;box-shadow:0 18px 34px #1816140e,0 5px 12px #18161407,inset 0 1px #fffffff5!important}.d48-profile-avatar{box-shadow:0 14px 28px #18161414,0 4px 10px #1816140a,inset 0 1px #fffffffa!important}.d48-profile-trust,.d48-profile-secondary,.d48-profile-logout{background:#ffffffbd!important}.d48-profile-params{background:#ffffffb8;border:1px solid #ffffffeb;border-radius:32px;width:min(100%,720px);margin:14px auto;padding:18px 18px 20px;box-shadow:0 18px 34px #1816140d,0 6px 14px #18161407,inset 0 1px #fffffff5}.d48-profile-params__head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.d48-profile-params__head span{color:#16141261;letter-spacing:.24em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:850;display:block}.d48-profile-params__head h2{color:#121114;letter-spacing:-.055em;margin:0;font-size:max(23px,min(6.3vw,34px));line-height:.98}.d48-profile-params__edit{color:#25222a;background:#ffffffb8;border:1px solid #12111412;border-radius:999px;flex:none;min-height:36px;padding:9px 15px 10px;font-size:14px;font-weight:850;text-decoration:none;box-shadow:0 10px 20px #1816140b,inset 0 1px #fffffff2}.d48-profile-params__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.d48-profile-params__grid article{background:linear-gradient(#ffffffdb,#ffffff9e);border:1px solid #1211140b;border-radius:22px;min-height:62px;padding:12px 14px;box-shadow:0 8px 16px #18161408,inset 0 1px #fffffff5}.d48-profile-params__grid article span{color:#1614126b;letter-spacing:.2em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:850;display:block}.d48-profile-params__grid article b{color:#151316;letter-spacing:-.02em;overflow-wrap:anywhere;font-size:15px;font-weight:850;line-height:1.12;display:block}@media (max-width:430px){.d48-profile-params{border-radius:28px;margin-top:12px;padding:16px 14px}.d48-profile-params__head{align-items:center}.d48-profile-params__head h2{font-size:25px}.d48-profile-params__edit{min-height:34px;padding:8px 13px 9px;font-size:13px}.d48-profile-params__grid{gap:8px}.d48-profile-params__grid article{border-radius:20px;min-height:58px;padding:11px 12px}.d48-profile-params__grid article b{font-size:14px}}.date48-inline-stories{z-index:2;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-backdrop-filter:blur(16px);background:#ffffff2e;border-top:1px solid #ffffff52;border-bottom:1px solid #14101c0b;align-items:flex-start;gap:11px;width:calc(100% + 28px);margin:4px -14px 12px;padding:8px 14px 9px;display:flex;position:relative;overflow-x:auto;overflow-y:hidden;box-shadow:0 12px 30px #2318280b}.date48-inline-stories::-webkit-scrollbar{display:none}.date48-inline-story{color:#2a2330d1;width:58px;min-width:58px;font:inherit;text-align:center;scroll-snap-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;flex:0 0 58px;align-items:center;gap:5px;padding:0;display:flex}.date48-inline-story__thumb,.date48-inline-story--add span{background:linear-gradient(#fff, #fff) padding-box, conic-gradient(from 155deg, #fffffff2, color-mix(in srgb, var(--story-accent,#d94b73) 64%, #fff), #ffbc7ec7, color-mix(in srgb, var(--story-accent,#d94b73) 58%, #fff), #fffffff2) border-box;border:2px solid #0000;border-radius:999px;place-items:center;width:55px;height:55px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 18px #2316261c,inset 0 0 0 1px #ffffffd1}.date48-inline-story__thumb:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;top:3px;bottom:3px;left:3px;right:3px;box-shadow:inset 0 0 0 1px #ffffffb8}.date48-inline-story__thumb img{object-fit:cover;width:100%;height:100%}.date48-inline-story__thumb>span:not(.date48-inline-story__video){color:#463441d1;font-size:19px;font-weight:800}.date48-inline-story--add span{color:#493644e6;background:linear-gradient(#fffffff5,#ffffffb8) padding-box padding-box,linear-gradient(135deg,#ffffffe6,#231c2a2e) border-box;font-size:28px;font-weight:500;line-height:1}.date48-inline-story b{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.02em;color:#2a2330b8;width:62px;max-width:62px;font-size:10.5px;font-weight:650;line-height:1.12;display:block;overflow:hidden}.date48-inline-story.is-viewed .date48-inline-story__thumb{opacity:.78;background:linear-gradient(#fff,#fff) padding-box padding-box,linear-gradient(135deg,#28222d29,#ffffffb8) border-box}.date48-inline-story__video{color:#2a2330c2;background:#ffffffc7;border-radius:999px;place-items:center;width:27px;height:27px;padding-left:2px;font-size:11px;display:grid;box-shadow:0 8px 18px #2316261f}@media (max-width:520px){.date48-inline-stories{gap:10px;width:calc(100% + 24px);margin:2px -12px 10px;padding:7px 12px 8px}.date48-inline-story{flex-basis:56px;width:56px;min-width:56px}.date48-inline-story__thumb,.date48-inline-story--add span{width:53px;height:53px}.date48-inline-story b{width:58px;max-width:58px;font-size:10px}}.date48-auth-page{min-height:100svh;padding:calc(env(safe-area-inset-top,0px) + 92px) 18px calc(120px + env(safe-area-inset-bottom,0px));color:#131015;box-sizing:border-box;background:radial-gradient(circle at 50% 0,#fffffff5 0 24%,#f8f4edeb 48%,#efe9e0f5 100%)}.date48-auth-card{-webkit-backdrop-filter:blur(22px)saturate(1.15);box-sizing:border-box;background:#ffffffb8;border:1px solid #ffffffd1;border-radius:36px;width:min(100%,760px);margin:0 auto;padding:28px 28px 30px;box-shadow:0 26px 70px #261f191f,inset 0 1px #fffffff5}.date48-auth-back{color:#1412169e;background:#ffffff9e;border:1px solid #1914140f;border-radius:999px;align-items:center;width:fit-content;max-width:100%;min-height:38px;margin:0 0 26px;padding:8px 15px;font-size:15px;font-weight:650;text-decoration:none;display:inline-flex;box-shadow:0 10px 24px #231c1414}.date48-auth-hero{margin-bottom:26px}.date48-auth-kicker{color:#120f126b;letter-spacing:.28em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800;line-height:1.2;display:block}.date48-auth-hero h1{color:#100e12;letter-spacing:-.065em;max-width:620px;margin:0;font-size:max(38px,min(8.6vw,64px));font-weight:950;line-height:.9}.date48-auth-hero p{color:#14121694;max-width:620px;margin:18px 0 0;font-size:19px;font-weight:520;line-height:1.45}.date48-onboarding-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;display:grid}.date48-onboarding-grid label,.date48-about-field,.date48-auth-form label{color:#1412169e;flex-direction:column;gap:8px;min-width:0;font-size:14px;font-weight:650;display:flex}.date48-onboarding-grid input,.date48-onboarding-grid select,.date48-about-field textarea,.date48-auth-form input{color:#111015;width:100%;min-width:0;height:54px;font:inherit;box-sizing:border-box;background:#ffffffbd;border:1px solid #19141414;border-radius:22px;outline:none;padding:0 18px;font-size:18px;font-weight:600;box-shadow:inset 0 1px #fffffff2,0 12px 26px #241c1412}.date48-onboarding-grid select{-webkit-appearance:menulist;appearance:menulist}.date48-about-field textarea{resize:vertical;height:auto;min-height:112px;padding-top:16px;padding-bottom:16px;line-height:1.35}.date48-auth-actions-row{align-items:stretch;gap:12px;margin-top:18px;display:flex}.date48-auth-actions-row button,.date48-auth-form button{-webkit-appearance:none;appearance:none;color:#fff;letter-spacing:-.02em;background:linear-gradient(135deg,#d62f84,#ee78ad);border:0;border-radius:999px;min-height:56px;padding:0 22px;font-size:18px;font-weight:850;box-shadow:0 20px 42px #ca2d7e3d,inset 0 1px #ffffff59}.date48-auth-actions-row button:disabled,.date48-auth-form button:disabled{opacity:.48}.date48-auth-secondary-link,.date48-auth-secondary{color:#2e2934;background:#ffffffb8;border:1px solid #16121212;border-radius:999px;justify-content:center;align-items:center;min-height:56px;padding:0 22px;font-size:18px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 14px 30px #201a1414}.date48-auth-error{color:#a12358;background:#c2215c14;border-radius:18px;margin-top:14px;padding:12px 14px;font-size:14px;font-weight:700}@media (max-width:760px){.date48-auth-page{padding:calc(env(safe-area-inset-top,0px) + 92px) 14px calc(112px + env(safe-area-inset-bottom,0px))}.date48-auth-card{border-radius:32px;padding:22px 18px 24px}.date48-auth-hero h1{font-size:max(38px,min(13vw,58px))}.date48-auth-hero p{font-size:17px}.date48-onboarding-grid{grid-template-columns:1fr;gap:12px}.date48-onboarding-grid input,.date48-onboarding-grid select,.date48-about-field textarea,.date48-auth-form input{border-radius:20px;height:52px;font-size:17px}.date48-about-field textarea{min-height:104px}.date48-auth-actions-row{flex-direction:column}.date48-auth-actions-row button,.date48-auth-secondary-link{width:100%}}.date48-auth-page,.date48-account-page,.date48-profile-page,.date48-security-page{box-sizing:border-box;width:100%;max-width:none}.date48-auth-card,.date48-onboarding-card{width:min(100%,820px);max-width:820px}.date48-account-card,.date48-account-hero,.date48-account-about,.date48-account-info-card,.date48-account-safety,.date48-account-actions,.date48-profile-card,.date48-security-card,.date48-security-hero{box-sizing:border-box;width:100%;max-width:820px}.date48-account-grid,.date48-profile-grid,.date48-security-grid{width:100%;max-width:820px}.date48-account-grid article,.date48-profile-grid article,.date48-security-card{box-sizing:border-box;width:100%}@media (max-width:760px){.date48-auth-page,.date48-account-page,.date48-profile-page,.date48-security-page{padding-left:14px;padding-right:14px}.date48-auth-card,.date48-onboarding-card,.date48-account-card,.date48-account-hero,.date48-account-about,.date48-account-info-card,.date48-account-safety,.date48-account-actions,.date48-profile-card,.date48-security-card,.date48-security-hero,.date48-account-grid,.date48-profile-grid,.date48-security-grid{width:calc(100vw - 28px);max-width:calc(100vw - 28px);margin-left:auto;margin-right:auto}}@media (max-width:390px){.date48-auth-page,.date48-account-page,.date48-profile-page,.date48-security-page{padding-left:12px;padding-right:12px}.date48-auth-card,.date48-onboarding-card,.date48-account-card,.date48-account-hero,.date48-account-about,.date48-account-info-card,.date48-account-safety,.date48-account-actions,.date48-profile-card,.date48-security-card,.date48-security-hero,.date48-account-grid,.date48-profile-grid,.date48-security-grid{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}}.date48-inline-stories{-webkit-backdrop-filter:blur(10px);background:linear-gradient(90deg,#fff0 0%,#ffffff1a 12% 88%,#fff0 100%);margin:0 -14px 10px;padding:7px 14px 8px;box-shadow:none!important;border-top:0!important;border-bottom:0!important}.date48-inline-story__thumb{border-width:1.5px;box-shadow:0 6px 14px #23162613,inset 0 0 0 1px #ffffffb8}.date48-inline-story--add span{border-width:1.5px;box-shadow:0 6px 14px #23162612,inset 0 0 0 1px #ffffffb8}@media (max-width:520px){.date48-inline-stories{background:linear-gradient(90deg,#fff0 0%,#ffffff16 10% 90%,#fff0 100%);margin:0 -12px 9px;padding:7px 12px 8px}}body:has(.date48-inline-stories){background:radial-gradient(circle at 8% 10%,#b4577924,#0000 24%),radial-gradient(circle at 88% 14%,#9154ad14,#0000 18%),linear-gradient(#fcfaf7 0%,#f4ede4 100%)!important}body:has(.date48-inline-stories) #root{background:0 0!important}body:has(.date48-inline-stories) .app-shell{background:0 0!important}body:has(.date48-inline-stories) .screen-body{background:0 0!important}body:has(.date48-inline-stories) .date48-inline-stories{box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:0!important}body:has(.date48-inline-stories) .date48-inline-stories:before{display:none!important}body:has(.date48-inline-stories) .date48-inline-stories:after{display:none!important}body:has(.date48-inline-stories) .date48-inline-story__thumb{box-shadow:0 6px 14px #23162612,inset 0 0 0 1px #ffffffb3!important}body:has(.date48-inline-stories) .date48-inline-story--add span{box-shadow:0 6px 14px #23162612,inset 0 0 0 1px #ffffffb3!important}.date48-story-viewer{isolation:isolate;z-index:9999!important;padding:max(14px, env(safe-area-inset-top)) 14px max(16px, env(safe-area-inset-bottom))!important;color:#fff!important;background:radial-gradient(circle at 50% 18%,#ffffff14,#0000 28%),linear-gradient(#110d14f5,#09070bfb)!important;flex-direction:column!important;justify-content:space-between!important;display:flex!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:0!important;overflow:hidden!important}.date48-story-viewer:before{content:"";z-index:-1;filter:blur(8px);opacity:.9;background:radial-gradient(circle at 18% 8%,#d73c8238,#0000 32%),radial-gradient(circle at 82% 18%,#ffc4851f,#0000 28%);position:absolute;top:0;bottom:0;left:0;right:0}.date48-story-viewer__close{top:max(14px, env(safe-area-inset-top))!important;z-index:5!important;color:#ffffffeb!important;-webkit-backdrop-filter:blur(18px)!important;background:#ffffff1f!important;border:1px solid #ffffff38!important;border-radius:999px!important;width:40px!important;height:40px!important;position:absolute!important;right:14px!important;box-shadow:0 14px 34px #00000042!important}.date48-story-viewer__top{z-index:4!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;gap:2px!important;min-height:48px!important;padding:6px 54px 8px 4px!important;display:flex!important;position:relative!important}.date48-story-viewer__top:before{content:"";background:linear-gradient(90deg,#ffffffeb,#ffffff57);border-radius:999px;height:3px;position:absolute;top:0;left:2px;right:54px;box-shadow:0 0 18px #ffffff38}.date48-story-viewer__top strong{letter-spacing:-.03em!important;color:#fffffff5!important;font-size:17px!important;font-weight:800!important;line-height:1.1!important}.date48-story-viewer__top span{color:#ffffff94!important;font-size:12px!important;font-weight:600!important;line-height:1.2!important}.date48-story-viewer__media{inset:calc(max(72px, env(safe-area-inset-top) + 58px)) 10px calc(max(92px, env(safe-area-inset-bottom) + 72px))!important;z-index:1!important;background:radial-gradient(circle at 50% 28%,#ffffff29,#0000 34%),linear-gradient(135deg,#d6377d52,#ffb9832e)!important;border-radius:34px!important;place-items:center!important;display:grid!important;position:absolute!important;overflow:hidden!important;box-shadow:0 28px 70px #00000075,inset 0 0 0 1px #ffffff1f!important}.date48-story-viewer__media img,.date48-story-viewer__media video{object-fit:cover!important;width:100%!important;height:100%!important;display:block!important}.date48-story-viewer__demo{text-align:center!important;background:radial-gradient(circle at 50% 35%,#ffffff57,#0000 24%),linear-gradient(135deg,#d03276e6,#e68f76db)!important;place-items:center!important;width:100%!important;height:100%!important;padding:28px!important;display:grid!important}.date48-story-viewer__demo span{color:#3f2d3adb!important;background:#ffffffeb!important;border-radius:999px!important;place-items:center!important;width:96px!important;height:96px!important;margin:0 auto 18px!important;font-size:42px!important;font-weight:900!important;display:grid!important;box-shadow:0 20px 54px #00000038!important}.date48-story-viewer__demo p{letter-spacing:-.04em!important;color:#fffffff5!important;max-width:280px!important;margin:0 auto!important;font-size:20px!important;font-weight:800!important;line-height:1.16!important}.date48-story-viewer__tap{z-index:3!important;color:#0000!important;-webkit-tap-highlight-color:transparent!important;background:0 0!important;border:0!important;width:38%!important;position:absolute!important;top:88px!important;bottom:92px!important}.date48-story-viewer__tap--left{left:0!important}.date48-story-viewer__tap--right{right:0!important}.date48-story-viewer__bottom{z-index:4!important;justify-content:center!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:10px 8px 0!important;display:flex!important;position:relative!important}.date48-story-viewer__bottom button{color:#ffffffeb!important;letter-spacing:-.02em!important;-webkit-backdrop-filter:blur(18px)!important;background:#ffffff1f!important;border:1px solid #ffffff38!important;border-radius:999px!important;min-height:44px!important;padding:0 18px!important;font-size:14px!important;font-weight:750!important;box-shadow:0 14px 34px #0000003d!important}@media (max-width:520px){.date48-story-viewer{padding-left:10px!important;padding-right:10px!important}.date48-story-viewer__media{inset:calc(max(70px, env(safe-area-inset-top) + 56px)) 8px calc(max(88px, env(safe-area-inset-bottom) + 70px))!important;border-radius:30px!important}.date48-story-viewer__top{padding-left:4px!important}}.date48-account-page{box-sizing:border-box;color:#111015;background:radial-gradient(circle at 50% -120px,#ffffffc7,#0000 260px),linear-gradient(#faf7f166,#f8f4ed0f);width:100%;min-height:calc(100svh - 90px);padding:92px 14px 156px}.date48-account-hero,.date48-account-panel,.date48-account-layers,.date48-account-actions{box-sizing:border-box;width:min(100%,780px);max-width:780px;margin-left:auto;margin-right:auto}.date48-account-hero{box-shadow:none;background:0 0;border:0;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:22px;margin-bottom:24px;padding:10px 18px 26px;display:grid}.date48-account-avatar{cursor:pointer;background:linear-gradient(145deg,#fff,#eee9df);border:2px solid #ffffffe6;border-radius:999px;place-items:center;width:104px;height:104px;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 34px #30261924,0 0 0 1px #1212120a,inset 0 1px #ffffffe6}.date48-account-avatar img{object-fit:cover;width:100%;height:100%}.date48-account-avatar span{color:#111015;font-size:48px;font-weight:900;line-height:1}.date48-account-identity{min-width:0}.date48-account-kicker{letter-spacing:.42em;text-transform:uppercase;color:#1110156b;margin:0 0 4px;font-size:12px;font-weight:900;line-height:1.1;display:block}.date48-account-identity h1,.date48-account-panel h1{letter-spacing:-.075em;color:#111015;margin:0;font-size:max(46px,min(12vw,86px));font-weight:950;line-height:.9}.date48-account-identity p{color:#1110158f;letter-spacing:-.055em;margin:12px 0 14px;font-size:max(23px,min(6.6vw,38px));line-height:1}.date48-account-trust{color:#1b1718;white-space:nowrap;background:#ffffffc2;border:1px solid #10101012;border-radius:999px;justify-content:center;align-items:center;max-width:100%;min-height:38px;padding:0 18px;font-size:16px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 10px 22px #2d261a17,inset 0 1px #ffffffeb}.date48-account-panel{-webkit-backdrop-filter:blur(18px)saturate(1.12);background:#ffffffbf;border:1px solid #ffffffd1;border-radius:34px;margin-bottom:14px;padding:22px;position:relative;box-shadow:0 16px 40px #2a231914,inset 0 1px #ffffffeb}.date48-account-about{justify-content:space-between;align-items:flex-start;gap:16px;min-height:106px;display:flex}.date48-account-panel h2{letter-spacing:-.065em;color:#111015;margin:0;font-size:max(30px,min(7vw,48px));font-weight:950;line-height:.95}.date48-account-panel p{color:#1110158f;letter-spacing:-.035em;margin:14px 0 0;font-size:20px;line-height:1.24}.date48-account-inline-edit,.date48-account-panel-head a{color:#11101575;white-space:nowrap;font-size:14px;font-weight:900;text-decoration:none}.date48-account-panel-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.date48-account-param-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.date48-account-param{background:#ffffff9e;border:1px solid #1010100b;border-radius:24px;min-width:0;padding:14px 15px;box-shadow:inset 0 1px #ffffffd1}.date48-account-param span,.date48-account-layer span{color:#1110156b;letter-spacing:.34em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:900;line-height:1;display:block}.date48-account-param b{text-overflow:ellipsis;white-space:nowrap;color:#111015;letter-spacing:-.035em;min-width:0;font-size:18px;font-weight:900;line-height:1.1;display:block;overflow:hidden}.date48-account-layers{grid-template-columns:1fr;gap:12px;margin-bottom:14px;display:grid}.date48-account-layer{box-sizing:border-box;-webkit-backdrop-filter:blur(16px)saturate(1.1);background:#ffffffc7;border:1px solid #ffffffd6;border-radius:32px;min-height:92px;padding:18px 20px;box-shadow:0 14px 34px #2a231913,inset 0 1px #fffffff0}.date48-account-layer b{color:#111015;letter-spacing:-.06em;font-size:max(26px,min(6vw,40px));font-weight:950;line-height:.98;display:block}.date48-account-layer small{color:#1110158a;letter-spacing:-.03em;margin-top:9px;font-size:18px;line-height:1.18;display:block}.date48-account-layer.is-done{background:#ffffffd6}.date48-account-safety{padding:24px 22px 22px}.date48-account-secondary-action,.date48-account-main-action,.date48-account-logout{box-sizing:border-box;letter-spacing:-.025em;cursor:pointer;border:0;border-radius:24px;justify-content:center;align-items:center;width:100%;min-height:58px;font-size:19px;font-weight:950;line-height:1;text-decoration:none;display:inline-flex}.date48-account-secondary-action{color:#19171d;background:#ffffffb3;border:1px solid #10101013;margin-top:20px;box-shadow:0 10px 24px #2a231912,inset 0 1px #fffffff5}.date48-account-actions{gap:12px;margin-top:18px;display:grid}.date48-account-main-action{color:#fff;background:linear-gradient(145deg,#19171d,#343139);box-shadow:0 18px 34px #1110152e,inset 0 1px #ffffff2e}.date48-account-logout{color:#111015b8;background:#ffffffbd;box-shadow:0 12px 26px #2a231911,inset 0 1px #fffffff5}.date48-account-steps{gap:10px;margin:22px 0;display:grid}.date48-account-steps div{color:#111015ad;background:#ffffffad;border-radius:18px;align-items:center;min-height:44px;padding:0 16px;font-weight:800;display:flex}.date48-auth-page{box-sizing:border-box;color:#111015;background:0 0;width:100%;min-height:calc(100svh - 90px);padding:92px 14px 156px}.date48-auth-card{box-sizing:border-box;-webkit-backdrop-filter:blur(18px)saturate(1.12);background:#ffffffc2;border:1px solid #ffffffd6;border-radius:36px;width:min(100%,780px);max-width:780px;margin:0 auto;padding:24px 22px;box-shadow:0 20px 48px #2a231917,inset 0 1px #fffffff5}.date48-auth-back{color:#1110159e;background:#ffffffb3;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-weight:850;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #fffffff5}.date48-auth-hero{margin:24px 0 22px}.date48-auth-hero h1{color:#111015;letter-spacing:-.075em;margin:8px 0 0;font-size:max(42px,min(11vw,78px));font-weight:950;line-height:.9}.date48-auth-hero p{color:#1110158f;letter-spacing:-.03em;margin:18px 0 0;font-size:20px;line-height:1.32}.date48-auth-kicker{color:#1110156b;letter-spacing:.42em;text-transform:uppercase;font-size:12px;font-weight:900;display:block}.date48-onboarding-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.date48-onboarding-grid label,.date48-about-field,.date48-auth-form label{color:#11101594;gap:8px;font-size:15px;font-weight:850;display:grid}.date48-onboarding-grid input,.date48-onboarding-grid select,.date48-about-field textarea,.date48-auth-form input{box-sizing:border-box;color:#111015;background:#ffffffbd;border:1px solid #10101014;border-radius:22px;outline:none;width:100%;min-width:0;min-height:56px;padding:0 18px;font-size:18px;font-weight:760;box-shadow:inset 0 1px #fffffff5,0 8px 18px #2a23190b}.date48-about-field{margin-top:12px}.date48-about-field textarea{resize:vertical;min-height:116px;padding:16px 18px;line-height:1.3}.date48-auth-actions-row{grid-template-columns:1fr;gap:12px;margin-top:16px;display:grid}.date48-auth-actions-row button,.date48-auth-form button{color:#fff;cursor:pointer;background:linear-gradient(145deg,#19171d,#343139);border:0;border-radius:24px;width:100%;min-height:58px;font-size:19px;font-weight:950;box-shadow:0 18px 34px #1110152e,inset 0 1px #ffffff2e}.date48-auth-secondary-link,.date48-auth-secondary{color:#111015b8;background:#ffffffb8;border:1px solid #10101012;border-radius:22px;justify-content:center;align-items:center;min-height:54px;font-size:18px;font-weight:900;text-decoration:none;display:inline-flex}@media (max-width:760px){.date48-account-page,.date48-auth-page{padding-left:14px;padding-right:14px}.date48-account-hero,.date48-account-panel,.date48-account-layers,.date48-account-actions,.date48-auth-card{width:calc(100vw - 28px);max-width:calc(100vw - 28px)}}@media (max-width:430px){.date48-account-page,.date48-auth-page{padding-top:86px;padding-left:12px;padding-right:12px}.date48-account-hero,.date48-account-panel,.date48-account-layers,.date48-account-actions,.date48-auth-card{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.date48-account-hero{grid-template-columns:92px minmax(0,1fr);gap:16px;margin-bottom:18px;padding:4px 8px 24px}.date48-account-avatar{width:92px;height:92px}.date48-account-identity h1{font-size:54px}.date48-account-identity p{margin-top:9px;margin-bottom:12px;font-size:28px}.date48-account-trust{min-height:34px;padding:0 14px;font-size:14px}.date48-account-panel{border-radius:30px;margin-bottom:12px;padding:19px 18px}.date48-account-panel h2{font-size:36px}.date48-account-panel p{font-size:18px}.date48-account-param-grid{grid-template-columns:1fr}.date48-account-layer{border-radius:28px;min-height:88px;padding:17px 18px}.date48-account-layer b{font-size:31px}.date48-account-layer small{font-size:17px}.date48-onboarding-grid{grid-template-columns:1fr}.date48-auth-card{border-radius:32px;padding:22px 18px}}.date48-story-viewer{z-index:9999!important;color:#fff!important;background:radial-gradient(circle at 50% 12%,#ae2b6433,#0000 34%),linear-gradient(#120912 0%,#060408 100%)!important;width:100vw!important;min-height:100svh!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:0!important;overflow:hidden!important}.date48-story-viewer__progress{top:calc(env(safe-area-inset-top) + 18px)!important;z-index:3!important;position:fixed!important;left:22px!important;right:118px!important}.date48-story-viewer__header{top:calc(env(safe-area-inset-top) + 36px)!important;z-index:3!important;color:#fff!important;text-shadow:0 2px 18px #0000008c!important;position:fixed!important;left:22px!important;right:98px!important}.date48-story-viewer__close{top:calc(env(safe-area-inset-top) + 28px)!important;z-index:4!important;position:fixed!important;right:22px!important}.date48-story-viewer__media{top:calc(env(safe-area-inset-top) + 88px)!important;left:16px!important;right:16px!important;bottom:calc(env(safe-area-inset-bottom) + 112px)!important;background:#10080d!important;border-radius:30px!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;position:fixed!important;overflow:hidden!important;box-shadow:0 26px 90px #00000073!important}.date48-story-viewer__media img,.date48-story-viewer__media video{object-fit:cover!important;border-radius:0!important;width:100%!important;height:100%!important;display:block!important}.date48-story-viewer__actions{left:18px!important;right:18px!important;bottom:calc(env(safe-area-inset-bottom) + 22px)!important;z-index:4!important;grid-template-columns:1fr 1fr 1fr!important;gap:10px!important;padding:0!important;display:grid!important;position:fixed!important}.date48-story-viewer__actions button{color:#fff!important;-webkit-backdrop-filter:blur(18px)!important;background:#ffffff1f!important;border:1px solid #ffffff38!important;border-radius:999px!important;min-height:54px!important;font-weight:800!important}@media (max-width:520px){.date48-story-viewer__media{top:calc(env(safe-area-inset-top) + 86px)!important;left:12px!important;right:12px!important;bottom:calc(env(safe-area-inset-bottom) + 104px)!important;border-radius:28px!important}.date48-story-viewer__actions{left:14px!important;right:14px!important;bottom:calc(env(safe-area-inset-bottom) + 16px)!important}}@media (max-width:820px){.date48-story-viewer{z-index:99999!important;color:#fff!important;background:#050207!important;width:100vw!important;height:100vh!important;min-height:100vh!important;margin:0!important;padding:0!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:0!important;overflow:hidden!important}@supports (height:100svh){.date48-story-viewer{height:100svh!important;min-height:100svh!important}}.date48-story-viewer:before{content:""!important;z-index:2!important;pointer-events:none!important;background:linear-gradient(#0000009e 0%,#0000002e 24%,#0000 48%),linear-gradient(#0000 46%,#0003 72%,#000000c2 100%)!important;position:absolute!important;top:0!important;bottom:0!important;left:0!important;right:0!important}.date48-story-viewer__media{z-index:1!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;box-shadow:none!important;background:#050207!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;position:absolute!important;top:0!important;bottom:0!important;left:0!important;right:0!important;overflow:hidden!important}.date48-story-viewer__media img,.date48-story-viewer__media video{object-fit:cover!important;object-position:center center!important;background:#050207!important;border-radius:0!important;width:100%!important;min-width:100%!important;height:100%!important;min-height:100%!important;display:block!important;position:absolute!important;top:0!important;bottom:0!important;left:0!important;right:0!important}.date48-story-viewer__progress{top:calc(env(safe-area-inset-top) + 18px)!important;z-index:5!important;position:absolute!important;left:22px!important;right:104px!important}.date48-story-viewer__header{top:calc(env(safe-area-inset-top) + 38px)!important;z-index:5!important;color:#fff!important;text-shadow:0 2px 18px #000000b8!important;position:absolute!important;left:22px!important;right:102px!important}.date48-story-viewer__close{top:calc(env(safe-area-inset-top) + 28px)!important;z-index:6!important;position:absolute!important;right:18px!important}.date48-story-viewer__actions{left:16px!important;right:16px!important;bottom:calc(env(safe-area-inset-bottom) + 18px)!important;z-index:5!important;background:0 0!important;grid-template-columns:1fr 1fr 1fr!important;gap:10px!important;margin:0!important;padding:0!important;display:grid!important;position:absolute!important}.date48-story-viewer__actions button{color:#fff!important;-webkit-backdrop-filter:blur(18px)!important;background:#120f138f!important;border:1px solid #fff3!important;border-radius:999px!important;min-height:54px!important;font-weight:800!important;box-shadow:0 14px 42px #00000057!important}.date48-story-viewer__views{color:#ffffffb8!important;margin-top:2px!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;display:block!important}[class*=notice]:empty,[class*=Notice]:empty{display:none!important}}.date48-story-viewer__meta{color:#ffffffb8;margin-top:2px;font-size:12px;font-weight:700;line-height:1.25;display:block}.date48-inline-story__thumb--profile-cover img{object-fit:cover;width:100%;height:100%}.date48-inline-story__thumb--profile-cover>span:not(.date48-inline-story__video){color:#fffffff0;text-shadow:0 2px 10px #0000003d;font-size:18px;font-weight:900}.date48-account-avatar-note{color:#412430b8;letter-spacing:-.01em;background:#ae2b6414;border-radius:999px;width:fit-content;margin-top:4px;padding:6px 10px;font-size:11px;font-weight:800;display:inline-flex}.date48-provider-login{box-sizing:border-box;min-height:100vh;padding:max(28px, env(safe-area-inset-top)) 18px max(30px, env(safe-area-inset-bottom));color:#21181c;background:radial-gradient(circle at 50% -10%,#be235513,#0000 34%),#fbfaf8;place-items:center;display:grid}.date48-provider-login-card{box-sizing:border-box;width:min(100%,420px)}.date48-provider-login-back{color:#21181c94;align-items:center;min-height:38px;margin-bottom:34px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.date48-provider-login-hero{margin-bottom:30px}.date48-provider-login-brand{color:#b51f52;letter-spacing:-.02em;align-items:center;margin-bottom:13px;font-size:15px;font-weight:850;display:inline-flex}.date48-provider-login-hero h1{letter-spacing:-.055em;margin:0;font-size:max(34px,min(9vw,44px));font-weight:850;line-height:.98}.date48-provider-login-hero p{color:#21181c94;max-width:350px;margin:17px 0 0;font-size:15px;line-height:1.55}.date48-provider-login-actions{gap:10px;display:grid}.date48-provider-button{box-sizing:border-box;color:#21181c;text-align:left;width:100%;min-height:68px;font:inherit;background:#ffffffc7;border:1px solid #21181c17;border-radius:20px;grid-template-columns:42px 1fr auto;align-items:center;gap:13px;padding:10px 14px;transition:transform .14s,border-color .14s,background .14s;display:grid;box-shadow:inset 0 1px #fffc,0 8px 30px #301a2209}.date48-provider-button.is-yandex{cursor:pointer;background:#fff;border-color:#21181c1f}.date48-provider-button.is-yandex:hover{border-color:#b51f5240;transform:translateY(-1px)}.date48-provider-button.is-yandex:active{transform:scale(.99)}.date48-provider-button:disabled{opacity:.55;cursor:default}.date48-provider-icon{letter-spacing:-.04em;background:#21181c0e;border-radius:14px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:850;display:grid}.date48-provider-icon.is-yandex-icon{color:#fff;background:#151315;font-size:21px;font-weight:800}.date48-provider-button-copy{gap:3px;min-width:0;display:grid}.date48-provider-button-copy b{font-size:15px;font-weight:780;line-height:1.2}.date48-provider-button-copy small{color:#21181c75;font-size:12px;line-height:1.25}.date48-provider-arrow{color:#b51f52;padding-right:3px;font-size:20px;font-weight:650}.date48-provider-soon{color:#21181c6b;text-transform:uppercase;letter-spacing:.06em;background:#21181c0b;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;line-height:1}.date48-provider-login-error{color:#9e1945;background:#b51f5212;border-radius:15px;margin-top:14px;padding:12px 14px;font-size:13px;line-height:1.45}.date48-provider-login-note{color:#21181c80;gap:10px;margin-top:24px;padding:0 3px;font-size:12px;line-height:1.5;display:flex}.date48-provider-login-note-mark{color:#b51f52;flex:none;font-weight:900}.date48-provider-login-legal{color:#21181c57;margin:20px 3px 0;font-size:10px;line-height:1.55}@media (max-width:560px){.date48-provider-login{padding-top:max(24px, env(safe-area-inset-top));align-items:start}.date48-provider-login-back{margin-bottom:30px}.date48-provider-login-card{width:100%}.date48-provider-button{border-radius:18px;min-height:66px}}.date48-security-page{padding-bottom:calc(120px + env(safe-area-inset-bottom))}.date48-security-page .date48-security-hero{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.date48-security-page .date48-security-grid{grid-template-columns:1fr;gap:14px;display:grid}.date48-security-page .date48-security-card{background:#ffffffa8;border:1px solid #24191f0f;border-radius:26px;padding:22px;box-shadow:0 16px 34px #281a220e,inset 0 1px #ffffffb8}.date48-security-page .date48-security-card h2{letter-spacing:-.04em;margin:0 0 10px;font-size:max(24px,min(6vw,30px));line-height:1.06}.date48-security-page .date48-security-row{border-bottom:1px solid #24191f12;justify-content:space-between;align-items:center;gap:18px;min-height:54px;padding:13px 0;font-size:17px;line-height:1.25;display:flex}.date48-security-page .date48-security-row:last-child{border-bottom:0}.date48-security-page .date48-security-row>span{color:#221b1fad;flex:auto;min-width:0}.date48-security-page .date48-security-row>b{text-align:right;color:#21191d;white-space:nowrap;flex:none;margin-left:auto;font-size:16px;font-weight:760}.date48-security-page .date48-security-card .date48-muted{color:#221b1f94;max-width:none;margin:13px 0 0;font-size:15px;line-height:1.45}.date48-security-page .date48-auth-secondary-link{width:auto;min-height:42px;box-shadow:none;background:#ffffff94;border:1px solid #24191f0f;border-radius:999px;align-self:flex-start;padding:0 15px;font-size:15px;font-weight:700}@media (max-width:760px){.date48-security-page .date48-security-hero,.date48-security-page .date48-security-card,.date48-security-page .date48-security-grid{width:calc(100vw - 28px);max-width:calc(100vw - 28px)}.date48-security-page .date48-security-card{border-radius:24px;padding:19px 18px}.date48-security-page .date48-auth-secondary-link{width:auto;min-height:40px;padding:0 14px;font-size:14px}}@media (max-width:390px){.date48-security-page .date48-security-hero,.date48-security-page .date48-security-card,.date48-security-page .date48-security-grid{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.date48-security-page .date48-security-row{gap:12px;font-size:16px}.date48-security-page .date48-security-row>b{font-size:15px}}.date48-security-page{box-sizing:border-box}.date48-security-page .date48-security-hero,.date48-security-page .date48-security-grid{box-sizing:border-box;width:min(100%,720px);max-width:720px;margin-left:auto;margin-right:auto}.date48-security-page .date48-security-card{box-sizing:border-box;width:100%;max-width:none;margin-left:0;margin-right:0}@media (max-width:760px){.date48-security-page{padding-left:18px;padding-right:18px}.date48-security-page .date48-security-hero,.date48-security-page .date48-security-grid{width:100%;max-width:100%;margin-left:auto;margin-right:auto}.date48-security-page .date48-security-card{width:100%;max-width:100%}}@media (max-width:390px){.date48-security-page{padding-left:16px;padding-right:16px}.date48-security-page .date48-security-hero,.date48-security-page .date48-security-grid,.date48-security-page .date48-security-card{width:100%;max-width:100%}}.date48-vkid-button{box-sizing:border-box;color:#fff;cursor:pointer;width:100%;height:56px;min-height:56px;font:inherit;-webkit-font-smoothing:inherit;-moz-osx-font-smoothing:inherit;-webkit-appearance:none;appearance:none;background:#07f;border:0;border-radius:18px;margin:0;padding:0;line-height:normal;transition:opacity .1s ease-out,transform .1s ease-out;overflow:visible;box-shadow:0 8px 24px #0077ff24}.date48-vkid-button:hover{opacity:.8}.date48-vkid-button:active{opacity:.7;transform:scale(.97)}.date48-vkid-button-container{box-sizing:border-box;align-items:center;min-height:56px;padding:8px 10px;display:flex}.date48-vkid-button-icon{flex:0 0 28px;width:28px;height:28px;display:block}.date48-vkid-button-icon svg{width:28px;height:28px;display:block}.date48-vkid-button-icon+.date48-vkid-button-text{margin-left:-28px}.date48-vkid-button-text{color:#fff;flex:1;justify-content:center;min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Roboto,sans-serif;font-size:16px;font-weight:600;line-height:1.2;display:flex}.date48-ideas{background:linear-gradient(#ffffffc7,#ffffff85);border:1px solid #2a1d2311;border-radius:28px;margin-top:16px;padding:24px 22px 8px;box-shadow:0 18px 44px #301d250b,inset 0 1px #ffffffd1}.date48-ideas__head{justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:17px;display:flex}.date48-ideas__eyebrow{color:#a61946;letter-spacing:.11em;margin:0 0 7px;font-size:10px;font-weight:850;line-height:1}.date48-ideas__head h2{color:#261c21;letter-spacing:-.045em;margin:0;font-size:max(25px,min(6vw,31px));line-height:1.02}.date48-ideas__head>div>p:last-child{color:#261c218a;max-width:430px;margin:9px 0 0;font-size:13px;line-height:1.45}.date48-ideas__refresh{color:#261c219e;min-height:38px;font:inherit;cursor:pointer;background:#ffffffa3;border:1px solid #261c2113;border-radius:999px;flex:none;padding:0 13px;font-size:12px;font-weight:720}.date48-ideas__refresh:disabled{opacity:.5;cursor:default}.date48-ideas__list{display:grid}.date48-idea{border-top:1px solid #261c2113;grid-template-columns:38px minmax(0,1fr);gap:15px;padding:20px 0 21px;display:grid}.date48-idea__number{color:#a61946;letter-spacing:.05em;border:1px solid #a6194629;border-radius:50%;place-items:center;width:34px;height:34px;font-size:10px;font-weight:850;line-height:1;display:grid}.date48-idea__body{min-width:0}.date48-idea__scenario{color:#261c217a;margin:0 0 5px;font-size:11px;font-weight:760;line-height:1.25}.date48-idea h3{color:#261c21;letter-spacing:-.035em;margin:0;font-size:20px;font-weight:790;line-height:1.08}.date48-idea__address{color:#261c218f;margin:6px 0 0;font-size:13px;line-height:1.35}.date48-idea__meta{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.date48-idea__meta span{box-sizing:border-box;color:#522132c7;background:#a619460f;border-radius:999px;align-items:center;min-height:28px;padding:5px 9px;font-size:11px;font-weight:720;line-height:1.2;display:inline-flex}.date48-idea__reason{color:#33262c;margin:11px 0 0;font-size:13px;font-weight:610;line-height:1.4}.date48-idea__subtitle{color:#261c2175;margin:5px 0 0;font-size:12px;line-height:1.4}.date48-ideas__message{border-top:1px solid #261c2113;margin:0 0 16px;padding:18px 0 13px}.date48-ideas__message p{color:#261c2194;margin:0;font-size:13px;line-height:1.45}.date48-ideas__message button{color:#a61946;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:10px;padding:0;font-size:12px;font-weight:760}.date48-ideas__loading{border-top:1px solid #261c2113;gap:1px;margin-bottom:12px;display:grid}.date48-ideas__loading span{background:linear-gradient(90deg,#261c2105,#a619460b,#261c2105) 0 0/220% 100%;border-bottom:1px solid #261c210e;height:94px;animation:1.3s ease-in-out infinite date48IdeasShimmer;display:block}@keyframes date48IdeasShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:560px){.date48-ideas{border-radius:25px;padding:21px 18px 6px}.date48-ideas__head{gap:12px}.date48-ideas__head h2{font-size:27px}.date48-ideas__refresh{min-height:34px;padding:0 11px;font-size:11px}.date48-idea{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:18px 0 19px}.date48-idea__number{width:31px;height:31px}.date48-idea h3{font-size:19px}}.date48-places-entry{background:radial-gradient(circle at 100% 0,#ea52801f,#0000 34%),#fffbf9e0;border:1px solid #c5265826;border-radius:28px;grid-template-columns:68px minmax(0,1fr);gap:17px;margin-top:17px;padding:22px;display:grid;box-shadow:0 20px 50px #6c263d12,inset 0 1px #ffffffe6}.date48-places-entry__icon{background:radial-gradient(circle at 38% 30%,#ff98b7,#e93d73 48%,#bd1d51 100%);border-radius:50%;place-items:center;width:62px;height:62px;display:grid;box-shadow:0 13px 28px #d3275b3d}.date48-places-entry__icon span{color:#0000;border:4px solid #fff;border-radius:50%;place-items:center;width:18px;height:18px;display:grid;position:relative}.date48-places-entry__icon span:after{content:"";background:#fff;border-radius:0 0 3px;width:10px;height:10px;position:absolute;top:14px;transform:rotate(45deg)}.date48-places-entry__eyebrow{color:#bd1d51;letter-spacing:.1em;margin:2px 0 5px;font-size:10px;font-weight:850;line-height:1}.date48-places-entry h2{color:#21181c;letter-spacing:-.045em;margin:0;font-size:27px;line-height:1}.date48-places-entry__copy>p:not(.date48-places-entry__eyebrow){color:#21181c94;margin:9px 0 0;font-size:13px;line-height:1.42}.date48-places-entry__preview{background:#ffffff9e;border:1px solid #2a1b220e;border-radius:17px;gap:3px;margin-top:14px;padding:13px 14px;display:grid}.date48-places-entry__preview strong{color:#9f1d48;font-size:12px}.date48-places-entry__preview span{color:#23191e;font-size:14px;font-weight:760}.date48-places-entry__preview small{color:#21181c7a;font-size:11px}.date48-places-entry button{color:#fff;width:100%;min-height:47px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#f25784,#d92862);border:0;border-radius:16px;margin-top:15px;font-size:14px;font-weight:800;box-shadow:0 12px 26px #d3275b30}.date48-places-entry button:disabled{opacity:.46;cursor:default}.date48-places-page,.date48-place-detail-page,.date48-plan-page{width:min(100%,680px);padding:8px 0 calc(118px + env(safe-area-inset-bottom));box-sizing:border-box;margin:0 auto}.date48-places-top{grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;padding:5px 2px 12px;display:grid}.date48-places-top>div{text-align:center}.date48-places-top p{color:#ba2152;letter-spacing:.13em;margin:0 0 4px;font-size:9px;font-weight:850}.date48-places-top h1{color:#21181c;letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:500;line-height:1}.date48-places-back{color:#271b21;width:38px;height:38px;font:inherit;cursor:pointer;background:#ffffff80;border:0;border-radius:50%;font-size:28px;line-height:1}.date48-places-top__spark{color:#df3a6b;place-items:center;font-size:17px;display:grid}.date48-places-filters{gap:7px;padding:6px 2px 14px;display:flex;overflow-x:auto}.date48-places-filters span{box-sizing:border-box;color:#271b2191;background:#ffffff8c;border:1px solid #291b2212;border-radius:999px;flex:none;align-items:center;min-height:31px;padding:6px 13px;font-size:11px;font-weight:680;display:inline-flex}.date48-places-filters span.is-active{color:#b71d4d;background:#e6396d1b;border-color:#d42c5e21}.date48-places-intro p{color:#2c2025;margin:0;font-size:14px;font-weight:720}.date48-places-intro small{color:#2c202573;margin-top:4px;font-size:11px;display:block}.date48-place-cards{gap:14px;display:grid}.date48-place-card{cursor:pointer;background:#fffc;border:1px solid #2d1d2411;border-radius:27px;overflow:hidden;box-shadow:0 17px 42px #40232e13}.date48-place-card__visual{background:linear-gradient(#0c090a08,#0f080b7a),radial-gradient(circle at 18% 36%,#ffc581e6 0 2%,#0000 3%),radial-gradient(circle at 70% 29%,#ffb169cc 0 2%,#0000 3%),radial-gradient(circle at 44% 55%,#ffc988a6 0 2%,#0000 3%),linear-gradient(135deg,#57352d,#1c2923 52%,#6b4333);height:188px;position:relative;overflow:hidden}.date48-place-card--tone-2 .date48-place-card__visual{background:linear-gradient(#0a06060a,#0f070885),radial-gradient(circle at 72% 28%,#ffbd68e6 0 2%,#0000 3%),radial-gradient(circle at 28% 40%,#ff9b57b8 0 2%,#0000 3%),linear-gradient(135deg,#403427,#4e261f 48%,#182820)}.date48-place-card--tone-3 .date48-place-card__visual{background:linear-gradient(#0a060808,#0a07098a),radial-gradient(circle at 20% 30%,#ffd289db 0 2%,#0000 3%),radial-gradient(circle at 64% 43%,#fa6c 0 2%,#0000 3%),linear-gradient(135deg,#27352d,#6e4434 55%,#2b2221)}.date48-place-card__lights{background:linear-gradient(90deg,#0000 0 15%,#ffffff0d 15% 16%,#0000 16% 42%,#ffffff0a 42% 43%,#0000 43%),linear-gradient(#0000 45%,#0c070885);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__visual-label{color:#ffffffe6;text-shadow:0 2px 14px #0000006b;font-size:12px;font-weight:760;position:absolute;bottom:14px;left:16px}.date48-place-heart{color:#fff;width:36px;height:36px;font:inherit;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#160d1045;border:1px solid #ffffff3d;border-radius:50%;place-items:center;font-size:21px;display:grid;position:absolute;top:13px;right:13px}.date48-place-card__title-row{justify-content:space-between;gap:16px;display:flex}.date48-place-card__title-row h2{color:#21181c;letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500;line-height:1.04}.date48-place-card__title-row p{color:#21181c80;margin:5px 0 0;font-size:11px;line-height:1.3}.date48-place-card__title-row>span{color:#c52b59;font-size:27px;line-height:1}.date48-place-card__tags,.date48-place-detail-tags{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.date48-place-card__tags span,.date48-place-detail-tags span{color:#2a1c2294;background:#fbf5f2;border:1px solid #321e260e;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:700}.date48-place-card__meta{border-top:1px solid #2d1d2411;justify-content:space-between;align-items:end;gap:12px;margin-top:13px;padding-top:12px;display:flex}.date48-place-card__meta strong{color:#332228;font-size:13px}.date48-place-card__meta strong small{color:#33222870;font-size:10px;font-weight:600}.date48-place-card__meta>span{color:#b52150;font-size:12px;font-weight:760}.date48-place-detail-hero{background:linear-gradient(#08050514,#11070a8c),radial-gradient(circle at 27% 27%,#ffc270eb 0 2.2%,#0000 3%),radial-gradient(circle at 69% 36%,#ffaf5ebd 0 2%,#0000 3%),radial-gradient(circle at 47% 58%,#ffd18ea8 0 2%,#0000 3%),linear-gradient(135deg,#183025,#754532 54%,#271717);border-radius:0 0 34px 34px;height:min(55vw,360px);min-height:255px;position:relative;overflow:hidden}.date48-place-detail-hero__lights{background:linear-gradient(#0000 36%,#0a040694);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-detail-back,.date48-place-detail-heart{color:#fff;width:40px;height:40px;font:inherit;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;background:#0f090b4d;border:1px solid #ffffff38;border-radius:50%;place-items:center;display:grid;position:absolute;top:15px}.date48-place-detail-back{font-size:29px;left:15px}.date48-place-detail-heart{font-size:21px;right:15px}.date48-place-detail-hero>span{color:#ffffffe8;font-size:12px;font-weight:770;position:absolute;bottom:25px;left:20px}.date48-place-detail-sheet{z-index:2;background:#fcfaf7;border-radius:30px 30px 0 0;margin:-24px 0 0;padding:25px 21px 24px;position:relative}.date48-place-detail-kicker{color:#bd2252;letter-spacing:.12em;margin:0 0 7px;font-size:9px;font-weight:850}.date48-place-detail-sheet h1{color:#21181c;letter-spacing:-.05em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:max(34px,min(9vw,45px));font-weight:500;line-height:.98}.date48-place-detail-address{color:#21181c7a;margin:8px 0 0;font-size:12px}.date48-place-detail-facts{border-top:1px solid #2b1d2312;border-bottom:1px solid #2b1d2312;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:18px;padding:15px 0;display:grid}.date48-place-detail-facts>div{border-right:1px solid #2b1d2312;padding:0 12px}.date48-place-detail-facts>div:first-child{padding-left:0}.date48-place-detail-facts>div:last-child{border-right:0}.date48-place-detail-facts small{color:#23191d6e;margin-bottom:5px;font-size:9px;display:block}.date48-place-detail-facts strong{color:#2e2026;font-size:12px;line-height:1.25;display:block}.date48-place-detail-reason{color:#332429;margin:18px 0 0;font-size:15px;font-weight:640;line-height:1.48}.date48-place-detail-subtitle{color:#33242980;margin:7px 0 0;font-size:13px;line-height:1.45}.date48-place-detail-thumbs{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:19px;display:grid}.date48-place-detail-thumbs i{background:radial-gradient(circle at 30% 30%,#ffc070d1 0 4%,#0000 5%),linear-gradient(135deg,#4c3328,#17271f);border-radius:16px;height:82px;display:block}.date48-place-detail-thumbs i:nth-child(2){background:radial-gradient(circle at 70% 27%,#ffb563cc 0 4%,#0000 5%),linear-gradient(135deg,#1d3027,#71422e)}.date48-place-detail-thumbs i:nth-child(3){background:radial-gradient(circle at 40% 32%,#ffca7fd9 0 4%,#0000 5%),linear-gradient(135deg,#663a2d,#252220)}.date48-place-detail-choose,.date48-plan-primary{color:#fff;width:100%;min-height:53px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#ef547e,#d9235d);border:0;border-radius:17px;margin-top:21px;font-size:15px;font-weight:820;box-shadow:0 14px 31px #d2265933}.date48-place-detail-loading{background:linear-gradient(100deg,#35202809,#d32a5b12,#35202809) 0 0/220% 100%;border-radius:30px;width:100%;height:620px;animation:1.3s ease-in-out infinite date48IdeasShimmer}.date48-plan-success{text-align:center;padding:30px 18px 25px;position:relative}.date48-plan-check{color:#fff;background:linear-gradient(135deg,#f45d88,#d72460);border-radius:50%;place-items:center;width:76px;height:76px;margin:0 auto 18px;font-size:33px;font-weight:650;display:grid;box-shadow:0 17px 39px #cf265838}.date48-plan-success h1{color:#21181c;letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:35px;font-weight:500;line-height:1}.date48-plan-success p{color:#21181c80;margin:9px 0 0;font-size:13px}.date48-plan-spark{color:#ef5d85;position:absolute}.date48-plan-spark--1{top:42px;left:54px}.date48-plan-spark--2{top:82px;right:50px}.date48-plan-card{background:#ffffffc7;border:1px solid #2d1d2412;border-radius:27px;margin-top:7px;padding:20px;box-shadow:0 18px 46px #41232e12}.date48-plan-card__eyebrow{color:#bd2151;letter-spacing:.12em;margin:0 0 8px;font-size:9px;font-weight:850}.date48-plan-row{border-bottom:1px solid #2c1d2311;grid-template-columns:40px 1fr;align-items:start;gap:12px;padding:15px 0;display:grid}.date48-plan-row:last-child{border-bottom:0}.date48-plan-row__icon{color:#d72a60;background:#e1356914;border-radius:50%;place-items:center;width:36px;height:36px;font-size:18px;font-weight:760;display:grid}.date48-plan-row small{color:#2a1d226b;margin:1px 0 4px;font-size:9px;display:block}.date48-plan-row strong{color:#2c1f24;font-size:14px;line-height:1.25;display:block}.date48-plan-row p{color:#2c1f247a;margin:4px 0 0;font-size:11px;line-height:1.3}.date48-plan-secondary{color:#33232a;width:100%;min-height:49px;font:inherit;cursor:pointer;background:#ffffff94;border:1px solid #2b1d2313;border-radius:17px;margin-top:9px;font-size:14px;font-weight:750}.date48-places-loading{gap:14px;display:grid}.date48-places-loading i{background:linear-gradient(100deg,#35202809,#d32a5b12,#35202809) 0 0/220% 100%;border-radius:27px;height:285px;animation:1.3s ease-in-out infinite date48IdeasShimmer;display:block}.date48-places-error{color:#322228;text-align:center;background:#ffffffad;border-radius:24px;padding:28px 20px}.date48-places-error button{color:#bd2051;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:12px;font-weight:760}@media (max-width:560px){.date48-places-entry{border-radius:25px;grid-template-columns:58px minmax(0,1fr);gap:14px;padding:19px 17px}.date48-places-entry__icon{width:54px;height:54px}.date48-places-entry h2{font-size:25px}.date48-places-page,.date48-place-detail-page,.date48-plan-page{width:100%}.date48-place-card__visual{height:172px}.date48-place-card__body{padding:15px 16px 17px}.date48-place-card__title-row h2{font-size:22px}.date48-place-detail-facts{grid-template-columns:1fr 1fr}.date48-place-detail-facts>div{border-right:0;padding:8px 10px}.date48-place-detail-facts>div:last-child{border-top:1px solid #2b1d230e;grid-column:1/-1}}.date48-places-page,.date48-place-detail-page,.date48-plan-page{--d48-ink:#24191e;--d48-muted:#24191e7a;--d48-pink:#e72d68;--d48-pink-soft:#f35c88;--d48-milk:#fffaf8;--d48-card:#ffffffe0;padding-left:18px;padding-right:18px;padding-bottom:calc(150px + env(safe-area-inset-bottom))}.date48-places-top{grid-template-columns:38px 1fr 38px;padding-top:5px;padding-bottom:13px}.date48-places-top h1{letter-spacing:-.045em;font-size:29px}.date48-places-top p{color:#ca2459;letter-spacing:.14em;font-size:9px}.date48-places-back{background:#ffffffb8;width:36px;height:36px;box-shadow:0 7px 22px #48263209}.date48-places-filters{gap:7px;padding-bottom:16px}.date48-places-filters span{background:#ffffffb8;border-color:#2f1c2411;min-height:33px;padding:6px 14px;font-size:11px}.date48-places-filters span.is-active{color:#c31f52;background:linear-gradient(135deg,#f9689124,#e1295f14)}.date48-places-intro{padding:2px 3px 17px}.date48-places-intro p{letter-spacing:-.015em;max-width:320px;font-size:15px;line-height:1.16}.date48-places-intro small{margin-top:5px;font-size:11px}.date48-place-cards{gap:13px}.date48-place-card{background:#ffffffe8;border-color:#331f270e;border-radius:25px;box-shadow:0 18px 45px #582c3b11,inset 0 1px #ffffffe6}.date48-place-card__visual{isolation:isolate;border-radius:0;height:148px}.date48-place-card__visual:before,.date48-place-detail-hero:before{content:"";z-index:0;opacity:.82;background:radial-gradient(at 21% 78%,#160d0be6 0 9%,#0000 10%),radial-gradient(at 50% 81%,#180e0be0 0 11%,#0000 12%),radial-gradient(at 79% 78%,#160d0bdb 0 9%,#0000 10%),linear-gradient(90deg,#0000 0 13%,#fcdaa90e 13% 15%,#0000 15% 42%,#fcdaa90a 42% 44%,#0000 44%);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__visual:after,.date48-place-detail-hero:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 16% 31%,#ffbe6bf7 0 1.3%,#ffbe6b3d 2.5%,#0000 5%),radial-gradient(circle at 68% 27%,#ffae5df2 0 1.2%,#ffae5d3b 2.6%,#0000 5%),radial-gradient(circle at 47% 54%,#ffcf89b8 0 1%,#0000 4%),linear-gradient(#0000 34%,#0d070985);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__lights{z-index:2}.date48-place-card__visual-label{z-index:3;letter-spacing:-.01em;font-size:11px;bottom:13px;left:17px}.date48-place-heart{z-index:4;width:34px;height:34px;font-size:19px;top:12px;right:12px}.date48-place-card__body{padding:14px 17px 16px}.date48-place-card__title-row{align-items:start}.date48-place-card__title-row h2{max-width:305px;font-size:23px;line-height:.99}.date48-place-card__title-row p{margin-top:6px;font-size:10px}.date48-place-card__title-row>span{margin-top:1px;font-size:25px}.date48-place-card__tags{gap:5px;margin-top:10px}.date48-place-card__tags span{background:#fcf5f2;padding:4px 8px;font-size:8px}.date48-place-card__meta{margin-top:10px;padding-top:10px}.date48-place-card__meta strong{font-size:13px}.date48-place-card__meta>span{color:#d0255b;font-size:12px}.date48-places-entry{background:radial-gradient(circle at 104% -10%,#ef3d7421,#0000 38%),linear-gradient(145deg,#fffdfbf5,#fff6f7de);border-radius:26px;grid-template-columns:58px minmax(0,1fr);gap:15px;margin-top:17px;padding:20px 18px;box-shadow:0 20px 50px #682d3e11}.date48-places-entry__icon{width:56px;height:56px;box-shadow:0 12px 27px #d5275b38}.date48-places-entry__copy h2{font-size:26px}.date48-places-entry__preview{background:#ffffffb0;border-radius:16px;margin-top:13px;padding:12px 13px}.date48-places-entry button{background:linear-gradient(110deg,#f04e7d,#e42262);border-radius:15px;min-height:47px}.date48-place-detail-page{padding-top:0;padding-left:0;padding-right:0}.date48-place-detail-hero{border-radius:0 0 31px 31px;height:315px;min-height:315px}.date48-place-detail-hero>*{z-index:4}.date48-place-detail-back,.date48-place-detail-heart{z-index:6}.date48-place-detail-hero>span{z-index:6;font-size:12px;bottom:23px}.date48-place-detail-sheet{padding:24px 20px calc(150px + env(safe-area-inset-bottom));background:#fffdfb;border-radius:29px 29px 0 0;margin-top:-23px}.date48-place-detail-kicker{color:#c52557;margin-bottom:8px}.date48-place-detail-sheet h1{font-size:max(39px,min(10vw,48px));line-height:.91}.date48-place-detail-address{margin-top:11px}.date48-place-detail-tags{margin-top:13px}.date48-place-detail-facts{margin-top:20px;padding:14px 0}.date48-place-detail-facts strong{font-size:13px}.date48-place-detail-reason{max-width:480px;margin-top:19px;font-size:15px;line-height:1.42}.date48-place-detail-subtitle{max-width:490px;margin-top:8px;font-size:13px}.date48-place-detail-thumbs{gap:8px;margin-top:18px}.date48-place-detail-thumbs i{border-radius:15px;height:76px}.date48-place-detail-choose{z-index:30;bottom:calc(82px + env(safe-area-inset-bottom));background:linear-gradient(105deg,#f0527e,#e32162);border-radius:16px;min-height:54px;margin-top:20px;position:sticky;box-shadow:0 14px 33px #cf235740}.date48-plan-success{padding:25px 18px 21px}.date48-plan-check{background:linear-gradient(135deg,#f65c88,#e22764);width:69px;height:69px;margin-bottom:16px;box-shadow:0 15px 36px #d32a5d33}.date48-plan-success h1{font-size:35px}.date48-plan-success p{margin-top:8px}.date48-plan-card{background:#ffffffe3;border-radius:25px;margin-top:5px;padding:20px;box-shadow:0 18px 44px #5129360f}.date48-plan-row{grid-template-columns:39px 1fr;gap:12px;padding:14px 0}.date48-plan-primary{border-radius:16px;min-height:52px;margin-top:18px}.date48-plan-secondary{border-radius:16px;min-height:48px}@media (max-width:560px){.date48-places-page,.date48-plan-page{padding-left:16px;padding-right:16px}.date48-place-detail-page{padding-left:0;padding-right:0}.date48-place-card__visual{height:144px}.date48-place-card__title-row h2{font-size:22px}.date48-place-detail-hero{height:300px;min-height:300px}.date48-place-detail-sheet h1{font-size:42px}.date48-place-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.date48-place-detail-facts>div:last-child{padding-top:12px}}.date48-places-page{padding-top:4px!important}.date48-place-detail-page{padding-top:0!important}.date48-plan-page{padding-top:30px!important}.date48-place-heart.is-saved,.date48-place-detail-heart.is-saved{box-shadow:0 10px 24px #c9245438;color:#fff!important;background:linear-gradient(135deg,#f35984,#df255f)!important;border-color:#ffffff57!important}.date48-place-detail-choose{bottom:auto!important;margin-top:22px!important;position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important}.date48-places-page,.date48-plan-page{padding-bottom:calc(145px + env(safe-area-inset-bottom))!important}.date48-place-card__title-row h2{max-width:82%}.date48-place-detail-sheet h1{max-width:92%}@media (max-width:560px){.date48-places-top{padding-top:8px}.date48-place-detail-hero{margin-top:0}.date48-plan-success{padding-top:20px}}.date48-place-detail-choose{scroll-margin-bottom:calc(118px + env(safe-area-inset-bottom));margin:22px 0 calc(104px + env(safe-area-inset-bottom))!important;position:relative!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important}.date48-place-detail-sheet{padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}@media (max-width:560px){.date48-place-detail-choose{scroll-margin-bottom:calc(124px + env(safe-area-inset-bottom));margin-bottom:calc(108px + env(safe-area-inset-bottom))!important}}.date48-provider-button.is-email{cursor:pointer;background:#ffffffd1;border-color:#21181c1a}.date48-provider-button.is-email:hover{background:#fff;border-color:#b51f5238;transform:translateY(-1px)}.date48-provider-button.is-email:active{transform:scale(.99)}.date48-provider-icon.is-email-icon{color:#a91c4b;background:#b51f5214;font-size:18px;font-weight:850}.date48-email-auth-panel{box-sizing:border-box;background:linear-gradient(#ffffffe6,#ffffffad);border:1px solid #21181c12;border-radius:20px;gap:12px;margin:2px 0 4px;padding:16px;display:grid;box-shadow:0 12px 34px #301a220a,inset 0 1px #fffc}.date48-email-auth-panel.is-security{background:#f8f5f4c7;margin:10px 0 4px}.date48-email-auth-form{gap:12px;display:grid}.date48-email-auth-form label{gap:7px;display:grid}.date48-email-auth-form label>span{color:#21181c94;padding-left:2px;font-size:12px;font-weight:750}.date48-email-auth-form input{box-sizing:border-box;color:#21181c;width:100%;min-width:0;min-height:50px;font:inherit;background:#fffffff0;border:1px solid #21181c1c;border-radius:15px;outline:none;padding:0 14px;font-size:16px;transition:border-color .14s,box-shadow .14s,background .14s}.date48-email-auth-form input:focus{background:#fff;border-color:#b51f5266;box-shadow:0 0 0 3px #b51f5212}.date48-email-auth-form input:disabled{opacity:.65}.date48-email-auth-primary{color:#fff;min-height:50px;font:inherit;cursor:pointer;background:#b51f52;border:0;border-radius:15px;padding:0 16px;font-size:14px;font-weight:800;transition:transform .14s,opacity .14s}.date48-email-auth-primary:active{transform:scale(.99)}.date48-email-auth-primary:disabled{cursor:default;opacity:.48}.date48-email-auth-secondary{color:#21181c8f;min-height:38px;font:inherit;cursor:pointer;background:0 0;border:0;padding:0 8px;font-size:12px;font-weight:750}.date48-email-auth-hint{color:#21181c8c;margin:0 2px 2px;font-size:12px;line-height:1.45}.date48-email-auth-hint b{color:#21181c;font-weight:760}.date48-email-auth-error{color:#9e1945;background:#b51f5212;border-radius:13px;padding:10px 12px;font-size:12px;line-height:1.4}.date48-email-auth-success{color:#276c4d;background:#2a7e5614;border-radius:13px;margin-top:10px;padding:10px 12px;font-size:13px;font-weight:700}.date48-security-provider-state{flex:none;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.date48-security-provider-state>b{text-align:right;color:#21191d;white-space:nowrap;font-size:16px;font-weight:760}.date48-security-connect-button{color:#a91c4b;min-height:34px;font:inherit;cursor:pointer;background:#b51f5212;border:1px solid #b51f521f;border-radius:999px;padding:0 12px;font-size:12px;font-weight:800}@media (max-width:390px){.date48-email-auth-panel{border-radius:18px;padding:14px}.date48-security-provider-state{gap:7px}.date48-security-provider-state>b{font-size:14px}.date48-security-connect-button{min-height:32px;padding:0 10px;font-size:11px}}.date48-place-card__image,.date48-place-detail-hero__image{object-fit:cover;object-position:center;z-index:0;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__visual.has-photo:before,.date48-place-detail-hero.has-photo:before{z-index:1;opacity:1;background:linear-gradient(#140a0e08 0%,#140a0e05 45%,#140a0e7d 100%)}.date48-place-card__visual.has-photo:after,.date48-place-detail-hero.has-photo:after{z-index:2;background:linear-gradient(#180b0f12 0%,#0000 42%,#16080d66 100%)}.date48-place-card__visual.has-photo .date48-place-card__lights,.date48-place-detail-hero.has-photo .date48-place-detail-hero__lights{z-index:3;opacity:.12}.date48-place-card__visual.has-photo .date48-place-card__visual-label{z-index:4;color:#fff;text-shadow:0 2px 14px #0000004d}.date48-place-card__visual.has-photo .date48-place-heart{z-index:5}.date48-place-detail-hero.has-photo .date48-place-detail-back,.date48-place-detail-hero.has-photo .date48-place-detail-heart,.date48-place-detail-hero.has-photo>span{z-index:6}.date48-place-detail-thumbs.has-photos{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.date48-place-detail-thumbs.has-photos img{aspect-ratio:1.18;object-fit:cover;background:#f4ece9;border-radius:15px;width:100%;display:block;box-shadow:0 8px 20px #45242e12}.date48-place-price-scenarios{background:linear-gradient(#ffffffe0,#fffaf8b8);border:1px solid #3f222b12;border-radius:24px;margin:28px 0 8px;padding:22px 18px 18px;box-shadow:0 16px 40px #45242e0e,inset 0 1px #ffffffe6}.date48-place-price-scenarios__head small{color:#b51f52;letter-spacing:.12em;margin-bottom:7px;font-size:10px;font-weight:850;display:block}.date48-place-price-scenarios__head h2{color:#24171c;margin:0;font-size:22px;font-weight:780;line-height:1.08}.date48-place-price-scenarios__head p{color:#24171c8f;margin:8px 0 0;font-size:13px;line-height:1.45}.date48-place-price-scenarios__list{gap:0;margin-top:17px;display:grid}.date48-place-price-scenario{border-top:1px solid #381f2712;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:11px 0;display:flex}.date48-place-price-scenario>div{gap:4px;min-width:0;display:grid}.date48-place-price-scenario strong{color:#26191e;font-size:14px;font-weight:720;line-height:1.3}.date48-place-price-scenario span{color:#a91c4b;background:#b51f5212;border-radius:999px;width:max-content;padding:3px 7px;font-size:10px;font-weight:760}.date48-place-price-scenario b{color:#24171c;white-space:nowrap;flex:none;font-size:15px;font-weight:830}.date48-place-price-scenarios__note{color:#24171c6e;margin:10px 0 0;font-size:10px;line-height:1.45}.date48-places-more-head{padding:24px 4px 2px}.date48-places-more-head p{letter-spacing:-.02em;color:#33232a;margin:0;font-size:22px;font-weight:650}.date48-places-more-head small{letter-spacing:.02em;color:#33232a8a;margin-top:4px;font-size:11px;display:block}.date48-avatar-crop-backdrop{z-index:10050;padding:max(18px, env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);background:#1a121757;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.date48-avatar-crop-sheet{background:#fffafcf5;border:1px solid #ffffffeb;border-radius:32px;width:min(100%,420px);max-height:calc(100dvh - 36px);padding:22px 20px 20px;overflow-y:auto;box-shadow:0 34px 90px #26141d38,inset 0 1px #fffffff5}.date48-avatar-crop-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.date48-avatar-crop-head h2{letter-spacing:-.035em;color:#191317;margin:4px 0 0;font-size:28px;line-height:1.05}.date48-avatar-crop-close{color:#251a20;width:38px;height:38px;font:inherit;cursor:pointer;background:#1b13170f;border:0;border-radius:999px;flex:none;padding:0;font-size:27px;line-height:1}.date48-avatar-crop-hint{color:#23191e94;margin:12px 0 18px;font-size:14px;line-height:1.45}.date48-avatar-crop-viewport{touch-action:none;cursor:grab;background:#e8e2e5;border:3px solid #fffffff5;border-radius:999px;width:280px;max-width:100%;height:280px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 20px 48px #25151d29,0 0 0 1px #2e192314}.date48-avatar-crop-viewport:active{cursor:grabbing}.date48-avatar-crop-viewport img{transform-origin:50%;-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;max-height:none;display:block;position:absolute;transform:translate(-50%,-50%)}.date48-avatar-crop-zoom{gap:9px;margin-top:22px;display:grid}.date48-avatar-crop-zoom span{color:#23191ea3;font-size:13px;font-weight:750}.date48-avatar-crop-zoom input{accent-color:#ae2b64;width:100%;margin:0}.date48-avatar-crop-actions{grid-template-columns:1fr 1.35fr;gap:10px;margin-top:22px;display:grid}.date48-avatar-crop-actions button{min-height:50px;font:inherit;cursor:pointer;border-radius:17px;padding:0 16px;font-size:15px;font-weight:750}.date48-avatar-crop-actions button:disabled,.date48-avatar-crop-close:disabled{cursor:default;opacity:.56}.date48-avatar-crop-cancel{color:#2a1c23;background:#ffffffb8;border:1px solid #26191f14}.date48-avatar-crop-save{color:#fff;background:#ae2b64;border:0;box-shadow:0 10px 24px #ae2b6433}@media (max-width:480px){.date48-avatar-crop-backdrop{padding:max(12px, env(safe-area-inset-top)) 0 0;place-items:end center}.date48-avatar-crop-sheet{width:100%;max-height:calc(100dvh - max(12px, env(safe-area-inset-top)));padding:20px 18px calc(18px + env(safe-area-inset-bottom));border-radius:30px 30px 0 0}.date48-avatar-crop-viewport{width:280px;height:280px}}.date48-inline-story{position:relative}.date48-inline-story__count{z-index:4;box-sizing:border-box;color:#fff;background:var(--date48-red,#a61946);border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:0;right:0;box-shadow:0 2px 7px #00000024}.date48-story-viewer__segments{align-items:center;gap:4px;width:min(320px,72vw);margin:0 0 8px;display:flex}.date48-story-viewer__segment{background:#ffffff57;border-radius:999px;flex:1 1 0;min-width:6px;height:3px}.date48-story-viewer__segment.is-active{background:#fffffff5}.date48-story-compose{z-index:360;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.date48-story-compose__backdrop{-webkit-backdrop-filter:blur(8px);background:#180f1361;border:0;width:100%;position:absolute;top:0;bottom:0;left:0;right:0}.date48-story-compose__sheet{z-index:1;width:min(100%,520px);padding:10px 16px calc(18px + env(safe-area-inset-bottom));box-sizing:border-box;background:#fffafcf7;border-radius:28px 28px 0 0;position:relative;box-shadow:0 -16px 50px #2a141d29}.date48-story-compose__handle{background:#482b362e;border-radius:999px;width:40px;height:4px;margin:0 auto 16px}.date48-story-compose__sheet h3{margin:0 4px 12px;font-size:19px}.date48-story-compose__action{width:100%;min-height:66px;color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #3c1e2a12;align-items:center;gap:13px;padding:9px 10px;display:flex}.date48-story-compose__icon{width:42px;height:42px;color:var(--date48-red,#a61946);background:#a6194614;border-radius:15px;flex:0 0 42px;place-items:center;font-size:20px;font-weight:700;display:grid}.date48-story-compose__action>span:last-child{gap:3px;display:grid}.date48-story-compose__action b{font-size:16px}.date48-story-compose__action small{color:#2f202694;font-size:12px}.date48-story-compose__cancel{width:100%;min-height:46px;color:var(--date48-red,#a61946);background:0 0;border:0;margin-top:8px;font-size:15px;font-weight:700}.date48-story-recorder{z-index:390;background:#050505;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.date48-story-recorder__preview{object-fit:cover;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.date48-story-recorder__preview.is-front-camera{transform:scaleX(-1)}.date48-story-recorder__shade{pointer-events:none;background:linear-gradient(#00000052 0%,#0000 24% 65%,#0000006b 100%);position:absolute;top:0;bottom:0;left:0;right:0}.date48-story-recorder__flip{z-index:3;top:calc(70px + env(safe-area-inset-top));color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#00000057;border:1px solid #ffffff38;border-radius:999px;place-items:center;width:44px;height:44px;padding:0;font-size:26px;line-height:1;display:grid;position:absolute;right:16px}.date48-story-recorder__flip span{display:block;transform:translateY(-1px)}.date48-story-recorder__flip:disabled{opacity:.42}.date48-story-recorder__top{z-index:2;top:calc(14px + env(safe-area-inset-top));color:#fff;justify-content:space-between;align-items:center;display:flex;position:absolute;left:16px;right:16px}.date48-story-recorder__top button{color:#fff;background:#00000057;border:0;border-radius:999px;width:42px;height:42px;padding:0;font-size:28px;line-height:1}.date48-story-recorder__top span{text-align:center;background:#00000057;border-radius:999px;min-width:92px;padding:8px 12px;font-size:13px;font-weight:700}.date48-story-recorder__bottom{z-index:2;left:20px;right:20px;bottom:calc(24px + env(safe-area-inset-bottom));color:#fff;justify-items:center;gap:17px;display:grid;position:absolute}.date48-story-recorder__bottom p{text-align:center;text-shadow:0 1px 8px #00000073;max-width:320px;margin:0;font-size:13px;line-height:1.35}.date48-story-recorder__record{background:#ffffff24;border:4px solid #fffffff5;border-radius:999px;place-items:center;width:78px;height:78px;padding:5px;display:grid}.date48-story-recorder__record span{background:#ef3158;border-radius:999px;width:58px;height:58px;transition:border-radius .16s,width .16s,height .16s;display:block}.date48-story-recorder__record.is-recording span{border-radius:9px;width:34px;height:34px}.date48-story-viewer__sound{z-index:100002;top:max(16px, calc(env(safe-area-inset-top) + 16px));color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);-webkit-tap-highlight-color:transparent;background:#0c080b61;border:1px solid #fff3;border-radius:999px;place-items:center;width:42px;height:42px;padding:0;display:grid;position:fixed;right:70px;box-shadow:0 10px 28px #0003}.date48-story-viewer__sound svg{fill:currentColor;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;display:block}.date48-story-viewer__sound:active{transform:scale(.94)}@media (max-width:820px){.date48-story-viewer__sound{top:calc(env(safe-area-inset-top) + 28px);z-index:7;position:absolute;right:70px}}.date48-story-viewer__top:before{display:none!important}.date48-account-posts{margin-top:24px;padding:0 16px 18px}.date48-account-posts__head{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:14px;display:flex}.date48-account-posts__head h2{margin:3px 0 4px;font-size:22px;line-height:1.08}.date48-account-posts__head p{margin:0}.date48-account-posts__head>div>p:last-child{opacity:.58;max-width:310px;font-size:13px;line-height:1.35}.date48-account-posts__add{cursor:pointer;color:#fff;background:#000000e0;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:38px;padding:0 15px;font-size:13px;font-weight:650;display:inline-flex}.date48-account-posts__add.is-disabled{opacity:.45;pointer-events:none}.date48-account-posts__notice{opacity:.65;margin:0 0 12px;font-size:13px}.date48-account-post{aspect-ratio:3/4;background:#0000000a;position:relative;overflow:hidden}.date48-account-post img{object-fit:cover;width:100%;height:100%;display:block}.date48-account-post button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000008f;border:0;border-radius:50%;place-items:center;width:27px;height:27px;font-size:20px;line-height:1;display:grid;position:absolute;top:7px;right:7px}.date48-account-posts__empty{border-top:1px solid #00000014;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;min-height:132px;padding:20px 0;font-size:14px;display:flex}.date48-account-posts__empty span{opacity:.55;max-width:390px;line-height:1.4}@media (max-width:620px){.date48-account-posts{padding-left:0;padding-right:0}.date48-account-posts__head{padding:0 16px}.date48-account-posts__notice,.date48-account-posts__empty{margin-left:16px;margin-right:16px}}.date48-real-feed{flex-direction:column;gap:30px;display:flex}.date48-real-post{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.date48-real-post__photo{aspect-ratio:4/5;touch-action:pan-y;-webkit-user-select:none;user-select:none;background:#0000000a;border-radius:0;width:100%;min-height:0;position:relative;overflow:hidden}.date48-real-post__photo>img{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.date48-real-post__photo .date48-classic-card__badges{z-index:3;position:absolute;top:14px;left:14px}.date48-real-post__skip,.date48-real-post__photo .date48-classic-card__like{z-index:4;-webkit-backdrop-filter:blur(18px);border:0;border-radius:50%;place-items:center;width:46px;height:46px;transition:transform .14s,background .14s;display:grid;position:absolute;bottom:15px;box-shadow:0 6px 24px #0000001f}.date48-real-post__skip:active,.date48-real-post__photo .date48-classic-card__like:active{transform:scale(.92)}.date48-real-post__skip{color:#000000c7;background:#ffffffbd;font-size:31px;font-weight:300;line-height:1;left:15px}.date48-real-post__photo .date48-classic-card__like{color:#a1265b;background:#ffffffd1;font-size:21px;top:auto;right:15px}.date48-real-post__body{padding:13px 14px 0}.date48-real-post__person{-webkit-appearance:none;appearance:none;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;margin:0;padding:0;display:inline-flex}.date48-real-post__person>img,.date48-real-post__person>span{border-radius:50%;flex:0 0 32px;width:32px;height:32px}.date48-real-post__person>img{object-fit:cover;display:block}.date48-real-post__person>span{background:#0000000e;place-items:center;font-size:12px;font-weight:700;display:grid}.date48-real-post__person strong{font-size:16px;font-weight:700;line-height:1.2}.date48-real-post__caption{max-width:620px;margin:10px 0 0;font-size:14px;line-height:1.45}.date48-real-post__body .date48-classic-card__meta{margin-top:8px}.date48-real-post__hint{color:#00000057;letter-spacing:.01em;border-top:1px solid #00000012;justify-content:space-between;gap:16px;margin-top:13px;padding-top:9px;font-size:11px;line-height:1;display:flex}.date48-real-feed__empty{text-align:center;color:#0000008a;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:48vh;padding:44px 22px;display:flex}.date48-real-feed__empty strong{color:#000000db;font-size:21px}.date48-real-feed__empty span{max-width:310px;font-size:14px;line-height:1.45}@media (max-width:620px){.date48-real-feed{gap:26px}.date48-real-post__photo{aspect-ratio:auto;width:100%;min-height:min(74svh,760px)}.date48-real-post__body{padding-left:14px;padding-right:14px}}.person-page--real{width:100%;max-width:720px;margin:0 auto}.date48-person-topbar{justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:4px 14px 9px;display:flex}.date48-person-topbar>span{opacity:.46;font-size:12px}.person-page--real .person-back{margin:0}.person-hero--real{background:#111;border-radius:0;width:100%;min-height:62svh;position:relative;overflow:hidden}.person-hero__real-photo{object-fit:contain;background:#111;width:100%;height:68svh;max-height:860px;display:block}.person-hero__photo-empty{place-items:center;min-height:58svh;display:grid}.person-hero__photo-empty>span{color:#fff;background:#ffffff1a;border-radius:50%;place-items:center;width:92px;height:92px;font-size:34px;font-weight:700;display:grid}.person-hero__real-overlay{pointer-events:none;background:linear-gradient(#0000,#000000b8);padding:86px 18px 20px;position:absolute;top:auto;bottom:0;left:0;right:0}.person-hero--real .person-hero__content{color:#fff;position:static}.person-hero--real .person-hero__content h1{color:#fff;margin:8px 0 2px;font-size:max(30px,min(8vw,44px));line-height:1}.person-hero--real .person-hero__content p{color:#ffffffbd;margin:5px 0 0}.person-hero--real .person-badge{color:#ffffffd1}.person-card--real-about{box-shadow:none;border:0;border-radius:0;margin:0;padding:24px 18px 27px}.person-card--real-about h2{margin-top:7px;font-size:21px;line-height:1.3}.date48-person-photos{padding:4px 0 0}.date48-person-photos__head{justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 18px 14px;display:flex}.date48-person-photos__head h2{margin:3px 0 0;font-size:22px;line-height:1.05}.date48-person-photos__head>span{opacity:.44;font-size:13px}.date48-person-photos__list{flex-direction:column;gap:3px;display:flex}.date48-person-photo{background:#111;width:100%;margin:0}.date48-person-photo img{object-fit:contain;background:#111;width:100%;height:auto;max-height:90svh;margin:0 auto;display:block}.date48-person-photo p{background:#fff;margin:0;padding:11px 16px 15px;font-size:14px;line-height:1.42}.date48-person-photos__empty{color:#0000006b;align-items:center;min-height:130px;padding:24px 18px;font-size:14px;display:flex}.person-actions--real{margin:22px 18px 30px}@media (max-width:620px){.person-page--real{max-width:none}.person-hero--real{min-height:64svh}.person-hero__real-photo{height:69svh}}.date48-place-live-info{border-top:1px solid #231c1f14;border-bottom:1px solid #231c1f14;margin:22px 0 6px;padding:18px 0 17px}.date48-place-live-info__head{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.date48-place-live-info__head strong{letter-spacing:-.015em;color:#2e292b;font-size:16px;font-weight:650;line-height:1.25}.date48-place-live-info__head strong.is-open{color:#49745b}.date48-place-live-info__head strong.is-closed{color:#8f526a}.date48-place-live-info__head>span{color:#2e292b94;font-size:13px;line-height:1.35}.date48-place-live-info__facts{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.date48-place-live-info__facts span{color:#6f3b52;background:#ae2b640b;border:1px solid #ae2b641c;border-radius:999px;align-items:center;min-height:29px;padding:6px 10px;font-size:12px;font-weight:540;line-height:1.2;display:inline-flex}.date48-place-live-info__source{letter-spacing:.055em;text-transform:uppercase;color:#2e292b66;margin-top:13px;font-size:10px;font-weight:520;line-height:1.3;display:block}.date48-places-filters{scrollbar-width:none}.date48-places-filters::-webkit-scrollbar{display:none}.date48-places-filters button{box-sizing:border-box;color:#271b2191;min-height:33px;font:inherit;white-space:nowrap;cursor:pointer;background:#ffffffb8;border:1px solid #2f1c2411;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:6px 14px;font-size:11px;font-weight:680;display:inline-flex}.date48-places-filters button:active{transform:scale(.97)}.date48-places-filters button.is-active{color:#c31f52;background:linear-gradient(135deg,#f9689124,#e1295f14);border-color:#d42c5e21}.date48-places-empty{text-align:center;background:#ffffffbd;border:1px solid #331f270e;border-radius:24px;margin-top:10px;padding:28px 20px}.date48-places-empty strong{color:#2b1d23;font-size:16px;font-weight:760;display:block}.date48-places-empty p{color:#2b1d237a;max-width:290px;margin:7px auto 0;font-size:12px;line-height:1.45}.date48-places-more-button{color:#b71f4f;width:100%;min-height:52px;font:inherit;cursor:pointer;background:#ffffffd1;border:1px solid #c426541a;border-radius:18px;margin-top:16px;font-size:13px;font-weight:760;box-shadow:0 12px 30px #4c26320b}.date48-places-more-button small{color:#bd2452;background:#e1295f13;border-radius:999px;margin-left:8px;padding:3px 7px;font-size:10px;font-weight:800;display:inline-block}.date48-place-card__description{color:#37252bb8;margin:10px 0 0;font-size:11px;line-height:1.42}.date48-place-card__meta strong.is-pending{color:#37252b8f;font-size:11px;font-weight:650}.date48-place-detail-description{color:#302126c2;margin:14px 0 0;font-size:15px;line-height:1.52}.date48-place-detail-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.date48-place-detail-actions a{color:#b82051;background:#fff7f9eb;border:1px solid #d0255b24;border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.date48-place-detail-category{color:#4b2d36b8;letter-spacing:.01em;background:#fcf5f2f5;border-radius:999px;width:fit-content;margin-top:13px;padding:5px 9px;font-size:10px;font-weight:700}@media (max-width:620px){body:has(.date48-real-feed) .app-shell{width:100%;max-width:none;padding-left:0;padding-right:0;padding-top:max(8px, env(safe-area-inset-top))}body:has(.date48-real-feed) .topbar{min-height:46px;padding:0 14px;margin:0 0 8px!important}body:has(.date48-real-feed) .brand__logo{border-radius:14px;width:44px;height:44px;box-shadow:0 7px 22px #43192a14}body:has(.date48-real-feed) .topbar__settings{-webkit-backdrop-filter:blur(18px);background:#ffffffc7;border:1px solid #44273314;border-radius:14px;width:42px;height:42px;box-shadow:0 7px 24px #3717250f}body:has(.date48-real-feed) .topbar__settings svg{width:21px;height:21px}body:has(.date48-real-feed) .date48-inline-stories{padding-left:14px;padding-right:14px}body:has(.date48-real-feed) .date48-feed-title{align-items:flex-end;margin:0;padding:4px 14px 9px}body:has(.date48-real-feed) .date48-feed-title h1{letter-spacing:-.045em;margin:0;font-size:27px;font-weight:760;line-height:1}body:has(.date48-real-feed) .date48-feed-title p{color:#2312196b;margin-top:5px;font-size:11px;line-height:1.2}body:has(.date48-real-feed) .date48-feed-title>button{color:#2b161ea3;min-height:34px;box-shadow:none;background:#ffffffc2;border:1px solid #49263314;border-radius:999px;padding:0 12px;font-size:12px;font-weight:650}body:has(.date48-real-feed) .date48-inline-filters{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:7px;width:100%;margin:0;padding:0 14px 13px;display:flex;overflow-x:auto}body:has(.date48-real-feed) .date48-inline-filters::-webkit-scrollbar{display:none}body:has(.date48-real-feed) .date48-inline-filters button{color:#2b161ead;letter-spacing:-.01em;min-height:34px;box-shadow:none;background:#f7f3f5;border:1px solid #49263312;border-radius:999px;flex:none;padding:0 13px;font-size:12px;font-weight:650}body:has(.date48-real-feed) .date48-inline-filters button.is-active{color:#fff;background:#a61946;border-color:#a61946}body:has(.date48-real-feed) .date48-feed-message{margin-left:14px;margin-right:14px}body:has(.date48-real-feed) .date48-feed-message:empty{display:none}body:has(.date48-real-feed) .date48-real-feed{gap:25px}body:has(.date48-real-feed) .date48-real-post{width:100%;padding:0 0 2px}body:has(.date48-real-feed) .date48-real-post__photo{background:#f2eef0;border-radius:0;width:100%;min-height:min(74svh,760px)}body:has(.date48-real-feed) .date48-real-post__photo .date48-classic-card__badges{top:12px;left:12px}body:has(.date48-real-feed) .date48-real-post__photo .date48-classic-card__badges b{color:#241219d1;-webkit-backdrop-filter:blur(18px);background:#ffffffc7;border:0;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex;box-shadow:0 5px 20px #00000014}body:has(.date48-real-feed) .date48-real-post__skip{-webkit-backdrop-filter:blur(20px);border-radius:50%;width:44px;height:44px;bottom:14px;box-shadow:0 7px 24px #0000001c}body:has(.date48-real-feed) .date48-real-post__photo .date48-classic-card__like{-webkit-backdrop-filter:blur(20px);border-radius:50%;width:44px;height:44px;bottom:14px;box-shadow:0 7px 24px #0000001c}body:has(.date48-real-feed) .date48-real-post__skip{color:#181013c7;background:#ffffffc4;font-size:29px;left:14px}body:has(.date48-real-feed) .date48-real-post__photo .date48-classic-card__like{color:#a61946;background:#ffffffdb;font-size:20px;right:14px}body:has(.date48-real-feed) .date48-real-post__body{padding:12px 14px 0}body:has(.date48-real-feed) .date48-real-post__person{gap:9px}body:has(.date48-real-feed) .date48-real-post__person>img{flex-basis:34px;width:34px;height:34px}body:has(.date48-real-feed) .date48-real-post__person>span{flex-basis:34px;width:34px;height:34px}body:has(.date48-real-feed) .date48-real-post__person strong{letter-spacing:-.02em;font-size:17px;font-weight:720;line-height:1.15}body:has(.date48-real-feed) .date48-real-post__caption{color:#1f1318d1;margin-top:8px;font-size:14px;line-height:1.45}body:has(.date48-real-feed) .date48-real-post__body .date48-classic-card__meta{color:#1f13186b;margin-top:6px;font-size:12px}body:has(.date48-real-feed) .date48-real-post__hint{display:none}}.date48-real-post__caption-wrap{margin-top:8px}.date48-real-post__caption-wrap .date48-real-post__caption{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.date48-real-post__caption-wrap .date48-real-post__caption.is-expanded{-webkit-line-clamp:unset;display:block;overflow:visible}.date48-real-post__caption-more{-webkit-appearance:none;appearance:none;color:#1f131875;font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:4px 0 0;font-size:13px;font-weight:650}.date48-post-composer{z-index:260;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.date48-post-composer__backdrop{-webkit-backdrop-filter:blur(8px);background:#180d1257;border:0;width:100%;height:100%;padding:0;position:absolute;top:0;bottom:0;left:0;right:0}.date48-post-composer__sheet{z-index:1;width:min(100%,460px);max-height:94svh;padding:9px 16px calc(20px + env(safe-area-inset-bottom));background:#fffafcfa;border-radius:30px 30px 0 0;position:relative;overflow-y:auto;box-shadow:0 -18px 60px #29111c29}.date48-post-composer__handle{background:#2c161f24;border-radius:999px;width:38px;height:4px;margin:0 auto 14px}.date48-post-composer__head{justify-content:space-between;gap:18px;margin-bottom:14px;display:flex}.date48-post-composer__head span{color:#a61946;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:750;display:block}.date48-post-composer__head h2{color:#241018;letter-spacing:-.04em;margin:0;font-size:24px;font-weight:760;line-height:1.05}.date48-post-composer__head>button{color:#25121ab8;background:#49263312;border:0;border-radius:50%;flex:0 0 38px;width:38px;height:38px;font-size:25px}.date48-post-composer__preview{aspect-ratio:4/5;background:#eee8eb;border-radius:24px;width:100%;max-height:51svh;overflow:hidden}.date48-post-composer__preview img{object-fit:cover;width:100%;height:100%;display:block}.date48-post-composer__field{margin-top:15px;display:block}.date48-post-composer__field>span{color:#2410189e;margin:0 2px 7px;font-size:12px;font-weight:700;display:block}.date48-post-composer__field textarea{box-sizing:border-box;resize:none;color:#241018;width:100%;min-height:94px;font:inherit;background:#ffffffd1;border:1px solid #431d2c17;border-radius:18px;outline:none;padding:13px 14px;font-size:15px;line-height:1.42;display:block}.date48-post-composer__field textarea:focus{border-color:#a6194657;box-shadow:0 0 0 3px #a619460f}.date48-post-composer__field textarea::placeholder{color:#24101852}.date48-post-composer__meta{color:#24101861;justify-content:space-between;gap:12px;padding:7px 2px 13px;font-size:11px;display:flex}.date48-post-composer__meta b{font-weight:650}.date48-post-composer__publish{color:#fff;background:#a61946;border:0;border-radius:18px;width:100%;min-height:52px;font-size:15px;font-weight:750;box-shadow:0 12px 30px #a6194633}.date48-post-composer__publish:disabled,.date48-post-composer__head button:disabled,.date48-post-composer__field textarea:disabled{opacity:.58}:root{--date48-coherent-bundle-v1:1}.date48-place-card__scenarios{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.date48-place-card__scenarios span{color:#702d43c7;background:#d32a5c0e;border-radius:999px;align-items:center;min-height:25px;padding:4px 8px;font-size:9px;font-weight:700;line-height:1.2;display:inline-flex}.date48-place-scenarios{margin-top:16px}.date48-place-scenarios>small{color:#442a327a;letter-spacing:.08em;margin-bottom:8px;font-size:9px;font-weight:800;display:block}.date48-place-scenarios>div{flex-wrap:wrap;gap:7px;display:flex}.date48-place-scenarios span{color:#67273bd1;background:#d32a5c0f;border-radius:999px;align-items:center;min-height:30px;padding:6px 10px;font-size:11px;font-weight:700;display:inline-flex}.date48-place-live-info--pending strong{color:#463238b3}.date48-place-live-info--pending .date48-place-live-info__source{color:#46323880}.date48-place-detail-page{padding-bottom:calc(205px + env(safe-area-inset-bottom))!important}.date48-place-detail-hero{margin-top:8px;border-radius:26px!important;height:max(178px,min(46vw,220px))!important;min-height:0!important}.date48-place-detail-hero>span{display:none!important}.date48-place-detail-back,.date48-place-detail-heart{width:42px!important;height:42px!important;top:13px!important}.date48-place-detail-back{left:13px!important}.date48-place-detail-heart{right:13px!important}.date48-place-detail-sheet{border-radius:26px 26px 0 0!important;margin:-7px 0 0!important;padding:19px 4px 8px!important}.date48-place-detail-kicker{letter-spacing:.13em!important;margin-bottom:5px!important;font-size:9px!important}.date48-place-detail-sheet h1{font-size:max(35px,min(9vw,42px))!important}.date48-place-detail-address{margin-top:6px!important;font-size:12px!important}.date48-place-detail-tags{gap:6px!important;margin-top:10px!important}.date48-place-detail-tags span{padding:5px 10px!important;font-size:9px!important}.date48-place-detail-tags span:nth-child(n+4){display:none}.date48-place-detail-sheet>.date48-place-live-info{display:none!important}.date48-place-detail-facts--compact{background:#ffffffad;border-radius:21px;overflow:hidden;border:1px solid #3a222b13!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;margin-top:14px!important;padding:0!important;display:grid!important}.date48-place-detail-facts--compact>div{box-sizing:border-box;border-bottom:1px solid #3a222b0e;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0;border-right:1px solid #3a222b0e!important;padding:12px 11px!important;display:grid!important}.date48-place-detail-facts--compact>div:nth-child(2n){border-right:0!important}.date48-place-detail-facts--compact>div:nth-last-child(-n+2){border-bottom:0}.date48-place-detail-facts--compact>div:last-child{grid-column:auto!important}.date48-place-detail-fact-icon{color:#c62659;background:#e22e6513;border-radius:50%;place-items:center;width:31px;height:31px;font-size:15px;font-weight:760;display:grid}.date48-place-detail-facts--compact small{margin-bottom:3px!important;font-size:9px!important}.date48-place-detail-facts--compact strong{overflow-wrap:anywhere;font-size:12px!important;line-height:1.18!important}.date48-place-why{margin-top:18px}.date48-place-why h2{color:#281b20;letter-spacing:-.025em;margin:0;font-family:inherit;font-size:18px;font-weight:780;line-height:1.15}.date48-place-why>p{color:#2b1d2285;margin:7px 0 0;font-size:12px;line-height:1.45}.date48-place-why .date48-place-scenarios{margin-top:10px!important}.date48-place-why .date48-place-scenarios>div{gap:6px!important}.date48-place-why .date48-place-scenarios span{min-height:27px!important;padding:5px 10px!important;font-size:10px!important}.date48-place-detail-actions--compact{gap:8px!important;margin-top:15px!important;display:flex!important}.date48-place-detail-actions--compact a{flex:1 1 0;gap:7px;min-width:0;background:#ffffff7a!important;border-color:#d3275b33!important;min-height:43px!important;padding:0 13px!important;font-size:12px!important}.date48-place-detail-actions--compact a>span{color:#d02b60;font-size:16px;line-height:1}.date48-place-detail-category{display:none!important}.date48-place-budget-compact{background:#ffffffa3;border:1px solid #39222b13;border-radius:20px;margin-top:14px;overflow:hidden}.date48-place-budget-compact summary{box-sizing:border-box;cursor:pointer;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:69px;padding:11px 13px;list-style:none;display:grid}.date48-place-budget-compact summary::-webkit-details-marker{display:none}.date48-place-budget-compact__icon{color:#c9255a;background:#e22e6513;border-radius:50%;place-items:center;width:34px;height:34px;font-size:20px;line-height:1;display:grid}.date48-place-budget-compact__copy{min-width:0}.date48-place-budget-compact__copy strong{color:#2b1d22;font-size:13px;font-weight:760;line-height:1.2;display:block}.date48-place-budget-compact__copy small{color:#2b1d226b;margin-top:3px;font-size:10px;display:block}.date48-place-budget-compact__action{color:#c92559;white-space:nowrap;font-size:10px;font-weight:760}.date48-place-budget-compact__action--open,.date48-place-budget-compact[open] .date48-place-budget-compact__action--closed{display:none}.date48-place-budget-compact[open] .date48-place-budget-compact__action--open{display:inline}.date48-place-budget-compact__body{border-top:1px solid #39222b0e;padding:0 13px 13px}.date48-place-budget-compact .date48-place-price-scenarios__list{margin-top:3px}.date48-place-budget-compact .date48-place-price-scenario{padding:11px 0}.date48-place-budget-compact .date48-place-price-scenario strong,.date48-place-budget-compact .date48-place-price-scenario b{font-size:12px}.date48-place-budget-compact .date48-place-price-scenarios__note{margin-top:8px;font-size:10px}.date48-place-gallery-compact{margin-top:17px}.date48-place-gallery-compact__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.date48-place-gallery-compact__head strong{color:#281b20;font-size:16px;font-weight:780}.date48-place-gallery-compact__head span{color:#2b1d2266;font-size:10px}.date48-place-gallery-compact .date48-place-detail-thumbs{gap:6px!important;margin-top:9px!important}.date48-place-gallery-compact .date48-place-detail-thumbs img{border-radius:15px!important;height:86px!important}.date48-place-detail-sticky-spacer{height:8px}.date48-place-detail-sticky{box-sizing:border-box;left:50%;bottom:calc(86px + env(safe-area-inset-bottom));z-index:340;-webkit-backdrop-filter:blur(22px);background:#fffcfbed;border:1px solid #3d252e12;border-radius:23px;grid-template-columns:minmax(0,1fr) minmax(132px,43%);align-items:center;gap:11px;width:min(100% - 32px,646px);min-height:66px;padding:9px 10px 9px 16px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 48px #4a233126}.date48-place-detail-sticky__copy{min-width:0}.date48-place-detail-sticky__copy strong{color:#291c21;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;line-height:1.15;display:block;overflow:hidden}.date48-place-detail-sticky__copy span{color:#2d2025;margin-top:3px;font-size:12px;font-weight:650;display:block}.date48-place-detail-sticky button{color:#fff;width:100%;min-height:48px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#ec5480,#d72560);border:0;border-radius:17px;font-size:14px;font-weight:820;box-shadow:0 10px 26px #d2265933}@media (max-width:560px){.date48-place-detail-sheet{padding-left:1px!important;padding-right:1px!important}.date48-place-detail-facts--compact>div{grid-column:auto!important}.date48-place-budget-compact summary{grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:10px 11px}.date48-place-budget-compact__action{text-align:right;white-space:normal;max-width:105px}}.date48-people-page,.date48-compass-page{color:#1e191b;width:100%}.date48-people-page{gap:18px;display:grid}.date48-people-kicker,.date48-compass-entry__meta,.date48-compass-result__kicker,.date48-compass-question__eyebrow{color:#7e2a48d1;letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:760;display:block}.date48-people-head h1{letter-spacing:-.045em;max-width:360px;margin:8px 0 0;font-size:max(30px,min(9vw,42px));line-height:.98}.date48-people-head p{color:#372e32b8;max-width:390px;margin:14px 0 0;font-size:14px;line-height:1.55}.date48-compass-entry{background:#fffcf9c7;border:1px solid #4c363e14;border-radius:30px;padding:26px 22px 22px;position:relative;overflow:hidden;box-shadow:0 18px 48px #2f1c240e,inset 0 1px #ffffffc2}.date48-compass-entry.is-complete{border-color:#7e2a481c}.date48-compass-entry__top{align-items:center;gap:9px;display:flex}.date48-compass-mark{color:#9d3159;place-items:center;width:28px;height:28px;font-size:20px;line-height:1;display:inline-grid}.date48-compass-entry h2{letter-spacing:-.035em;max-width:350px;margin:20px 0 0;font-size:25px;line-height:1.06}.date48-compass-entry p{color:#372e32b8;max-width:365px;margin:12px 0 0;font-size:14px;line-height:1.55}.date48-compass-entry__facts{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.date48-compass-entry__facts span,.date48-compass-entry__status{color:#462f38d1;background:#764a5811;border-radius:999px;align-items:center;min-height:28px;padding:0 11px;font-size:11px;font-weight:650;display:inline-flex}.date48-compass-entry__status{color:#842748;margin-top:18px}.date48-compass-primary,.date48-compass-secondary{border-radius:999px;justify-content:center;align-items:center;min-height:50px;margin-top:22px;padding:0 20px;font-size:14px;font-weight:720;transition:transform .12s,opacity .12s;display:inline-flex}.date48-compass-primary{color:#fff;background:#271b20;box-shadow:0 12px 26px #1e141824}.date48-compass-secondary{color:#241a1e;background:#ffffff85;border:1px solid #39272e1c}.date48-compass-primary:active,.date48-compass-secondary:active{transform:scale(.985)}.date48-compass-skeleton{background:#4c363e12;border-radius:999px;width:144px;height:48px;margin-top:22px}.date48-people-personal{padding:24px 4px 8px}.date48-people-personal__head{color:#634650b8;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:7px;font-size:11px;font-weight:730;display:flex}.date48-people-personal__head b{color:#9d3159;font-size:15px}.date48-people-personal h2{letter-spacing:-.025em;margin:10px 0 0;font-size:21px}.date48-people-personal p{color:#372e32b3;margin:9px 0 0;font-size:14px;line-height:1.55}.date48-people-personal small{color:#7e2a48c2;margin-top:13px;font-size:12px;line-height:1.45;display:block}.date48-compass-page{min-height:calc(100vh - 180px)}.date48-compass-loading,.date48-compass-error,.date48-compass-result{flex-direction:column;justify-content:center;align-items:flex-start;min-height:60vh;padding:30px 8px;display:flex}.date48-compass-loading p{color:#3a2e34ad;margin:12px 0 0}.date48-compass-error h1,.date48-compass-result h1{letter-spacing:-.045em;max-width:360px;margin:16px 0 0;font-size:max(30px,min(9vw,42px));line-height:1.02}.date48-compass-error p,.date48-compass-result>p{color:#372e32b8;max-width:365px;margin:15px 0 0;font-size:15px;line-height:1.58}.date48-compass-result__symbol{color:#9d3159;background:#fffcf9bd;border:1px solid #7e2a481c;border-radius:50%;place-items:center;width:62px;height:62px;margin-bottom:20px;font-size:30px;display:grid;box-shadow:0 16px 40px #2f1c240e}.date48-compass-result__note{border-top:1px solid #44303817;gap:6px;max-width:365px;margin-top:24px;padding-top:18px;display:grid}.date48-compass-result__note b{font-size:13px}.date48-compass-result__note span{color:#372e32ab;font-size:13px;line-height:1.5}.date48-compass-text-action{color:#5b3b47bf;background:0 0;margin-top:15px;padding:8px 2px;font-size:13px}.date48-compass-text-action:disabled{opacity:.5}.date48-compass-flow{flex-direction:column;min-height:calc(100vh - 190px);display:flex}.date48-compass-flow__head{grid-template-columns:38px 1fr 48px;align-items:center;gap:10px;min-height:46px;display:grid}.date48-compass-back{color:#302429b8;border-radius:50%;place-items:center;width:36px;height:36px;font-size:24px;font-weight:350;display:grid}.date48-compass-flow__brand{justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.date48-compass-flow__brand span{color:#9d3159}.date48-compass-flow__count{color:#46373d85;text-align:right;font-size:11px}.date48-compass-progress{background:#422d3512;border-radius:999px;height:3px;margin-top:12px;overflow:hidden}.date48-compass-progress span{border-radius:inherit;background:#9d3159;height:100%;transition:width .22s;display:block}.date48-compass-question{padding:42px 4px 20px}.date48-compass-question h1{letter-spacing:-.04em;max-width:390px;margin:12px 0 0;font-size:max(27px,min(7.5vw,37px));line-height:1.06}.date48-compass-question p{color:#372e32ab;margin:12px 0 0;font-size:14px;line-height:1.5}.date48-compass-options{gap:9px;padding:2px 0 20px;display:grid}.date48-compass-option{color:#231b1eeb;text-align:left;background:#fffdfba3;border:1px solid #422d3517;border-radius:19px;grid-template-columns:1fr 25px;align-items:center;gap:14px;width:100%;min-height:62px;padding:14px 16px 14px 18px;transition:border-color .13s,background .13s,transform .12s;display:grid;box-shadow:0 8px 22px #2d1b2206}.date48-compass-option span{font-size:14px;font-weight:560;line-height:1.38}.date48-compass-option i{color:#0000;border:1px solid #43303821;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;font-style:normal;display:grid}.date48-compass-option.is-selected{color:#fff;background:#271b20f5;border-color:#271b20c7}.date48-compass-option.is-selected i{color:#fff;background:#ffffff1c;border-color:#ffffff6b}.date48-compass-option:active{transform:scale(.992)}.date48-compass-option:disabled{cursor:default}.date48-compass-inline-error{color:#9b304f;margin:2px 2px 12px;font-size:12px;line-height:1.45}.date48-compass-flow__actions{grid-template-columns:92px 1fr;gap:10px;margin-top:auto;padding-top:14px;display:grid}.date48-compass-prev,.date48-compass-next{border-radius:999px;min-height:50px;font-size:14px;font-weight:700}.date48-compass-prev{color:#34272cbf;background:#4b363e0f}.date48-compass-next{color:#fff;background:#271b20;box-shadow:0 12px 26px #1e141821}.date48-compass-prev:disabled,.date48-compass-next:disabled{opacity:.34;cursor:default;box-shadow:none}@media (max-width:520px){.date48-compass-entry{border-radius:26px;padding:24px 20px 20px}.date48-compass-entry h2{font-size:23px}.date48-compass-flow{min-height:calc(100dvh - 190px)}.date48-compass-question{padding-top:34px}.date48-compass-option{border-radius:18px;min-height:60px}}.date48-people-page{gap:14px}.date48-people-head{padding:4px 4px 0}.date48-people-head h1{max-width:345px;margin-top:7px;font-size:max(32px,min(9.2vw,43px));line-height:.98}.date48-people-head p{color:#312a2da8;max-width:355px;margin-top:12px;font-size:14px;line-height:1.48}.date48-compass-entry{background:linear-gradient(145deg,#fffefbe6,#fffaf7c2);border-color:#4a303b17;border-radius:28px;margin-top:4px;padding:22px 20px 20px;box-shadow:0 18px 46px #3a1f2a0e,inset 0 1px #ffffffe6}.date48-compass-entry__top{gap:7px}.date48-compass-entry__meta{letter-spacing:.18em;color:#792c48d1;font-size:11px}.date48-compass-mark{width:24px;height:24px;font-size:17px}.date48-compass-entry h2{letter-spacing:-.04em;max-width:330px;margin-top:17px;font-size:26px;line-height:1.03}.date48-compass-entry p{color:#312a2da6;max-width:345px;margin-top:10px;font-size:14px;line-height:1.5}.date48-compass-entry__facts{margin-top:14px}.date48-compass-primary,.date48-compass-secondary{min-height:48px;margin-top:18px;padding-inline-start:21px;padding-inline-end:21px}.date48-compass-primary{background:linear-gradient(#2b2024 0%,#21171b 100%);box-shadow:0 12px 28px #1f151929}@media (max-width:520px){.date48-people-head h1{max-width:320px}.date48-compass-entry{border-radius:26px;padding:21px 18px 19px}.date48-compass-entry h2{font-size:25px}}.date48-account-posts{background:#ffffffad;border:1px solid #412a3311;border-radius:28px;margin-top:26px;padding:22px 18px 20px;box-shadow:0 20px 54px #4028310e}.date48-account-posts__head{align-items:flex-start;margin-bottom:18px}.date48-account-posts__head h2{letter-spacing:-.045em;margin:5px 0 7px;font-size:27px;font-weight:760;line-height:1}.date48-account-posts__head>div>p:last-child{color:#251b1f85;opacity:1;max-width:330px;font-size:12px;line-height:1.45}.date48-account-posts__add{color:#fff;background:#261d21;border:1px solid #271b2014;min-height:42px;padding:0 16px;box-shadow:0 10px 26px #20161a1f}.date48-account-posts__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.date48-account-post{aspect-ratio:4/5;background:#eee8ea;border:1px solid #38272e11;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 10px 28px #2e1f250e}.date48-account-post:first-child{aspect-ratio:4/5;border-radius:24px;grid-column:1/-1}.date48-account-post img{object-fit:cover;width:100%;height:100%}.date48-account-post__main{color:#fff;-webkit-backdrop-filter:blur(16px);background:#1b141785;border:1px solid #ffffff40;border-radius:999px;align-items:center;min-height:30px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;bottom:12px;left:12px;box-shadow:0 7px 22px #0000001f}.date48-account-post button{-webkit-backdrop-filter:blur(16px);background:#1912157a;border:1px solid #fff3;width:32px;height:32px;font-size:21px;top:10px;right:10px}.date48-account-posts__notice{color:#672f44c7;opacity:1;background:#a43a620e;border-radius:13px;margin:0 0 14px;padding:10px 12px}.date48-account-posts__empty{background:#f9f6f4b8;border:1px dashed #402b3321;border-radius:22px;min-height:170px;padding:23px}.date48-account-posts__empty strong{letter-spacing:-.025em;font-size:18px}.date48-account-posts__empty span{color:#281c2180;opacity:1;margin-top:3px}.date48-post-composer__head span{color:#8f5067}.date48-post-composer__publish{background:linear-gradient(#2c2226 0%,#21181c 100%);box-shadow:0 12px 30px #21171b29}@media (max-width:620px){.date48-account-posts{border-radius:26px;margin-left:0;margin-right:0;padding:21px 15px 19px}.date48-account-posts__head{padding:0}.date48-account-posts__head h2{font-size:25px}.date48-account-posts__grid{gap:7px}.date48-account-posts__notice,.date48-account-posts__empty{margin-left:0;margin-right:0}}.date48-account-post button.date48-account-post__make-main{z-index:3;color:#fff;letter-spacing:.01em;white-space:nowrap;-webkit-backdrop-filter:blur(16px);background:#17131494;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;width:auto;height:32px;min-height:32px;padding:0 11px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:auto;bottom:10px;left:10px;right:auto;box-shadow:0 8px 24px #00000024}.date48-account-post button.date48-account-post__make-main:disabled{opacity:.55}body:has(.date48-people-page--v3){background:#fff7f9!important}#root:has(.date48-people-page--v3){background:#fff7f9!important}.app-shell:has(.date48-people-page--v3){background:#fff7f9!important}.screen-body:has(.date48-people-page--v3){background:#fff7f9!important}.date48-people-page--v3{color:#1e191b;width:100%;padding:2px 0 104px;display:block}.date48-people-v3__head{padding:4px 3px 0}.date48-people-v3__head h1{letter-spacing:-.045em;margin:6px 0 0;font-size:max(34px,min(9.5vw,44px));font-weight:720;line-height:.96}.date48-people-v3__head p{color:#2f282b9e;max-width:300px;margin:10px 0 0;font-size:14px;line-height:1.45}.date48-people-v3__filters{scrollbar-width:none;gap:7px;margin:19px -2px 0;padding:0 2px 3px;display:flex;overflow-x:auto}.date48-people-v3__filters::-webkit-scrollbar{display:none}.date48-people-v3__filter{color:#231c1fb8;min-height:35px;font:inherit;white-space:nowrap;background:#ffffff8a;border:1px solid #32262b13;border-radius:999px;flex:none;padding:0 14px;font-size:12px;font-weight:680}.date48-people-v3__filter.is-active{color:#fff;background:#251c20;border-color:#251c20}.date48-people-v3__compass{background:#ffffff6e;border:1px solid #48323b12;border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:60px;margin:13px 0 17px;padding:10px 11px;display:grid}.date48-people-v3__compass-mark{color:#8b2d4d;background:#8b2d4d11;border-radius:50%;place-items:center;width:30px;height:30px;font-size:16px;display:grid}.date48-people-v3__compass>div{min-width:0}.date48-people-v3__compass strong,.date48-people-v3__compass small{display:block}.date48-people-v3__compass strong{color:#2b2226;font-size:12px;font-weight:720;line-height:1.2}.date48-people-v3__compass small{color:#372d318f;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10.5px;line-height:1.25;overflow:hidden}.date48-people-v3__compass-action{color:#3c2c33;background:#ffffffb8;border-radius:999px;justify-content:center;align-items:center;min-height:33px;padding:0 11px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.date48-people-v3__masonry{column-count:2;column-gap:8px;width:100%}.date48-people-v3__card{break-inside:avoid;width:100%;color:inherit;vertical-align:top;margin:0 0 10px;text-decoration:none;display:inline-block}.date48-people-v3__photo{background:#e9e3dd;border-radius:20px;width:100%;position:relative;overflow:hidden;transform:translateZ(0)}.date48-people-v3__card--variant-0 .date48-people-v3__photo{aspect-ratio:4/5}.date48-people-v3__card--variant-1 .date48-people-v3__photo{aspect-ratio:3/4}.date48-people-v3__card--variant-2 .date48-people-v3__photo{aspect-ratio:2/3}.date48-people-v3__card--variant-3 .date48-people-v3__photo{aspect-ratio:5/6}.date48-people-v3__photo img{object-fit:cover;object-position:50% 38%;width:100%;height:100%;transition:transform .18s;display:block}.date48-people-v3__card:active .date48-people-v3__photo img{transform:scale(1.012)}.date48-people-v3__badge{color:#6f2943;letter-spacing:.01em;-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #ffffff6b;border-radius:999px;align-items:center;min-height:25px;padding:0 9px;font-size:10px;font-weight:760;display:inline-flex;position:absolute;top:9px;left:9px}.date48-people-v3__badge--quiet{color:#3f373a}.date48-people-v3__identity{padding:8px 5px 2px}.date48-people-v3__identity strong,.date48-people-v3__identity small{display:block}.date48-people-v3__identity strong{color:#201a1d;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:720;line-height:1.15;overflow:hidden}.date48-people-v3__identity small{color:#3e343887;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10.5px;line-height:1.2;overflow:hidden}.date48-people-v3__empty{color:#271f22;flex-direction:column;justify-content:center;align-items:flex-start;min-height:280px;padding:28px 12px;display:flex}.date48-people-v3__empty--soft{min-height:220px}.date48-people-v3__empty strong{letter-spacing:-.025em;font-size:20px;line-height:1.1}.date48-people-v3__empty p{color:#372d319e;max-width:285px;margin:9px 0 0;font-size:13px;line-height:1.5}.date48-people-v3__empty-action{color:#fff;min-height:38px;font:inherit;background:#261d21;border:0;border-radius:999px;justify-content:center;align-items:center;margin-top:16px;padding:0 15px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.date48-people-v3__skeleton{break-inside:avoid;vertical-align:top;width:100%;margin:0 0 11px;display:inline-block}.date48-people-v3__skeleton-photo{background:linear-gradient(100deg,#eae4de 20%,#f3eee9 42%,#eae4de 64%) 0 0/220% 100%;border-radius:20px;width:100%;animation:1.3s linear infinite date48PeopleV3Shimmer}.date48-people-v3__card--variant-0 .date48-people-v3__skeleton-photo{aspect-ratio:4/5}.date48-people-v3__card--variant-1 .date48-people-v3__skeleton-photo{aspect-ratio:3/4}.date48-people-v3__card--variant-2 .date48-people-v3__skeleton-photo{aspect-ratio:2/3}.date48-people-v3__card--variant-3 .date48-people-v3__skeleton-photo{aspect-ratio:5/6}.date48-people-v3__skeleton-line{background:#e7e0da;border-radius:999px;width:62%;height:11px;margin:9px 5px 0}@keyframes date48PeopleV3Shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:380px){.date48-people-v3__masonry{column-gap:7px}.date48-people-v3__card{margin-bottom:9px}.date48-people-v3__photo,.date48-people-v3__skeleton-photo{border-radius:18px}.date48-people-v3__identity{padding-inline-start:4px;padding-inline-end:4px}.date48-people-v3__identity strong{font-size:13px}}.date48-place-price-scenario{align-items:flex-start;min-height:0;padding:16px 0}.date48-place-price-scenario__content{gap:0;min-width:0;display:grid}.date48-place-price-scenario__content>strong{letter-spacing:-.01em;font-size:15px;font-weight:760;line-height:1.25}.date48-place-price-scenario__description{color:#24171c94;max-width:470px;margin:5px 0 0;font-size:12px;line-height:1.45}.date48-place-price-scenario__menu{gap:5px;margin:10px 0 0;padding:0;list-style:none;display:grid}.date48-place-price-scenario__menu li{color:#24171cc2;padding-left:13px;font-size:12px;line-height:1.38;position:relative}.date48-place-price-scenario__menu li:before{content:"";background:#b51f528c;border-radius:50%;width:4px;height:4px;position:absolute;top:.58em;left:1px}.date48-place-price-scenario__price{background:#b51f520e;border-radius:12px;margin-top:1px;padding:6px 9px;line-height:1.2;font-size:13px!important}@media (max-width:520px){.date48-place-price-scenario{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.date48-place-price-scenario__description{max-width:none}.date48-place-price-scenario__price{align-self:start}}


/* DATE48 CSS SOURCE 2: /assets/onboarding-premium-v1-20260917_073856.css */

/* =========================================================
   DATE48 — PREMIUM ONBOARDING / PROFILE EDIT V1
   Same visual language as premium Profile + Security.
   ========================================================= */

.date48-auth-page:has(.date48-onboarding-card),
.date48-auth-page:has(.date48-onboarding-card) *,
.date48-auth-page:has(.date48-onboarding-card) *::before,
.date48-auth-page:has(.date48-onboarding-card) *::after {
  box-sizing: border-box;
}


.date48-auth-page:has(.date48-onboarding-card) {
  width: 100%;
  min-height: 100dvh;

  margin: 0;

  padding:
    max(18px, env(safe-area-inset-top))
    10px
    calc(
      56px +
      env(safe-area-inset-bottom)
    );

  overflow-x: clip;

  color: #2b211f;

  background:
    radial-gradient(
      circle at 92% 1%,
      rgba(207, 151, 165, 0.12),
      transparent 27%
    ),
    linear-gradient(
      180deg,
      #fcf8f5 0%,
      #f7f0ec 100%
    );
}


.date48-auth-page
.date48-onboarding-card {
  width: 100%;
  max-width: 520px;

  margin-inline: auto;

  padding:
    14px
    12px
    22px;

  border: 0;
  border-radius: 0;

  background: transparent;

  box-shadow: none;
}


/* ---------- BACK ---------- */

.date48-auth-page
.date48-onboarding-card
.date48-auth-back {
  display: inline-flex;
  align-items: center;

  min-height: 38px;

  margin:
    0
    0
    23px;

  padding:
    0
    14px;

  border:
    1px solid
    rgba(119, 82, 73, 0.08);

  border-radius: 999px;

  color: #755d58;

  font-size: 11px;
  font-weight: 680;

  text-decoration: none;

  background:
    rgba(255, 253, 251, 0.82);

  box-shadow:
    0 7px 22px
    rgba(77, 49, 42, 0.035);
}


/* ---------- HERO ---------- */

.date48-auth-page
.date48-onboarding-card
.date48-auth-hero {
  margin:
    0
    0
    18px;

  padding:
    0
    3px;
}


.date48-auth-page
.date48-onboarding-card
.date48-auth-kicker {
  display: block;

  margin-bottom: 5px;

  color: #9c8b86;

  font-size: 8px;
  font-weight: 760;

  line-height: 1;

  letter-spacing: 0.28em;

  text-transform: uppercase;
}


.date48-auth-page
.date48-onboarding-card
.date48-auth-hero h1 {
  max-width: 390px;

  margin:
    0
    0
    9px;

  color: #2b211f;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      35px,
      10vw,
      48px
    );

  font-weight: 400;
  line-height: 0.95;

  letter-spacing: -0.055em;
}


.date48-auth-page
.date48-onboarding-card
.date48-auth-hero p {
  max-width: 410px;

  margin: 0;

  color: #8c7d78;

  font-size: 12px;
  line-height: 1.45;
}


/* ---------- FORM ---------- */

.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid {
  display: grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    );

  gap: 8px;

  width: 100%;

  margin:
    0
    0
    8px;
}


.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid label,

.date48-auth-page
.date48-onboarding-card
.date48-about-field {
  display: flex;
  flex-direction: column;

  min-width: 0;

  gap: 6px;

  color: #806f69;

  font-size: 9px;
  font-weight: 720;

  letter-spacing: 0.035em;
}


.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid label:nth-child(1),

.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid label:nth-child(2),

.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid label:nth-child(3) {
  grid-column: 1 / -1;
}


.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid input,

.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid select,

.date48-auth-page
.date48-onboarding-card
.date48-about-field textarea {
  appearance: none;

  width: 100%;
  min-width: 0;

  border:
    1px solid
    rgba(98, 67, 59, 0.08);

  border-radius: 15px;

  outline: none;

  color: #2d2320;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  font-size: 13px;
  font-weight: 650;

  background:
    rgba(255, 255, 255, 0.79);

  box-shadow:
    0 8px 24px
    rgba(73, 46, 40, 0.035);

  transition:
    border-color 150ms ease,
    box-shadow 150ms ease,
    background 150ms ease;
}


.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid input,

.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid select {
  height: 51px;

  padding:
    0
    13px;
}


.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid select {
  padding-right: 35px;

  background-image:
    linear-gradient(
      45deg,
      transparent 50%,
      #8e6b72 50%
    ),
    linear-gradient(
      135deg,
      #8e6b72 50%,
      transparent 50%
    );

  background-position:
    calc(100% - 17px) 22px,
    calc(100% - 12px) 22px;

  background-size:
    5px
    5px,
    5px
    5px;

  background-repeat:
    no-repeat;
}


.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid input:focus,

.date48-auth-page
.date48-onboarding-card
.date48-onboarding-grid select:focus,

.date48-auth-page
.date48-onboarding-card
.date48-about-field textarea:focus {
  border-color:
    rgba(156, 69, 88, 0.24);

  background:
    rgba(255, 255, 255, 0.96);

  box-shadow:
    0 0 0 3px
    rgba(156, 69, 88, 0.055),
    0 10px 28px
    rgba(73, 46, 40, 0.045);
}


/* ---------- ABOUT ---------- */

.date48-auth-page
.date48-onboarding-card
.date48-about-field {
  margin-top: 8px;
}


.date48-auth-page
.date48-onboarding-card
.date48-about-field textarea {
  min-height: 104px;

  resize: vertical;

  padding:
    13px
    14px;

  line-height: 1.4;
}


/* ---------- ACTIONS ---------- */

.date48-auth-page
.date48-onboarding-card
.date48-auth-actions-row {
  display: grid;

  grid-template-columns:
    1fr;

  gap: 7px;

  width: 100%;

  margin-top: 13px;
}


.date48-auth-page
.date48-onboarding-card
.date48-auth-actions-row > button {
  width: 100%;
  min-height: 48px;

  border: 0;

  border-radius: 15px;

  color: #fffaf9;

  font-size: 13px;
  font-weight: 760;

  background:
    linear-gradient(
      135deg,
      #a34c60,
      #8b4052
    );

  box-shadow:
    0 11px 26px
    rgba(139, 64, 82, 0.18);

  cursor: pointer;
}


.date48-auth-page
.date48-onboarding-card
.date48-auth-actions-row > button:disabled {
  opacity: 0.48;

  box-shadow: none;

  cursor: default;
}


.date48-auth-page
.date48-onboarding-card
.date48-auth-secondary-link {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 42px;

  border:
    1px solid
    rgba(119, 82, 73, 0.07);

  border-radius: 14px;

  color: #826b67;

  font-size: 11px;
  font-weight: 680;

  text-decoration: none;

  background:
    rgba(255, 253, 251, 0.77);
}


/* ---------- ERROR ---------- */

.date48-auth-page
.date48-onboarding-card
.date48-auth-error {
  margin-top: 9px;

  padding:
    10px
    12px;

  border-radius: 12px;

  color: #98485b;

  font-size: 10px;
  line-height: 1.35;

  background:
    rgba(249, 225, 228, 0.72);
}


/* ---------- SMALL IPHONE ---------- */

@media (max-width: 390px) {

  .date48-auth-page
  .date48-onboarding-card {
    padding-left: 9px;
    padding-right: 9px;
  }


  .date48-auth-page
  .date48-onboarding-card
  .date48-auth-hero h1 {
    font-size: 35px;
  }


  .date48-auth-page
  .date48-onboarding-card
  .date48-onboarding-grid {
    grid-template-columns:
      1fr;
  }


  .date48-auth-page
  .date48-onboarding-card
  .date48-onboarding-grid label {
    grid-column: 1 / -1;
  }

}



/* DATE48 CSS SOURCE 3: /assets/ui-premium-wave2-v1-1-20260917_112022.css */
/* =========================================================
   DATE48 — PREMIUM UI SYSTEM WAVE 2
   People / Compass / 48 Hours / Places / Matches
   Visual only. No behavior changes.
   ========================================================= */

:root {
  --d48-u-bg: #f8f2ee;
  --d48-u-bg-soft: #fcf8f5;
  --d48-u-surface: rgba(255, 253, 251, 0.94);
  --d48-u-surface-strong: #fffdfb;
  --d48-u-ink: #2d2320;
  --d48-u-muted: #8c7973;
  --d48-u-soft: #aa9892;
  --d48-u-line: rgba(91, 61, 54, 0.075);
  --d48-u-rose: #9b485b;
  --d48-u-rose-deep: #813b4c;
  --d48-u-rose-soft: #f4e2e4;
  --d48-u-shadow:
    0 12px 34px
    rgba(73, 45, 39, 0.055);
}


/* =========================================================
   COMMON PAGE SHELL
   ========================================================= */

.date48-people-page--v3,
.date48-compass-page,
.date48-page,
.date48-places-page,
.date48-place-detail-page,
.date48-plan-page,
.date48-matches-page {
  width: 100%;
  min-width: 0;

  margin: 0;

  overflow-x: clip;

  color: var(--d48-u-ink);

  background:
    radial-gradient(
      circle at 92% 0%,
      rgba(202, 139, 154, 0.10),
      transparent 24%
    ),
    linear-gradient(
      180deg,
      var(--d48-u-bg-soft) 0%,
      var(--d48-u-bg) 100%
    );
}


.date48-people-page--v3,
.date48-compass-page,
.date48-page,
.date48-places-page,
.date48-plan-page,
.date48-matches-page {
  padding-bottom:
    calc(
      98px +
      env(safe-area-inset-bottom)
    );
}


.date48-people-page--v3 h1,
.date48-people-page--v3 h2,
.date48-compass-page h1,
.date48-compass-page h2,
.date48-page h1,
.date48-page h2,
.date48-page h3,
.date48-places-page h1,
.date48-places-page h2,
.date48-place-detail-page h1,
.date48-place-detail-page h2,
.date48-plan-page h1,
.date48-plan-page h2,
.date48-matches-page h1,
.date48-matches-page h2 {
  color: var(--d48-u-ink);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-weight: 400;

  letter-spacing: -0.035em;
}


/* =========================================================
   PEOPLE
   ========================================================= */

.date48-people-page--v3 {
  padding-top: 8px;
}


.date48-people-page--v3
.date48-people-v3__head {
  padding:
    17px
    16px
    11px;
}


.date48-people-page--v3
.date48-people-kicker {
  display: block;

  margin-bottom: 5px;

  color: var(--d48-u-rose);

  font-size: 8px;
  font-weight: 760;

  letter-spacing: 0.27em;
}


.date48-people-page--v3
.date48-people-v3__head h1 {
  margin:
    0
    0
    5px;

  font-size:
    clamp(
      34px,
      9.4vw,
      43px
    );

  line-height: 0.97;
}


.date48-people-page--v3
.date48-people-v3__head p {
  margin: 0;

  color: var(--d48-u-muted);

  font-size: 11px;
  line-height: 1.4;
}


.date48-people-page--v3
.date48-people-v3__filters {
  display: flex;

  gap: 6px;

  padding:
    2px
    16px
    12px;

  overflow-x: auto;

  scrollbar-width: none;
}


.date48-people-page--v3
.date48-people-v3__filters::-webkit-scrollbar {
  display: none;
}


.date48-people-page--v3
.date48-people-v3__filter {
  min-width: max-content;

  min-height: 33px;

  padding:
    0
    14px;

  border:
    1px solid
    var(--d48-u-line);

  border-radius: 999px;

  color: #765f5a;

  font-size: 10px;
  font-weight: 690;

  background:
    rgba(255, 253, 251, 0.78);

  box-shadow: none;
}


.date48-people-page--v3
.date48-people-v3__filter.is-active {
  border-color:
    rgba(145, 62, 82, 0.14);

  color: #fffafa;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );

  box-shadow:
    0 7px 18px
    rgba(129, 59, 76, 0.15);
}


.date48-people-page--v3
.date48-people-v3__compass {
  margin:
    0
    16px
    13px;

  border:
    1px solid
    var(--d48-u-line);

  border-radius: 18px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 253, 251, 0.96),
      rgba(249, 238, 235, 0.92)
    );

  box-shadow:
    var(--d48-u-shadow);
}


.date48-people-page--v3
.date48-people-v3__compass-mark {
  color: var(--d48-u-rose);
}


.date48-people-page--v3
.date48-people-v3__compass strong {
  color: var(--d48-u-ink);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-weight: 400;
}


.date48-people-page--v3
.date48-people-v3__compass small {
  color: var(--d48-u-muted);
}


.date48-people-page--v3
.date48-people-v3__masonry {
  gap: 8px;

  padding:
    0
    12px;
}


.date48-people-page--v3
.date48-people-v3__card {
  overflow: hidden;

  border:
    1px solid
    rgba(92, 59, 52, 0.07);

  border-radius: 18px;

  background:
    var(--d48-u-surface-strong);

  box-shadow:
    0 9px 26px
    rgba(67, 42, 36, 0.055);

  text-decoration: none;
}


.date48-people-page--v3
.date48-people-v3__photo {
  overflow: hidden;

  background: #eadeda;
}


.date48-people-page--v3
.date48-people-v3__photo img {
  width: 100%;

  display: block;
}


.date48-people-page--v3
.date48-people-v3__badge {
  border:
    1px solid
    rgba(255, 255, 255, 0.46);

  color: #fff;

  background:
    rgba(143, 56, 77, 0.88);

  backdrop-filter:
    blur(8px);
}


.date48-people-page--v3
.date48-people-v3__badge--quiet {
  color: #594843;

  background:
    rgba(255, 250, 247, 0.88);
}


.date48-people-page--v3
.date48-people-v3__identity {
  padding:
    10px
    11px
    11px;
}


.date48-people-page--v3
.date48-people-v3__identity strong {
  color: var(--d48-u-ink);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 16px;
  font-weight: 400;

  letter-spacing: -0.02em;
}


.date48-people-page--v3
.date48-people-v3__identity small {
  color: var(--d48-u-muted);

  font-size: 9px;
}


.date48-people-page--v3
.date48-people-v3__empty {
  margin:
    12px
    16px;

  padding: 22px;

  border:
    1px solid
    var(--d48-u-line);

  border-radius: 20px;

  background:
    var(--d48-u-surface);

  box-shadow:
    var(--d48-u-shadow);
}


.date48-people-page--v3
.date48-people-v3__empty strong {
  color: var(--d48-u-ink);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 21px;
  font-weight: 400;
}


.date48-people-page--v3
.date48-people-v3__empty p {
  color: var(--d48-u-muted);
}


.date48-people-page--v3
.date48-people-v3__empty-action {
  border: 0;

  border-radius: 13px;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


/* =========================================================
   COMPASS
   ========================================================= */

.date48-compass-page {
  padding:
    18px
    14px
    calc(
      98px +
      env(safe-area-inset-bottom)
    );
}


.date48-compass-page h1 {
  font-size:
    clamp(
      34px,
      9vw,
      44px
    );

  line-height: 0.98;
}


.date48-compass-page section,
.date48-compass-page article {
  border-color:
    var(--d48-u-line);

  background:
    var(--d48-u-surface);

  box-shadow:
    var(--d48-u-shadow);
}


.date48-compass-page button,
.date48-compass-page a {
  border-color:
    var(--d48-u-line);
}


/* =========================================================
   48 HOURS
   ========================================================= */

.date48-page {
  padding:
    8px
    12px
    calc(
      102px +
      env(safe-area-inset-bottom)
    );
}


.date48-page
.date48-stories {
  margin-bottom: 10px;
}


.date48-page
.date48-stories__label,
.date48-page
.date48-eyebrow,
.date48-page
.date48-preferences-eyebrow,
.date48-page
.date48-places-entry__eyebrow {
  color: var(--d48-u-rose);

  font-size: 8px;
  font-weight: 760;

  letter-spacing: 0.18em;
}


.date48-page
.date48-story-add,
.date48-page
.date48-story {
  color: var(--d48-u-ink);
}


.date48-page
.date48-mode-card,
.date48-page
.date48-preferences-card,
.date48-page
.date48-geo-card,
.date48-page
.date48-places-entry,
.date48-page
.date48-empty {
  border:
    1px solid
    var(--d48-u-line);

  border-radius: 20px;

  background:
    var(--d48-u-surface);

  box-shadow:
    var(--d48-u-shadow);
}


.date48-page
.date48-mode-card {
  padding: 18px;
}


.date48-page
.date48-mode-card h1 {
  max-width: 310px;

  margin:
    3px
    0
    8px;

  font-size:
    clamp(
      27px,
      7.3vw,
      34px
    );

  line-height: 1;
}


.date48-page
.date48-muted {
  color: var(--d48-u-muted);

  font-size: 10px;
  line-height: 1.45;
}


.date48-page
.date48-mode-state {
  color: var(--d48-u-rose);

  font-size: 8px;
  font-weight: 760;

  letter-spacing: 0.16em;
}


.date48-page
.date48-toggle {
  border:
    1px solid
    rgba(97, 68, 61, 0.08);

  background: #e9ded9;
}


.date48-page
.date48-toggle.is-on {
  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


.date48-page
.date48-preferences-card {
  padding: 17px;
}


.date48-page
.date48-preferences-card__head h2 {
  margin:
    2px
    0
    5px;

  font-size: 24px;
  line-height: 1;
}


.date48-page
.date48-preferences-card__head > p:last-child {
  color: var(--d48-u-muted);

  font-size: 10px;
  line-height: 1.4;
}


.date48-page
.date48-quiz__title {
  color: #8c7771;

  font-size: 8px;
  font-weight: 730;

  letter-spacing: 0.13em;
}


.date48-page
.date48-chip {
  border:
    1px solid
    var(--d48-u-line);

  color: #705a55;

  background:
    rgba(255, 253, 251, 0.90);
}


.date48-page
.date48-chip.is-active {
  border-color:
    rgba(144, 61, 81, 0.14);

  color: var(--d48-u-rose-deep);

  background:
    var(--d48-u-rose-soft);
}


.date48-page
.date48-geo-card {
  overflow: hidden;
}


.date48-page
.date48-geo-stat {
  border-color:
    var(--d48-u-line);
}


.date48-page
.date48-geo-stat__icon {
  background:
    var(--d48-u-rose-soft);
}


.date48-page
.date48-geo-stat__body small {
  color: var(--d48-u-soft);
}


.date48-page
.date48-geo-stat__body strong {
  color: var(--d48-u-ink);
}


.date48-page
.date48-geo-radius-mini button,
.date48-page
.date48-geo-actions button,
.date48-page
.date48-map-points button,
.date48-page
.date48-radius-row button,
.date48-page
.date48-district-row button {
  border:
    1px solid
    var(--d48-u-line);

  color: #755e58;

  background:
    rgba(255, 253, 251, 0.90);
}


.date48-page
.date48-geo-radius-mini button.is-active,
.date48-page
.date48-radius-row button.is-active,
.date48-page
.date48-district-row button.is-active {
  color: #fff;

  background:
    var(--d48-u-rose);
}


.date48-page
.date48-places-entry {
  padding: 16px;
}


.date48-page
.date48-places-entry__icon {
  color: var(--d48-u-rose);

  background:
    var(--d48-u-rose-soft);
}


.date48-page
.date48-places-entry__copy h2 {
  margin:
    2px
    0
    5px;

  font-size: 24px;
}


.date48-page
.date48-places-entry__copy > p {
  color: var(--d48-u-muted);

  font-size: 10px;
  line-height: 1.4;
}


.date48-page
.date48-places-entry__preview {
  border-color:
    var(--d48-u-line);

  background:
    rgba(255, 255, 255, 0.66);
}


.date48-page
.date48-places-entry__copy > button {
  border: 0;

  border-radius: 13px;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


.date48-page
.date48-feed-head {
  margin-top: 19px;
}


.date48-page
.date48-feed-head h2 {
  margin: 0;

  font-size: 25px;
}


.date48-page
.date48-feed-head p {
  color: var(--d48-u-muted);

  font-size: 9px;
}


.date48-page
.date48-feed-head > button {
  border:
    1px solid
    var(--d48-u-line);

  border-radius: 999px;

  color: #79635e;

  background:
    rgba(255, 253, 251, 0.80);
}


.date48-page
.date48-profile-card {
  border:
    1px solid
    var(--d48-u-line);

  border-radius: 18px;

  background:
    var(--d48-u-surface);

  box-shadow:
    0 9px 25px
    rgba(67, 42, 36, 0.045);
}


.date48-page
.date48-profile-card__info h3 {
  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 19px;
  font-weight: 400;

  letter-spacing: -0.025em;
}


.date48-page
.date48-ready-badge {
  color: var(--d48-u-rose);
}


.date48-page
.date48-save {
  color: var(--d48-u-rose);
}


.date48-page
.date48-map-sheet__panel {
  border-radius:
    24px
    24px
    0
    0;

  background:
    #fbf6f2;
}


.date48-page
.date48-map-sheet__head h3 {
  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 23px;
  font-weight: 400;
}


.date48-page
.date48-map-shell {
  border:
    1px solid
    var(--d48-u-line);

  border-radius: 18px;

  overflow: hidden;
}


.date48-page
.date48-location-button {
  border: 0;

  border-radius: 14px;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


/* =========================================================
   PLACES CATALOGUE
   ========================================================= */

.date48-places-page {
  padding:
    13px
    12px
    calc(
      102px +
      env(safe-area-inset-bottom)
    );
}


.date48-places-page
.date48-places-top {
  align-items: center;

  padding:
    8px
    3px
    15px;
}


.date48-places-page
.date48-places-top p {
  margin:
    0
    0
    3px;

  color: var(--d48-u-rose);

  font-size: 8px;
  font-weight: 760;

  letter-spacing: 0.19em;
}


.date48-places-page
.date48-places-top h1 {
  margin: 0;

  font-size:
    clamp(
      29px,
      7.8vw,
      38px
    );

  line-height: 0.98;
}


.date48-places-page
.date48-places-back {
  border:
    1px solid
    var(--d48-u-line);

  color: #765f5a;

  background:
    rgba(255, 253, 251, 0.84);

  box-shadow:
    0 5px 15px
    rgba(67, 42, 36, 0.04);
}


.date48-places-page
.date48-places-top__spark {
  color: var(--d48-u-rose);
}


.date48-places-page
.date48-places-filters {
  gap: 6px;

  margin-bottom: 12px;

  overflow-x: auto;

  scrollbar-width: none;
}


.date48-places-page
.date48-places-filters::-webkit-scrollbar {
  display: none;
}


.date48-places-page
.date48-places-filters button {
  min-width: max-content;

  border:
    1px solid
    var(--d48-u-line);

  border-radius: 999px;

  color: #705b56;

  background:
    rgba(255, 253, 251, 0.78);
}


.date48-places-page
.date48-places-filters button.is-active {
  border-color: transparent;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


.date48-places-page
.date48-places-intro {
  margin-bottom: 13px;
}


.date48-places-page
.date48-places-intro p {
  color: var(--d48-u-ink);
}


.date48-places-page
.date48-places-intro small {
  color: var(--d48-u-muted);
}


.date48-places-page
.date48-place-card {
  overflow: hidden;

  border:
    1px solid
    var(--d48-u-line);

  border-radius: 20px;

  background:
    var(--d48-u-surface-strong);

  box-shadow:
    var(--d48-u-shadow);
}


.date48-places-page
.date48-place-card__visual {
  overflow: hidden;

  border-radius:
    19px
    19px
    0
    0;

  background: #eadeda;
}


.date48-places-page
.date48-place-card__body {
  padding:
    13px
    13px
    14px;
}


.date48-places-page
.date48-place-card__title-row h2 {
  color: var(--d48-u-ink);

  font-size: 21px;
  line-height: 1.02;
}


.date48-places-page
.date48-place-card__title-row p,
.date48-places-page
.date48-place-card__description {
  color: var(--d48-u-muted);
}


.date48-places-page
.date48-place-card__tags span,
.date48-places-page
.date48-place-card__scenarios span {
  border:
    1px solid
    rgba(139, 62, 81, 0.08);

  border-radius: 999px;

  color: #79555e;

  background:
    #f7e9ea;
}


.date48-places-page
.date48-place-heart {
  border:
    1px solid
    rgba(255, 255, 255, 0.44);

  color: var(--d48-u-rose);

  background:
    rgba(255, 250, 247, 0.88);

  backdrop-filter:
    blur(9px);
}


.date48-places-page
.date48-places-more-head p {
  color: var(--d48-u-ink);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-weight: 400;
}


/* =========================================================
   PLACE DETAIL / PLAN
   ========================================================= */

.date48-place-detail-page {
  background:
    linear-gradient(
      180deg,
      #f8f1ed,
      #fbf7f4
    );
}


.date48-place-detail-page
.date48-place-detail-hero {
  overflow: hidden;

  background: #e9ddd8;
}


.date48-place-detail-page
.date48-place-detail-back,
.date48-place-detail-page
.date48-place-detail-heart {
  border:
    1px solid
    rgba(255, 255, 255, 0.50);

  color: #6d5550;

  background:
    rgba(255, 250, 247, 0.88);

  backdrop-filter:
    blur(10px);
}


.date48-place-detail-page
.date48-place-detail-sheet {
  border-radius:
    23px
    23px
    0
    0;

  background:
    #fbf7f4;

  box-shadow:
    0 -12px 35px
    rgba(62, 39, 33, 0.055);
}


.date48-place-detail-page
.date48-place-detail-kicker {
  color: var(--d48-u-rose);

  font-size: 8px;
  font-weight: 760;

  letter-spacing: 0.18em;
}


.date48-place-detail-page
.date48-place-detail-sheet h1 {
  font-size:
    clamp(
      30px,
      8vw,
      39px
    );

  line-height: 0.98;
}


.date48-place-detail-page
.date48-place-detail-address,
.date48-place-detail-page
.date48-place-detail-description {
  color: var(--d48-u-muted);
}


.date48-place-detail-page
.date48-place-detail-tags span,
.date48-place-detail-page
.date48-place-scenarios span {
  border:
    1px solid
    rgba(139, 62, 81, 0.08);

  color: #79555e;

  background:
    #f6e7e9;
}


.date48-place-detail-page
.date48-place-detail-facts > div,
.date48-place-detail-page
.date48-place-live-info,
.date48-place-detail-page
.date48-place-why,
.date48-place-detail-page
.date48-place-budget-compact,
.date48-place-detail-page
.date48-place-gallery-compact {
  border-color:
    var(--d48-u-line);

  background:
    var(--d48-u-surface);

  box-shadow:
    0 8px 24px
    rgba(65, 41, 35, 0.035);
}


.date48-place-detail-page
.date48-place-detail-sticky {
  border-top:
    1px solid
    var(--d48-u-line);

  background:
    rgba(252, 247, 244, 0.94);

  backdrop-filter:
    blur(18px);
}


.date48-place-detail-page
.date48-place-detail-choose,
.date48-place-detail-page
.date48-place-detail-sticky button,
.date48-place-detail-page
.date48-place-detail-sticky a {
  border: 0;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


.date48-plan-page {
  padding:
    15px
    13px
    calc(
      102px +
      env(safe-area-inset-bottom)
    );
}


.date48-plan-page section,
.date48-plan-page article {
  border-color:
    var(--d48-u-line);

  background:
    var(--d48-u-surface);

  box-shadow:
    var(--d48-u-shadow);
}


/* =========================================================
   MATCHES / CHATS LIST
   ========================================================= */

.date48-matches-page {
  padding:
    17px
    13px
    calc(
      102px +
      env(safe-area-inset-bottom)
    );
}


.date48-matches-page
.date48-matches-head {
  padding:
    3px
    3px
    17px;
}


.date48-matches-page
.date48-matches-head > p {
  margin:
    0
    0
    5px;

  color: var(--d48-u-rose);

  font-size: 8px;
  font-weight: 760;

  letter-spacing: 0.21em;
}


.date48-matches-page
.date48-matches-head h1 {
  margin:
    0
    0
    6px;

  font-size:
    clamp(
      34px,
      9vw,
      43px
    );

  line-height: 0.97;
}


.date48-matches-page
.date48-matches-head > span {
  display: block;

  max-width: 320px;

  color: var(--d48-u-muted);

  font-size: 10px;
  line-height: 1.4;
}


.date48-matches-page
.date48-matches-list {
  display: grid;

  gap: 7px;
}


.date48-matches-page
.date48-match-row {
  width: 100%;
  min-width: 0;

  min-height: 72px;

  border:
    1px solid
    var(--d48-u-line);

  border-radius: 17px;

  color: var(--d48-u-ink);

  background:
    var(--d48-u-surface);

  box-shadow:
    0 8px 24px
    rgba(67, 42, 36, 0.04);
}


.date48-matches-page
.date48-match-row__avatar {
  border:
    2px solid
    #f2dfe2;

  background:
    #f4e6e5;
}


.date48-matches-page
.date48-match-row__avatar i {
  color: #fff;

  background:
    var(--d48-u-rose);
}


.date48-matches-page
.date48-match-row__body strong {
  color: var(--d48-u-ink);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 17px;
  font-weight: 400;

  letter-spacing: -0.02em;
}


.date48-matches-page
.date48-match-row__body small,
.date48-matches-page
.date48-match-row__meta small {
  color: var(--d48-u-muted);
}


.date48-matches-page
.date48-match-row__meta b {
  color: var(--d48-u-rose);
}


.date48-matches-page
.date48-matches-status,
.date48-matches-page
.date48-matches-empty {
  border:
    1px solid
    var(--d48-u-line);

  border-radius: 20px;

  background:
    var(--d48-u-surface);

  box-shadow:
    var(--d48-u-shadow);
}


.date48-matches-page
.date48-matches-empty h2 {
  font-size: 24px;
}


.date48-matches-page
.date48-matches-empty p {
  color: var(--d48-u-muted);
}


.date48-matches-page
.date48-matches-empty > button {
  border: 0;

  border-radius: 14px;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      var(--d48-u-rose),
      var(--d48-u-rose-deep)
    );
}


/* =========================================================
   MOBILE WIDTH HARD GUARD
   ========================================================= */

.date48-people-page--v3 *,
.date48-compass-page *,
.date48-page *,
.date48-places-page *,
.date48-place-detail-page *,
.date48-plan-page *,
.date48-matches-page * {
  min-width: 0;
}


@media (max-width: 390px) {

  .date48-people-page--v3
  .date48-people-v3__head {
    padding-left: 13px;
    padding-right: 13px;
  }


  .date48-people-page--v3
  .date48-people-v3__filters {
    padding-left: 13px;
    padding-right: 13px;
  }


  .date48-people-page--v3
  .date48-people-v3__compass {
    margin-left: 13px;
    margin-right: 13px;
  }


  .date48-page,
  .date48-places-page,
  .date48-matches-page {
    padding-left: 10px;
    padding-right: 10px;
  }


  .date48-page
  .date48-mode-card h1 {
    font-size: 27px;
  }


  .date48-places-page
  .date48-places-top h1 {
    font-size: 29px;
  }

}


/* DATE48 CSS SOURCE 4: /assets/ui-premium-wave3-20260917_114411.css */
/* =========================================================
   DATE48 — PREMIUM UI WAVE 3
   Final visual alignment:
   - unified Date48 wordmark
   - compact onboarding
   - odd profile photo layout
   - home editorial feed
   - bottom navigation clearance
   - 48-hours typography refinement
   ========================================================= */


/* =========================================================
   1. GLOBAL PREMIUM WORDMARK
   ========================================================= */

.app-shell > .topbar {
  min-height: 76px;

  padding:
    max(
      13px,
      env(safe-area-inset-top)
    )
    17px
    8px;

  align-items: center;
}


.app-shell > .topbar .brand {
  display: inline-flex;
  align-items: center;

  width: auto;
  min-width: 0;

  text-decoration: none;
}


.app-shell > .topbar .brand__logo {
  display: none !important;
}


.app-shell > .topbar .brand::after {
  content: "Date48";

  display: block;

  color: #98485b;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 28px;
  font-weight: 400;
  line-height: 1;

  letter-spacing: -0.045em;
}


.app-shell > .topbar .topbar__settings {
  width: 43px;
  height: 43px;

  flex:
    0
    0
    43px;

  border:
    1px solid
    rgba(
      90,
      59,
      52,
      0.07
    );

  border-radius: 15px;

  color: #493d39;

  background:
    rgba(
      255,
      253,
      251,
      0.87
    );

  box-shadow:
    0 7px 22px
    rgba(
      66,
      42,
      36,
      0.045
    );
}


.app-shell > .topbar .topbar__settings svg {
  width: 23px;
  height: 23px;
}


/* =========================================================
   2. PROFILE — RAW DATA / PHOTO GRID
   ========================================================= */

.date48-account-page
.date48-account-posts__grid
> .date48-account-post:last-child:nth-child(odd) {
  grid-column:
    1 / -1;

  aspect-ratio:
    1.55 / 1;

  min-height: 0;
}


.date48-account-page
.date48-account-posts__grid
> .date48-account-post:last-child:nth-child(odd)
> img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  object-position:
    center 30%;
}


.date48-account-page
.date48-account-posts__grid
> .date48-account-post:last-child:nth-child(odd)
.date48-account-post__main,

.date48-account-page
.date48-account-posts__grid
> .date48-account-post:last-child:nth-child(odd)
.date48-account-post__make-main {
  max-width:
    calc(100% - 72px);
}


/* =========================================================
   3. COMPACT PROFILE EDIT / ONBOARDING
   ========================================================= */

.date48-auth-page:has(.date48-onboarding-card)
.date48-onboarding-card {
  padding-top: 7px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-back {
  min-height: 34px;

  margin-bottom: 16px;

  padding:
    0
    12px;

  font-size: 10px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-hero {
  margin-bottom: 15px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-hero h1 {
  max-width: 360px;

  margin-bottom: 7px;

  font-size:
    clamp(
      31px,
      8.8vw,
      40px
    );

  line-height: 0.94;

  letter-spacing: -0.052em;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-hero p {
  max-width: 390px;

  font-size: 11px;
  line-height: 1.4;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-onboarding-grid {
  gap:
    7px
    8px;

  margin-bottom: 7px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-onboarding-grid label,

.date48-auth-page:has(.date48-onboarding-card)
.date48-about-field {
  gap: 5px;

  font-size: 8px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-onboarding-grid input,

.date48-auth-page:has(.date48-onboarding-card)
.date48-onboarding-grid select {
  height: 45px;

  padding:
    0
    12px;

  border-radius: 14px;

  font-size: 12px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-onboarding-grid select {
  background-position:
    calc(100% - 17px) 19px,
    calc(100% - 12px) 19px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-about-field textarea {
  min-height: 82px;

  padding:
    11px
    12px;

  border-radius: 14px;

  font-size: 12px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-actions-row {
  gap: 6px;

  margin-top: 10px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-actions-row > button {
  min-height: 45px;

  border-radius: 14px;

  font-size: 12px;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-secondary-link {
  min-height: 39px;

  font-size: 10px;
}


/* =========================================================
   4. HOME — EDITORIAL FEED
   ========================================================= */

body:has(.date48-real-feed)
.screen-body {
  padding-bottom:
    calc(
      122px +
      env(safe-area-inset-bottom)
    );
}


body:has(.date48-real-feed)
.date48-feed-title {
  padding:
    17px
    14px
    9px;
}


body:has(.date48-real-feed)
.date48-feed-title h1 {
  margin: 0;

  color: #2d2320;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      34px,
      9vw,
      43px
    );

  font-weight: 400;
  line-height: 0.98;

  letter-spacing: -0.04em;
}


body:has(.date48-real-feed)
.date48-feed-title p {
  margin-top: 5px;

  color: #907d77;

  font-size: 10px;
}


body:has(.date48-real-feed)
.date48-inline-filters {
  gap: 6px;

  padding:
    0
    14px
    12px;
}


body:has(.date48-real-feed)
.date48-inline-filters button {
  min-height: 34px;

  padding:
    0
    14px;

  border:
    1px solid
    rgba(
      91,
      61,
      54,
      0.075
    );

  border-radius: 999px;

  color: #745d58;

  background:
    rgba(
      255,
      253,
      251,
      0.84
    );

  box-shadow: none;
}


body:has(.date48-real-feed)
.date48-inline-filters button.is-active {
  border-color: transparent;

  color: #fff;

  background:
    linear-gradient(
      135deg,
      #a34c60,
      #873d4f
    );

  box-shadow:
    0 7px 18px
    rgba(
      135,
      61,
      79,
      0.15
    );
}


body:has(.date48-real-feed)
.date48-classic-feed {
  padding:
    0
    12px
    14px;
}


body:has(.date48-real-feed)
.date48-classic-card {
  overflow: hidden;

  margin-bottom: 12px;

  border:
    1px solid
    rgba(
      91,
      61,
      54,
      0.075
    );

  border-radius: 21px;

  background:
    rgba(
      255,
      253,
      251,
      0.96
    );

  box-shadow:
    0 12px 31px
    rgba(
      70,
      44,
      38,
      0.055
    );
}


body:has(.date48-real-feed)
.date48-real-post__photo {
  width: 100%;

  aspect-ratio:
    4 / 5;

  max-height: 560px;

  overflow: hidden;

  background: #eadeda;
}


body:has(.date48-real-feed)
.date48-real-post__photo img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}


body:has(.date48-real-feed)
.date48-real-post__body {
  padding:
    13px
    14px
    15px;
}


body:has(.date48-real-feed)
.date48-real-post__person {
  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-weight: 400;
}


body:has(.date48-real-feed)
.date48-real-post__caption-wrap,

body:has(.date48-real-feed)
.date48-classic-card__meta,

body:has(.date48-real-feed)
.date48-real-post__hint {
  color: #88756f;
}


/* =========================================================
   5. BOTTOM NAV CLEARANCE
   ========================================================= */

.date48-people-page--v3,
.date48-page,
.date48-places-page,
.date48-plan-page,
.date48-matches-page {
  padding-bottom:
    calc(
      128px +
      env(safe-area-inset-bottom)
    ) !important;
}


.date48-account-page {
  padding-bottom:
    calc(
      132px +
      env(safe-area-inset-bottom)
    ) !important;
}


/* =========================================================
   6. 48 HOURS — FINAL TYPOGRAPHY
   ========================================================= */

.date48-page
.date48-mode-card h1 {
  max-width: 285px;

  font-size:
    clamp(
      26px,
      6.8vw,
      31px
    );

  line-height: 0.98;
}


.date48-page
.date48-preferences-card__head h2 {
  font-size:
    clamp(
      23px,
      6.1vw,
      28px
    );
}


.date48-page
.date48-empty h3 {
  font-size:
    clamp(
      25px,
      6.7vw,
      31px
    );

  line-height: 1.02;
}


/* =========================================================
   7. MATCHES DENSITY
   ========================================================= */

.date48-matches-page
.date48-match-row {
  min-height: 68px;
}


.date48-matches-page
.date48-matches-head {
  padding-bottom: 14px;
}


/* =========================================================
   8. SMALL IPHONE
   ========================================================= */

@media (max-width: 390px) {

  .app-shell > .topbar {
    min-height: 70px;

    padding-left: 14px;
    padding-right: 14px;
  }


  .app-shell > .topbar .brand::after {
    font-size: 26px;
  }


  .app-shell > .topbar .topbar__settings {
    width: 40px;
    height: 40px;

    flex-basis: 40px;
  }


  .date48-auth-page:has(.date48-onboarding-card)
  .date48-auth-hero h1 {
    font-size: 31px;
  }


  body:has(.date48-real-feed)
  .date48-real-post__photo {
    max-height: 510px;
  }

}


/* DATE48 CSS SOURCE 5: /assets/ui-premium-wave4-20260917_120604.css */
/* =========================================================
   DATE48 — PREMIUM UI WAVE 4
   COLOR & DENSITY DISCIPLINE
   One palette. Less glow. More editorial restraint.
   ========================================================= */

:root {
  --d48-v4-bg: #fbf7f3;
  --d48-v4-surface: #fffdfb;
  --d48-v4-surface-soft: #f8f3ef;

  --d48-v4-ink: #2b2421;
  --d48-v4-muted: #8b807b;
  --d48-v4-muted-2: #a79d98;

  --d48-v4-line: #e9dfda;

  --d48-v4-wine: #a34f62;
  --d48-v4-wine-deep: #8d4355;
  --d48-v4-wine-soft: #f3e6e9;

  --d48-v4-shadow:
    0 10px 26px rgba(52, 36, 31, 0.05);
}


/* =========================================================
   GLOBAL SHELL
   ========================================================= */

html,
body,
#root,
.app-page,
.app-shell,
.screen-body {
  background:
    var(--d48-v4-bg) !important;
}


.app-shell > .topbar {
  background:
    var(--d48-v4-bg) !important;
}


.app-shell > .topbar .brand::after {
  color:
    var(--d48-v4-wine) !important;
}


.app-shell > .topbar .topbar__settings {
  color:
    var(--d48-v4-ink) !important;

  background:
    rgba(255, 253, 251, 0.94) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    0 5px 16px rgba(52, 36, 31, 0.04) !important;
}


/* =========================================================
   BOTTOM NAV
   ========================================================= */

.bottom-nav {
  background:
    rgba(255, 253, 251, 0.92) !important;

  border:
    1px solid
    rgba(233, 223, 218, 0.92) !important;

  box-shadow:
    0 10px 28px rgba(54, 38, 33, 0.08) !important;

  backdrop-filter:
    blur(18px);

  -webkit-backdrop-filter:
    blur(18px);
}


.bottom-nav::before {
  opacity:
    0 !important;
}


.bottom-nav__item {
  color:
    #6f6561 !important;
}


.bottom-nav__item.is-active:not(.bottom-nav__item--primary) {
  color:
    var(--d48-v4-wine) !important;

  background:
    transparent !important;
}


.bottom-nav__item--primary {
  background:
    var(--d48-v4-wine-soft) !important;

  color:
    var(--d48-v4-wine-deep) !important;

  border:
    1px solid
    #ead4d9 !important;

  box-shadow:
    0 6px 16px rgba(141, 67, 85, 0.10) !important;
}


.bottom-nav__item--primary::before {
  display:
    none !important;
}


.bottom-nav__item--primary .bottom-nav__icon,
.bottom-nav__item--primary .bottom-nav__label {
  color:
    var(--d48-v4-wine-deep) !important;

  text-shadow:
    none !important;
}


.bottom-nav__item--primary.is-active {
  background:
    #f6ecee !important;

  color:
    var(--d48-v4-wine-deep) !important;

  border-color:
    #e7d4d8 !important;

  box-shadow:
    0 5px 14px rgba(52, 36, 31, 0.06) !important;
}


.bottom-nav__item--primary.is-active .bottom-nav__icon,
.bottom-nav__item--primary.is-active .bottom-nav__label {
  color:
    var(--d48-v4-wine-deep) !important;
}


/* =========================================================
   SHARED PREMIUM PAGES
   ========================================================= */

.date48-people-page--v3,
.date48-page,
.date48-places-page,
.date48-place-detail-page,
.date48-plan-page,
.date48-matches-page {
  color:
    var(--d48-v4-ink) !important;

  background:
    var(--d48-v4-bg) !important;
}


.date48-people-page--v3 h1,
.date48-people-page--v3 h2,
.date48-page h1,
.date48-page h2,
.date48-page h3,
.date48-places-page h1,
.date48-places-page h2,
.date48-place-detail-page h1,
.date48-place-detail-page h2,
.date48-plan-page h1,
.date48-plan-page h2,
.date48-matches-page h1,
.date48-matches-page h2 {
  color:
    var(--d48-v4-ink) !important;
}


/* =========================================================
   HOME
   ========================================================= */

body:has(.date48-real-feed),
body:has(.date48-real-feed) .app-shell,
body:has(.date48-real-feed) .screen-body {
  background:
    var(--d48-v4-bg) !important;
}


body:has(.date48-real-feed)
.date48-feed-title h1 {
  color:
    var(--d48-v4-ink) !important;
}


body:has(.date48-real-feed)
.date48-feed-title p {
  color:
    var(--d48-v4-muted) !important;
}


body:has(.date48-real-feed)
.date48-inline-filters button {
  color:
    #6f6460 !important;

  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    none !important;
}


body:has(.date48-real-feed)
.date48-inline-filters button.is-active {
  color:
    #fff !important;

  background:
    var(--d48-v4-wine) !important;

  border-color:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


body:has(.date48-real-feed)
.date48-real-post {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


body:has(.date48-real-feed)
.date48-real-post__body {
  background:
    var(--d48-v4-surface) !important;
}


body:has(.date48-real-feed)
.date48-real-post__caption-wrap,

body:has(.date48-real-feed)
.date48-classic-card__meta,

body:has(.date48-real-feed)
.date48-real-post__hint {
  color:
    var(--d48-v4-muted) !important;
}


body:has(.date48-real-feed)
.date48-inline-story__thumb {
  box-shadow:
    none !important;
}


body:has(.date48-real-feed)
.date48-inline-story__thumb::after {
  border-color:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   PEOPLE
   ========================================================= */

.date48-people-page--v3 {
  --d48-u-rose:
    var(--d48-v4-wine);

  --d48-u-rose-dark:
    var(--d48-v4-wine-deep);

  --d48-u-bg:
    var(--d48-v4-bg);

  --d48-u-surface:
    var(--d48-v4-surface);

  --d48-u-ink:
    var(--d48-v4-ink);

  --d48-u-muted:
    var(--d48-v4-muted);
}


.date48-people-page--v3
.date48-people-v3__filter {
  color:
    #6f6460 !important;

  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    none !important;
}


.date48-people-page--v3
.date48-people-v3__filter.is-active {
  color:
    #fff !important;

  background:
    var(--d48-v4-wine) !important;

  border-color:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


.date48-people-page--v3
.date48-people-v3__compass {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


.date48-people-page--v3
.date48-people-v3__compass-mark {
  color:
    var(--d48-v4-wine) !important;

  background:
    var(--d48-v4-wine-soft) !important;

  box-shadow:
    none !important;
}


.date48-people-page--v3
.date48-people-v3__card {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


.date48-people-page--v3
.date48-people-v3__badge {
  color:
    var(--d48-v4-wine-deep) !important;

  background:
    rgba(255, 253, 251, 0.90) !important;

  border-color:
    rgba(255, 255, 255, 0.70) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   48 HOURS
   ========================================================= */

.date48-page
.date48-stories__label {
  color:
    var(--d48-v4-wine) !important;
}


.date48-page
.date48-story__avatar {
  border-color:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


.date48-page
.date48-story-add span {
  color:
    var(--d48-v4-wine-deep) !important;

  border-color:
    #dcbcc4 !important;

  background:
    var(--d48-v4-surface) !important;
}


.date48-page
.date48-mode-card,

.date48-page
.date48-preferences-card,

.date48-page
.date48-geo-card,

.date48-page
.date48-places-entry,

.date48-page
.date48-empty {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


.date48-page
.date48-toggle {
  background:
    #ddd3cf !important;

  box-shadow:
    none !important;
}


.date48-page
.date48-toggle.is-on {
  background:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


.date48-page
.date48-chip {
  color:
    #6d625e !important;

  background:
    var(--d48-v4-surface-soft) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    none !important;
}


.date48-page
.date48-chip.is-active {
  color:
    var(--d48-v4-wine-deep) !important;

  background:
    var(--d48-v4-wine-soft) !important;

  border-color:
    #dfc8ce !important;

  box-shadow:
    none !important;
}


.date48-page
.date48-places-entry__icon {
  background:
    var(--d48-v4-wine-soft) !important;

  box-shadow:
    none !important;
}


.date48-page
.date48-places-entry__copy > button,

.date48-page
.date48-empty > button {
  background:
    var(--d48-v4-wine) !important;

  color:
    #fff !important;

  border:
    0 !important;

  box-shadow:
    0 6px 16px rgba(141, 67, 85, 0.10) !important;
}


/* =========================================================
   PLACES
   ========================================================= */

.date48-places-page {
  background:
    var(--d48-v4-bg) !important;
}


.date48-places-page
.date48-places-filters button {
  color:
    #6e625e !important;

  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    none !important;
}


.date48-places-page
.date48-places-filters button.is-active {
  color:
    #fff !important;

  background:
    var(--d48-v4-wine) !important;

  border-color:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


.date48-places-page
.date48-place-card {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


.date48-places-page
.date48-place-card__tags span,

.date48-places-page
.date48-place-card__scenarios span {
  color:
    #766965 !important;

  background:
    var(--d48-v4-surface-soft) !important;

  border-color:
    var(--d48-v4-line) !important;
}


.date48-place-detail-page
.date48-place-detail-sheet,

.date48-plan-page section,

.date48-plan-page article {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


/* =========================================================
   MATCHES
   ========================================================= */

.date48-matches-page
.date48-match-row {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


.date48-matches-page
.date48-match-row__avatar i {
  background:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


.date48-matches-page
.date48-match-row__body small,

.date48-matches-page
.date48-match-row__meta small {
  color:
    var(--d48-v4-muted) !important;
}


.date48-matches-page
.date48-matches-status,

.date48-matches-page
.date48-matches-empty {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


/* =========================================================
   PROFILE / ONBOARDING
   ========================================================= */

.date48-account-page,

.date48-auth-page:has(.date48-onboarding-card) {
  background:
    var(--d48-v4-bg) !important;
}


.date48-account-page
.date48-account-panel,

.date48-account-page
.date48-seeking-card,

.date48-account-page
.date48-account-posts,

.date48-account-page
.date48-account-security-teaser,

.date48-account-page
.date48-theme-card {
  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    var(--d48-v4-shadow) !important;
}


.date48-account-page
.date48-account-kicker,

.date48-account-page
.date48-account-section-kicker,

.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-kicker {
  color:
    var(--d48-v4-wine) !important;
}


.date48-auth-page:has(.date48-onboarding-card)
input,

.date48-auth-page:has(.date48-onboarding-card)
select,

.date48-auth-page:has(.date48-onboarding-card)
textarea {
  color:
    var(--d48-v4-ink) !important;

  background:
    var(--d48-v4-surface) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    none !important;
}


.date48-auth-page:has(.date48-onboarding-card)
.date48-auth-actions-row > button {
  background:
    var(--d48-v4-wine) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   PERSON PROFILE — RESTRAIN MUTUAL / ACTION SURFACE
   ========================================================= */

.d48-premium-person__match-pill {
  color:
    #f7e9ec !important;

  background:
    rgba(42, 33, 30, 0.72) !important;

  border-color:
    rgba(243, 230, 233, 0.38) !important;

  box-shadow:
    none !important;
}


.d48-profile-actions {
  background:
    rgba(255, 253, 251, 0.96) !important;

  border-color:
    var(--d48-v4-line) !important;

  box-shadow:
    0 8px 22px rgba(52, 36, 31, 0.07) !important;
}


.d48-profile-actions button,
.d48-profile-actions a {
  box-shadow:
    none !important;
}


/* =========================================================
   REMOVE EXCESSIVE AMBIENT GLOW
   ========================================================= */

.date48-page::before,
.date48-page::after,

.date48-people-page--v3::before,
.date48-people-page--v3::after,

.date48-matches-page::before,
.date48-matches-page::after,

.date48-places-page::before,
.date48-places-page::after {
  opacity:
    0.18 !important;

  filter:
    blur(70px) !important;
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .bottom-nav__item--primary {
    box-shadow:
      0 5px 13px rgba(141, 67, 85, 0.09) !important;
  }


  .date48-page
  .date48-mode-card,

  .date48-page
  .date48-preferences-card,

  .date48-page
  .date48-geo-card,

  .date48-page
  .date48-places-entry,

  .date48-page
  .date48-empty {
    box-shadow:
      0 8px 22px rgba(52, 36, 31, 0.045) !important;
  }

}


/* DATE48 CSS SOURCE 6: /assets/ui-premium-wave5-20260917_235739.css */
/* =========================================================
   DATE48 — PREMIUM UI WAVE 5
   FINAL GEOMETRY POLISH
   Palette intentionally inherited from Wave 4.
   ========================================================= */


/* =========================================================
   1. PEOPLE — ONE LARGE EDITORIAL CARD COLUMN
   ========================================================= */

.date48-people-page--v3
.date48-people-v3__masonry {
  width: 100% !important;

  column-count: 1 !important;
  column-gap: 0 !important;

  padding:
    0
    14px !important;
}


.date48-people-page--v3
.date48-people-v3__card {
  display: block !important;

  width: 100% !important;

  margin:
    0
    0
    18px !important;

  border-radius:
    22px !important;
}


.date48-people-page--v3
.date48-people-v3__photo,

.date48-people-page--v3
.date48-people-v3__card--variant-0
.date48-people-v3__photo,

.date48-people-page--v3
.date48-people-v3__card--variant-1
.date48-people-v3__photo,

.date48-people-page--v3
.date48-people-v3__card--variant-2
.date48-people-v3__photo,

.date48-people-page--v3
.date48-people-v3__card--variant-3
.date48-people-v3__photo {
  width: 100% !important;

  aspect-ratio:
    4 / 5 !important;

  border-radius:
    22px
    22px
    0
    0 !important;
}


.date48-people-page--v3
.date48-people-v3__photo img {
  width: 100% !important;
  height: 100% !important;

  object-fit:
    cover !important;
}


.date48-people-page--v3
.date48-people-v3__identity {
  padding:
    12px
    14px
    15px !important;
}


.date48-people-page--v3
.date48-people-v3__identity strong {
  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    22px !important;

  font-weight:
    400 !important;

  line-height:
    1.05 !important;

  letter-spacing:
    -0.025em !important;
}


/* =========================================================
   2. HOME — STOP PHOTO FROM EATING THE VIEWPORT
   ========================================================= */

@media (max-width: 760px) {

  body:has(.date48-real-feed)
  .date48-real-post__photo {
    width:
      100% !important;

    height:
      clamp(
        390px,
        54svh,
        470px
      ) !important;

    min-height:
      0 !important;

    max-height:
      470px !important;

    aspect-ratio:
      auto !important;
  }


  body:has(.date48-real-feed)
  .date48-real-post__body {
    padding:
      11px
      14px
      14px !important;
  }


  body:has(.date48-real-feed)
  .date48-real-post__person strong {
    font-family:
      Georgia,
      "Times New Roman",
      serif !important;

    font-size:
      18px !important;

    font-weight:
      400 !important;

    letter-spacing:
      -0.025em !important;
  }

}


/* =========================================================
   3. PERSON PROFILE — CINEMATIC, NOT OVERLAPPED
   ========================================================= */

@media (max-width: 760px) {

  .d48-premium-person
  .d48-premium-person__hero {
    height:
      clamp(
        440px,
        62svh,
        540px
      ) !important;

    min-height:
      0 !important;

    max-height:
      540px !important;
  }


  .d48-premium-person
  .d48-premium-person__hero-photo {
    width:
      100% !important;

    height:
      100% !important;

    object-fit:
      cover !important;
  }


  .d48-premium-person
  .d48-premium-person__match-pill {
    max-width:
      calc(100% - 20px) !important;

    min-height:
      34px !important;

    padding:
      7px
      12px !important;

    font-size:
      12px !important;

    line-height:
      1.15 !important;
  }


  .d48-premium-person
  .d48-premium-person__identity h1 {
    font-family:
      Georgia,
      "Times New Roman",
      serif !important;

    font-size:
      clamp(
        34px,
        9.2vw,
        40px
      ) !important;

    font-weight:
      400 !important;

    line-height:
      0.98 !important;

    letter-spacing:
      -0.035em !important;
  }


  .d48-premium-person
  .d48-premium-person__actions {
    position:
      static !important;

    inset:
      auto !important;

    left:
      auto !important;

    right:
      auto !important;

    bottom:
      auto !important;

    width:
      auto !important;

    max-width:
      none !important;

    margin:
      14px
      16px
      calc(
        132px +
        env(safe-area-inset-bottom)
      ) !important;

    padding:
      11px !important;

    transform:
      none !important;

    border-radius:
      22px !important;

    z-index:
      1 !important;
  }


  .d48-premium-person
  .d48-premium-person__actions-caption {
    margin:
      0
      0
      8px !important;

    font-size:
      11px !important;

    line-height:
      1.15 !important;
  }


  .d48-premium-person
  .d48-premium-person__action-grid {
    gap:
      8px !important;
  }


  .d48-premium-person
  .d48-premium-person__action {
    min-height:
      50px !important;

    padding:
      0
      13px !important;

    border-radius:
      17px !important;

    font-size:
      14px !important;

    line-height:
      1.08 !important;
  }


  .d48-premium-person
  .d48-premium-person__action span {
    font-size:
      18px !important;
  }

}


/* =========================================================
   4. BOTTOM NAV — SLIGHTLY THINNER
   ========================================================= */

@media (max-width: 760px) {

  .bottom-nav {
    left:
      14px !important;

    right:
      14px !important;

    bottom:
      max(
        8px,
        env(safe-area-inset-bottom)
      ) !important;

    height:
      52px !important;

    min-height:
      52px !important;

    max-height:
      52px !important;

    padding:
      4px
      7px !important;

    border-radius:
      20px !important;
  }


  .bottom-nav__item {
    height:
      40px !important;

    min-height:
      40px !important;

    max-height:
      40px !important;

    padding:
      3px
      1px
      2px !important;
  }


  .bottom-nav__icon {
    font-size:
      0.94rem !important;
  }


  .bottom-nav__label {
    font-size:
      0.62rem !important;
  }


  .bottom-nav__item--primary {
    width:
      60px !important;

    min-width:
      60px !important;

    flex-basis:
      60px !important;

    height:
      60px !important;

    min-height:
      60px !important;

    max-height:
      60px !important;

    margin-top:
      -14px !important;

    border-radius:
      18px !important;
  }


  .bottom-nav__item--primary
  .bottom-nav__icon {
    margin-top:
      8px !important;

    font-size:
      1.23rem !important;
  }


  .bottom-nav__item--primary
  .bottom-nav__label {
    margin-bottom:
      7px !important;

    font-size:
      0.60rem !important;
  }

}


/* =========================================================
   5. 48 HOURS — SLIGHTLY MORE CONTENT PER VIEWPORT
   ========================================================= */

@media (max-width: 760px) {

  .date48-page
  .date48-mode-card {
    padding:
      16px !important;
  }


  .date48-page
  .date48-mode-card h1 {
    max-width:
      270px !important;

    font-size:
      clamp(
        24px,
        6.3vw,
        29px
      ) !important;

    line-height:
      0.98 !important;
  }


  .date48-page
  .date48-preferences-card {
    padding:
      15px !important;
  }


  .date48-page
  .date48-preferences-card__head h2 {
    font-size:
      clamp(
        22px,
        5.8vw,
        26px
      ) !important;

    line-height:
      1 !important;
  }


  .date48-page
  .date48-empty h3 {
    font-size:
      clamp(
        24px,
        6.2vw,
        29px
      ) !important;

    line-height:
      1 !important;
  }

}


/* =========================================================
   6. OWN PROFILE — LIGHTER PHOTO CONTROLS
   ========================================================= */

.date48-account-page
.date48-account-post__main,

.date48-account-page
.date48-account-post__make-main {
  min-height:
    30px !important;

  padding:
    5px
    9px !important;

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.30
    ) !important;

  border-radius:
    999px !important;

  color:
    #fff !important;

  background:
    rgba(
      43,
      36,
      33,
      0.70
    ) !important;

  box-shadow:
    none !important;

  backdrop-filter:
    blur(10px) !important;

  -webkit-backdrop-filter:
    blur(10px) !important;

  font-size:
    9px !important;

  font-weight:
    650 !important;
}


/* =========================================================
   7. FINAL BOTTOM CLEARANCE
   ========================================================= */

.date48-account-page,
.date48-people-page--v3,
.date48-page,
.date48-places-page,
.date48-plan-page,
.date48-matches-page {
  padding-bottom:
    calc(
      138px +
      env(safe-area-inset-bottom)
    ) !important;
}


/* DATE48 CSS SOURCE 7: /assets/ui-premium-wave5-people-pinterest-20260918_001006.css */
/* =========================================================
   DATE48 — WAVE 5.1
   PEOPLE PINTEREST / MASONRY RESTORE
   Scope: People only.
   ========================================================= */


/* Two-column Pinterest rhythm */

.date48-people-page--v3
.date48-people-v3__masonry {
  width:
    100% !important;

  column-count:
    2 !important;

  column-gap:
    8px !important;

  padding:
    0
    12px !important;
}


/* Cards participate in masonry independently */

.date48-people-page--v3
.date48-people-v3__card {
  display:
    inline-block !important;

  width:
    100% !important;

  margin:
    0
    0
    10px !important;

  break-inside:
    avoid !important;

  vertical-align:
    top !important;

  border-radius:
    18px !important;
}


/* Restore deliberate mixed photo proportions */

.date48-people-page--v3
.date48-people-v3__card--variant-0
.date48-people-v3__photo {
  aspect-ratio:
    4 / 5 !important;
}


.date48-people-page--v3
.date48-people-v3__card--variant-1
.date48-people-v3__photo {
  aspect-ratio:
    3 / 4 !important;
}


.date48-people-page--v3
.date48-people-v3__card--variant-2
.date48-people-v3__photo {
  aspect-ratio:
    2 / 3 !important;
}


.date48-people-page--v3
.date48-people-v3__card--variant-3
.date48-people-v3__photo {
  aspect-ratio:
    5 / 6 !important;
}


.date48-people-page--v3
.date48-people-v3__photo {
  width:
    100% !important;

  height:
    auto !important;

  overflow:
    hidden !important;

  border-radius:
    18px
    18px
    0
    0 !important;
}


.date48-people-page--v3
.date48-people-v3__photo img {
  display:
    block !important;

  width:
    100% !important;

  height:
    100% !important;

  object-fit:
    cover !important;
}


/* Compact editorial identity below image */

.date48-people-page--v3
.date48-people-v3__identity {
  padding:
    8px
    9px
    10px !important;
}


.date48-people-page--v3
.date48-people-v3__identity strong {
  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    16px !important;

  font-weight:
    400 !important;

  line-height:
    1.05 !important;

  letter-spacing:
    -0.02em !important;
}


/* Slightly tighter on narrow iPhones */

@media (max-width: 380px) {

  .date48-people-page--v3
  .date48-people-v3__masonry {
    column-gap:
      7px !important;

    padding:
      0
      11px !important;
  }


  .date48-people-page--v3
  .date48-people-v3__card {
    margin-bottom:
      9px !important;
  }


  .date48-people-page--v3
  .date48-people-v3__identity strong {
    font-size:
      15px !important;
  }

}


/* DATE48 CSS SOURCE 8: /assets/ui-premium-chat-v2-20260918_003215.css */
/* =========================================================
   DATE48 — PREMIUM CHAT V2
   Light theme / Wave4 palette
   UI only: chat mechanics untouched.
   ========================================================= */

:root {
  --d48-chat-bg: #fbf7f3;
  --d48-chat-surface: #fffdfb;
  --d48-chat-soft: #f8f3ef;
  --d48-chat-ink: #2b2421;
  --d48-chat-muted: #8b807b;
  --d48-chat-line: #e9dfda;
  --d48-chat-wine: #a34f62;
  --d48-chat-wine-deep: #8d4355;
  --d48-chat-wine-soft: #f3e6e9;
}


/* ---------- inbox ---------- */

.date48-matches-page {
  background: var(--d48-chat-bg) !important;
}

.date48-matches-head {
  padding: 20px 15px 13px !important;
}

.date48-matches-head h1 {
  margin: 0 0 5px !important;
  color: var(--d48-chat-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(34px, 9vw, 42px) !important;
  font-weight: 400 !important;
  line-height: .98 !important;
  letter-spacing: -.04em !important;
}

.date48-matches-head p {
  color: var(--d48-chat-muted) !important;
}

.date48-matches-list {
  gap: 8px !important;
  padding: 0 12px 148px !important;
}

.date48-match-row {
  min-height: 74px !important;
  padding: 10px 11px !important;
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 21px !important;
  background: var(--d48-chat-surface) !important;
  box-shadow:
    0 8px 24px
    rgba(52, 36, 31, .045) !important;
}

.date48-match-row__avatar {
  width: 52px !important;
  height: 52px !important;
  flex: 0 0 52px !important;
  border: 1px solid rgba(163, 79, 98, .14) !important;
  background: var(--d48-chat-wine-soft) !important;
  box-shadow: none !important;
}

.date48-match-row__body strong {
  color: var(--d48-chat-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.06 !important;
  letter-spacing: -.02em !important;
}

.date48-match-row__body small,
.date48-match-row__meta {
  color: var(--d48-chat-muted) !important;
}

.date48-match-row__meta {
  font-size: 10px !important;
}

.date48-matches-status,
.date48-matches-empty {
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 22px !important;
  background: var(--d48-chat-surface) !important;
  box-shadow:
    0 8px 24px
    rgba(52, 36, 31, .045) !important;
}


/* ---------- direct chat shell ---------- */

body:has(.date48-chat-page) {
  background: var(--d48-chat-bg) !important;
}

.date48-chat-page {
  min-height: 100dvh !important;
  padding-bottom:
    calc(
      148px +
      env(safe-area-inset-bottom)
    ) !important;
  background: var(--d48-chat-bg) !important;
  color: var(--d48-chat-ink) !important;
}


/* ---------- header ---------- */

.date48-chat-head {
  min-height: 66px !important;
  grid-template-columns:
    40px
    minmax(0, 1fr)
    40px !important;
  padding:
    max(7px, env(safe-area-inset-top))
    12px
    7px !important;
  border-bottom:
    1px solid
    rgba(233, 223, 218, .9) !important;
  background:
    rgba(251, 247, 243, .94) !important;
  box-shadow:
    0 5px 16px
    rgba(52, 36, 31, .025) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}

.date48-chat-head__back,
.date48-chat-head__date {
  width: 38px !important;
  height: 38px !important;
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 50% !important;
  background: var(--d48-chat-surface) !important;
  color: var(--d48-chat-ink) !important;
  box-shadow: none !important;
}

.date48-chat-head__back {
  font-size: 23px !important;
}

.date48-chat-head__date {
  color: var(--d48-chat-wine-deep) !important;
  font-size: 11px !important;
}

.date48-chat-person {
  gap: 9px !important;
  padding: 0 7px !important;
}

.date48-chat-person__avatar {
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  border: 1px solid rgba(163, 79, 98, .14) !important;
  background: var(--d48-chat-wine-soft) !important;
}

.date48-chat-person__copy strong {
  color: var(--d48-chat-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: -.02em !important;
}

.date48-chat-person__copy small {
  margin-top: 3px !important;
  color: var(--d48-chat-wine) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}


/* ---------- intro / thread ---------- */

.date48-chat-thread {
  width: min(100%, 680px) !important;
  margin: 0 auto !important;
  padding: 18px 13px 34px !important;
}

.date48-chat-intro {
  width: min(100%, 300px) !important;
  margin: 8px auto 24px !important;
}

.date48-chat-intro > span {
  width: 38px !important;
  height: 38px !important;
  background: var(--d48-chat-wine-soft) !important;
  color: var(--d48-chat-wine-deep) !important;
}

.date48-chat-intro strong {
  color: var(--d48-chat-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
}

.date48-chat-intro p {
  color: var(--d48-chat-muted) !important;
  font-size: 12px !important;
}


/* ---------- message bubbles ---------- */

.date48-chat-message {
  margin: 5px 0 !important;
}

.date48-chat-message > div,
.date48-chat-message .date48-chat-bubble {
  max-width: min(78%, 430px) !important;
  padding: 9px 11px 7px !important;
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 19px 19px 19px 7px !important;
  background: var(--d48-chat-surface) !important;
  color: var(--d48-chat-ink) !important;
  box-shadow:
    0 4px 14px
    rgba(52, 36, 31, .035) !important;
}

.date48-chat-message.is-mine > div,
.date48-chat-message.is-mine .date48-chat-bubble {
  border-color: #e7d3d8 !important;
  border-radius: 19px 19px 7px 19px !important;
  background: var(--d48-chat-wine-soft) !important;
  color: var(--d48-chat-ink) !important;
  box-shadow: none !important;
}

.date48-chat-message p {
  margin: 0 !important;
  color: inherit !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

.date48-chat-message small {
  margin-top: 4px !important;
  color: var(--d48-chat-muted) !important;
  font-size: 9px !important;
}

.date48-chat-message.is-mine small {
  color: rgba(91, 66, 71, .56) !important;
}


/* ---------- photo ---------- */

.date48-chat-bubble.has-photo {
  overflow: hidden !important;
  padding: 4px !important;
}

.date48-chat-photo-bubble {
  overflow: hidden !important;
  border-radius: 16px !important;
}

.date48-chat-photo-bubble img {
  display: block !important;
  width: 100% !important;
  border-radius: 16px !important;
}


/* ---------- voice ---------- */

.date48-chat-voice-message {
  min-width: 210px !important;
  padding: 1px 0 !important;
}

.date48-chat-voice-player {
  width: 100% !important;
  height: 36px !important;
  accent-color: var(--d48-chat-wine) !important;
}


/* ---------- composer ---------- */

.date48-chat-composer,
.date48-chat-composer--v2 {
  bottom:
    calc(
      66px +
      env(safe-area-inset-bottom)
    ) !important;
  width:
    min(
      calc(100% - 16px),
      680px
    ) !important;
  gap: 5px !important;
  padding: 6px !important;
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 25px !important;
  background:
    rgba(255, 253, 251, .97) !important;
  box-shadow:
    0 10px 30px
    rgba(52, 36, 31, .085) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}

.date48-chat-composer__field {
  border: 1px solid rgba(233, 223, 218, .85) !important;
  border-radius: 20px !important;
  background: var(--d48-chat-soft) !important;
}

.date48-chat-composer textarea,
.date48-chat-composer--v2 textarea {
  min-height: 40px !important;
  color: var(--d48-chat-ink) !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.date48-chat-composer textarea::placeholder {
  color: rgba(83, 69, 64, .42) !important;
}

.date48-chat-composer__attachment,
.date48-chat-composer__emoji,
.date48-chat-composer__voice {
  color: #6f625e !important;
  background: transparent !important;
  box-shadow: none !important;
}

.date48-chat-composer__emoji.is-active {
  color: var(--d48-chat-wine-deep) !important;
  background: var(--d48-chat-wine-soft) !important;
}

.date48-chat-composer__voice.is-recording {
  color: #fff !important;
  background: var(--d48-chat-wine) !important;
}

.date48-chat-composer__send {
  background: var(--d48-chat-wine) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.date48-chat-composer__send:disabled {
  background: #ddd3cf !important;
  color: #fff !important;
  opacity: 1 !important;
}


/* ---------- emoji ---------- */

.date48-chat-emoji-panel {
  bottom:
    calc(
      122px +
      env(safe-area-inset-bottom)
    ) !important;
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 22px !important;
  background:
    rgba(255, 253, 251, .98) !important;
  box-shadow:
    0 12px 36px
    rgba(52, 36, 31, .09) !important;
}


/* ---------- photo preview ---------- */

.date48-chat-photo-preview {
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 22px !important;
  background:
    rgba(255, 253, 251, .98) !important;
  box-shadow:
    0 12px 36px
    rgba(52, 36, 31, .08) !important;
}

.date48-chat-photo-preview__media {
  border-radius: 17px !important;
}


/* ---------- system states ---------- */

.date48-chat-error {
  bottom:
    calc(
      128px +
      env(safe-area-inset-bottom)
    ) !important;
  border-radius: 16px !important;
  background:
    rgba(141, 67, 85, .94) !important;
  box-shadow: none !important;
}

.date48-chat-state {
  border: 1px solid var(--d48-chat-line) !important;
  border-radius: 24px !important;
  background: var(--d48-chat-surface) !important;
  box-shadow:
    0 10px 28px
    rgba(52, 36, 31, .05) !important;
}

.date48-chat-state h1 {
  color: var(--d48-chat-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;
}


/* ---------- mobile ---------- */

@media (max-width: 760px) {

  .date48-chat-thread {
    padding:
      16px
      10px
      32px !important;
  }

  .date48-chat-message > div,
  .date48-chat-message .date48-chat-bubble {
    max-width: 79% !important;
  }

  .date48-chat-composer,
  .date48-chat-composer--v2 {
    width: calc(100% - 14px) !important;
  }

}


/* DATE48 CSS SOURCE 9: /assets/ui-chat-native-link-v1-20260918_005013.css */
.date48-match-row {
  color: inherit !important;
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;
}


/* DATE48 CSS SOURCE 10: /assets/chat-bottom-photo-v1-20260918_020244.css */
/*
 * Date48 chat bottom/composer correction v1
 * Scope: chat only.
 * No JS/backend/API changes.
 */

/*
 * Chat has no bottom navigation.
 * Composer sits directly above the real iPhone safe area.
 */
.date48-chat-page .date48-chat-composer,
.date48-chat-page .date48-chat-composer--v2 {
  bottom:
    max(
      8px,
      env(safe-area-inset-bottom, 0px)
    ) !important;
}


/*
 * Remove the oversized historical reserve
 * that existed for the global bottom navigation.
 */
.date48-chat-page {
  padding-bottom:
    calc(
      92px +
      env(safe-area-inset-bottom, 0px)
    ) !important;
}


/*
 * Selected photo is a small preview,
 * not a second composer/card.
 */
.date48-chat-page .date48-chat-photo-preview {
  position:
    fixed !important;

  left:
    auto !important;

  right:
    14px !important;

  bottom:
    calc(
      max(
        8px,
        env(safe-area-inset-bottom, 0px)
      )
      + 58px
    ) !important;

  z-index:
    43 !important;

  box-sizing:
    border-box !important;

  width:
    76px !important;

  max-width:
    76px !important;

  min-width:
    76px !important;

  min-height:
    0 !important;

  height:
    auto !important;

  margin:
    0 !important;

  padding:
    4px !important;

  display:
    block !important;

  border-radius:
    18px !important;

  overflow:
    visible !important;
}


.date48-chat-page
.date48-chat-photo-preview__media {
  position:
    relative !important;

  width:
    66px !important;

  min-width:
    66px !important;

  max-width:
    66px !important;

  height:
    66px !important;

  min-height:
    66px !important;

  max-height:
    66px !important;

  border-radius:
    14px !important;

  overflow:
    hidden !important;
}


.date48-chat-page
.date48-chat-photo-preview__media img {
  display:
    block !important;

  width:
    100% !important;

  height:
    100% !important;

  object-fit:
    cover !important;
}


.date48-chat-page
.date48-chat-photo-preview__media > button {
  position:
    absolute !important;

  top:
    3px !important;

  right:
    3px !important;

  width:
    24px !important;

  min-width:
    24px !important;

  height:
    24px !important;

  min-height:
    24px !important;

  margin:
    0 !important;

  padding:
    0 !important;

  display:
    grid !important;

  place-items:
    center !important;

  border:
    0 !important;

  border-radius:
    999px !important;

  background:
    rgba(36, 25, 29, .86) !important;

  color:
    #fff !important;

  font-size:
    17px !important;

  line-height:
    1 !important;
}


/* Never show the old "Фото готово / N КБ" copy. */
.date48-chat-page
.date48-chat-photo-preview__copy {
  display:
    none !important;
}


/*
 * Emoji sheet follows the newly lowered composer,
 * instead of keeping the old nav-sized offset.
 */
.date48-chat-page .date48-chat-emoji-panel {
  bottom:
    calc(
      max(
        8px,
        env(safe-area-inset-bottom, 0px)
      )
      + 62px
    ) !important;
}


/*
 * Errors also sit above the composer,
 * not above a nonexistent bottom nav.
 */
.date48-chat-page .date48-chat-error {
  bottom:
    calc(
      max(
        8px,
        env(safe-area-inset-bottom, 0px)
      )
      + 66px
    ) !important;
}


@media (max-width: 430px) {
  .date48-chat-page
  .date48-chat-photo-preview {
    right:
      10px !important;
  }
}


/* DATE48 CSS SOURCE 11: /assets/voice-explicit-layout-fix-v1-20260918_123600.css */
/*
 * Date48 Voice Explicit Layout Fix V1
 *
 * Recording mode:
 * × | ● Запись 00:00 | ↑
 *
 * No JS changes.
 */


/* Composer becomes one clean row during voice recording. */

.date48-chat-composer:has(
  .date48-chat-voice-recorder.is-recording
) {
  grid-template-columns:
    minmax(0, 1fr) !important;

  overflow:
    visible !important;

  min-height:
    54px !important;
}


/*
 * Hide normal composer controls only while voice recording
 * is active. The recorder itself remains visible.
 */

.date48-chat-composer:has(
  .date48-chat-voice-recorder.is-recording
)
> .date48-chat-composer__attachment,

.date48-chat-composer:has(
  .date48-chat-voice-recorder.is-recording
)
> .date48-chat-composer__emoji,

.date48-chat-composer:has(
  .date48-chat-voice-recorder.is-recording
)
> .date48-chat-composer__field,

.date48-chat-composer:has(
  .date48-chat-voice-recorder.is-recording
)
> .date48-chat-composer__send {
  display:
    none !important;
}


/*
 * Replace the fragile absolute overlay with a real grid row.
 */

.date48-chat-composer
.date48-chat-voice-recorder.is-recording {
  position:
    static !important;

  inset:
    auto !important;

  grid-column:
    1 / -1 !important;

  width:
    100% !important;

  min-width:
    0 !important;

  max-width:
    none !important;

  height:
    42px !important;

  min-height:
    42px !important;

  margin:
    0 !important;

  padding:
    0 !important;

  display:
    grid !important;

  grid-template-columns:
    38px minmax(0, 1fr) 42px !important;

  align-items:
    center !important;

  gap:
    8px !important;

  overflow:
    visible !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  backdrop-filter:
    none !important;

  -webkit-backdrop-filter:
    none !important;

  z-index:
    auto !important;
}


/* Cancel */

.date48-chat-composer
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-cancel {
  display:
    grid !important;

  visibility:
    visible !important;

  opacity:
    1 !important;

  place-items:
    center !important;

  width:
    38px !important;

  min-width:
    38px !important;

  max-width:
    38px !important;

  height:
    38px !important;

  min-height:
    38px !important;

  padding:
    0 !important;

  margin:
    0 !important;

  border:
    1px solid rgba(77, 54, 62, .10) !important;

  border-radius:
    999px !important;

  background:
    #fffdfb !important;

  color:
    #766a66 !important;

  font-size:
    21px !important;

  font-weight:
    400 !important;

  line-height:
    1 !important;

  box-shadow:
    0 4px 14px rgba(55, 25, 39, .05) !important;

  transform:
    none;
}


/* Recording status */

.date48-chat-composer
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-status {
  display:
    flex !important;

  visibility:
    visible !important;

  opacity:
    1 !important;

  align-items:
    center !important;

  justify-content:
    center !important;

  gap:
    7px !important;

  width:
    100% !important;

  min-width:
    0 !important;

  max-width:
    none !important;

  height:
    38px !important;

  padding:
    0 12px !important;

  margin:
    0 !important;

  overflow:
    visible !important;

  white-space:
    nowrap !important;

  border:
    1px solid rgba(163, 79, 98, .10) !important;

  border-radius:
    18px !important;

  background:
    #f8eef0 !important;

  color:
    #76565e !important;

  box-shadow:
    inset 0 1px rgba(255, 255, 255, .72) !important;
}

.date48-chat-composer
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-dot {
  display:
    block !important;

  width:
    7px !important;

  min-width:
    7px !important;

  height:
    7px !important;

  border-radius:
    50% !important;

  background:
    #a34f62 !important;
}

.date48-chat-composer
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-status__label {
  display:
    inline !important;

  visibility:
    visible !important;

  opacity:
    1 !important;

  color:
    #76565e !important;

  font-size:
    12px !important;

  font-weight:
    650 !important;
}

.date48-chat-composer
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-status__time {
  display:
    inline !important;

  visibility:
    visible !important;

  opacity:
    1 !important;

  color:
    #8d4355 !important;

  font-size:
    12px !important;

  font-weight:
    760 !important;

  font-variant-numeric:
    tabular-nums;
}


/* Explicit send */

.date48-chat-composer
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-send {
  display:
    grid !important;

  visibility:
    visible !important;

  opacity:
    1 !important;

  place-items:
    center !important;

  width:
    42px !important;

  min-width:
    42px !important;

  max-width:
    42px !important;

  height:
    42px !important;

  min-height:
    42px !important;

  padding:
    0 !important;

  margin:
    0 !important;

  border:
    0 !important;

  border-radius:
    999px !important;

  background:
    #a34f62 !important;

  color:
    #fff !important;

  font-size:
    22px !important;

  font-weight:
    750 !important;

  line-height:
    1 !important;

  box-shadow:
    0 7px 18px rgba(141, 67, 85, .18) !important;

  transform:
    none;
}


/* Keep the label on narrow iPhones too. */

@media (max-width: 370px) {
  .date48-chat-composer
  .date48-chat-voice-recorder.is-recording
  .date48-chat-voice-status__label {
    display:
      inline !important;
  }

  .date48-chat-composer
  .date48-chat-voice-recorder.is-recording {
    grid-template-columns:
      36px minmax(0, 1fr) 40px !important;

    gap:
      6px !important;
  }

  .date48-chat-composer
  .date48-chat-voice-recorder.is-recording
  .date48-chat-voice-cancel {
    width:
      36px !important;

    min-width:
      36px !important;

    max-width:
      36px !important;

    height:
      36px !important;

    min-height:
      36px !important;
  }

  .date48-chat-composer
  .date48-chat-voice-recorder.is-recording
  .date48-chat-voice-send {
    width:
      40px !important;

    min-width:
      40px !important;

    max-width:
      40px !important;

    height:
      40px !important;

    min-height:
      40px !important;
  }
}


/* DATE48 CSS SOURCE 12: /assets/video-circle-viewport-fix-v1-20260919_030110.css */
/*
 * Date48 video circle viewport fix v1
 *
 * Safari:
 * -webkit-backdrop-filter on the fixed composer creates
 * a containing block for the nested fixed video overlay.
 *
 * While the circle dialog exists, remove those containing-block
 * triggers and raise the composer's stacking context above chat header.
 */

.date48-chat-composer:has(.date48-circle-overlay),
.date48-chat-composer--v2:has(.date48-circle-overlay) {
  z-index: 20050 !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  -webkit-transform: none !important;
  transform: none !important;

  filter: none !important;
  perspective: none !important;
  contain: none !important;

  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.date48-chat-composer:has(.date48-circle-overlay)
.date48-circle-overlay,
.date48-chat-composer--v2:has(.date48-circle-overlay)
.date48-circle-overlay {
  position: fixed !important;

  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;

  inset: 0 !important;

  width: 100vw !important;
  width: 100dvw !important;

  height: 100vh !important;
  height: 100dvh !important;

  min-width: 100vw !important;
  min-width: 100dvw !important;

  min-height: 100vh !important;
  min-height: 100dvh !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;

  z-index: 20060 !important;

  box-sizing: border-box !important;

  overflow: hidden !important;

  background:
    rgba(39, 29, 32, .96) !important;
}

/*
 * Keep preview fully inside small iPhone viewports.
 */
.date48-circle-preview-shell {
  width:
    min(
      76vw,
      330px,
      52dvh
    ) !important;

  max-width:
    calc(
      100dvw - 44px
    ) !important;

  max-height:
    calc(
      100dvh - 230px
    ) !important;

  aspect-ratio: 1 / 1 !important;
}

/*
 * Explicitly keep live/review video visible.
 */
.date48-circle-preview-shell > video {
  width: 100% !important;
  height: 100% !important;

  display: block !important;

  object-fit: cover !important;
}


/* DATE48 CSS SOURCE 13: /assets/video-circle-camera-switch-v1-20260919_031425.css */
.date48-circle-camera-switch {
  position: absolute;
  top: max(18px, env(safe-area-inset-top));
  left: 18px;
  z-index: 20070;

  width: 44px;
  height: 44px;
  padding: 0;

  display: grid;
  place-items: center;

  border: 0;
  border-radius: 999px;

  background: rgba(255, 255, 255, .12);
  color: #fff;

  font-size: 25px;
  font-weight: 400;
  line-height: 1;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.07);

  -webkit-tap-highlight-color:
    transparent;
}

.date48-circle-camera-switch:active {
  transform: scale(.94);
}


/* DATE48 CSS SOURCE 14: /assets/ui-premium-chat-wave1-v1-20260919_032519.css */
/*
 * DATE48
 * Premium Chat Wave 1
 *
 * Visual-only final cascade.
 * Do not alter media recorder/camera mechanics.
 */

.date48-chat-page {
  --d48-chat-bg:
    #f8f4f0;

  --d48-chat-surface:
    rgba(255, 253, 251, .91);

  --d48-chat-surface-solid:
    #fffdfb;

  --d48-chat-soft:
    #f3ece8;

  --d48-chat-ink:
    #2c2320;

  --d48-chat-muted:
    #8e817b;

  --d48-chat-line:
    rgba(88, 64, 57, .095);

  --d48-chat-wine:
    #a34f62;

  --d48-chat-wine-deep:
    #8d4355;

  --d48-chat-wine-soft:
    #f2e4e7;

  color:
    var(--d48-chat-ink) !important;

  background:
    radial-gradient(
      circle at 82% 3%,
      rgba(163, 79, 98, .07),
      transparent 26%
    ),
    radial-gradient(
      circle at 8% 42%,
      rgba(204, 169, 151, .10),
      transparent 28%
    ),
    linear-gradient(
      180deg,
      #fbf8f5 0%,
      var(--d48-chat-bg) 46%,
      #f7f2ee 100%
    ) !important;
}


/* =========================================================
   HEADER
   ========================================================= */

.date48-chat-page .date48-chat-head {
  min-height:
    70px !important;

  padding:
    max(8px, env(safe-area-inset-top))
    max(12px, env(safe-area-inset-right))
    8px
    max(12px, env(safe-area-inset-left)) !important;

  background:
    rgba(251, 248, 245, .88) !important;

  border-bottom:
    1px solid
    rgba(69, 49, 43, .07) !important;

  -webkit-backdrop-filter:
    blur(24px)
    saturate(1.08) !important;

  backdrop-filter:
    blur(24px)
    saturate(1.08) !important;

  box-shadow:
    0 10px 32px
    rgba(45, 31, 27, .035) !important;
}

.date48-chat-page
.date48-chat-head__back,
.date48-chat-page
.date48-chat-head__date {
  width:
    39px !important;

  height:
    39px !important;

  color:
    #5e4945 !important;

  background:
    rgba(255, 253, 251, .72) !important;

  border:
    1px solid
    rgba(82, 57, 52, .075) !important;

  box-shadow:
    0 6px 18px
    rgba(53, 34, 29, .045),
    inset 0 1px
    rgba(255, 255, 255, .9) !important;
}

.date48-chat-page
.date48-chat-head__back {
  font-weight:
    300 !important;
}

.date48-chat-page
.date48-chat-head__date {
  color:
    var(--d48-chat-wine) !important;

  font-size:
    12px !important;

  letter-spacing:
    -.02em !important;

  font-weight:
    850 !important;
}

.date48-chat-page
.date48-chat-person {
  gap:
    11px !important;

  padding:
    0 7px !important;
}

.date48-chat-page
.date48-chat-person__avatar {
  flex-basis:
    44px !important;

  width:
    44px !important;

  height:
    44px !important;

  background:
    linear-gradient(
      145deg,
      #eadbd6,
      #f8eeea
    ) !important;

  border:
    2px solid
    rgba(255, 255, 255, .92) !important;

  box-shadow:
    0 7px 18px
    rgba(75, 43, 50, .10) !important;
}

.date48-chat-page
.date48-chat-person__copy strong {
  color:
    #2a201d !important;

  font-size:
    15px !important;

  font-weight:
    800 !important;

  letter-spacing:
    -.025em !important;
}

.date48-chat-page
.date48-chat-person__copy small {
  color:
    var(--d48-chat-wine) !important;

  margin-top:
    3px !important;

  font-size:
    10.5px !important;

  font-weight:
    700 !important;

  letter-spacing:
    .01em !important;
}


/* =========================================================
   THREAD
   ========================================================= */

.date48-chat-page
.date48-chat-thread {
  width:
    min(100%, 720px) !important;

  padding-top:
    20px !important;

  padding-bottom:
    32px !important;
}

.date48-chat-page
.date48-chat-intro {
  width:
    min(100%, 300px) !important;

  margin:
    3px auto 30px !important;
}

.date48-chat-page
.date48-chat-intro > span {
  width:
    38px !important;

  height:
    38px !important;

  margin-bottom:
    11px !important;

  color:
    var(--d48-chat-wine) !important;

  background:
    rgba(163, 79, 98, .075) !important;

  border:
    1px solid
    rgba(163, 79, 98, .075) !important;

  font-size:
    14px !important;
}

.date48-chat-page
.date48-chat-intro strong {
  color:
    #332522 !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    18px !important;

  font-weight:
    500 !important;

  letter-spacing:
    -.025em !important;
}

.date48-chat-page
.date48-chat-intro p {
  color:
    rgba(55, 42, 38, .49) !important;

  max-width:
    275px !important;

  margin:
    6px auto 0 !important;

  font-size:
    12px !important;

  line-height:
    1.48 !important;
}


/* =========================================================
   TEXT BUBBLES
   ========================================================= */

.date48-chat-page
.date48-chat-message {
  margin:
    5px 0 !important;
}

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble {
  color:
    #312622 !important;

  max-width:
    min(80%, 430px) !important;

  padding:
    10px 13px 7px !important;

  background:
    rgba(255, 253, 251, .92) !important;

  border:
    1px solid
    rgba(78, 54, 48, .075) !important;

  border-radius:
    19px 19px 19px 7px !important;

  box-shadow:
    0 7px 20px
    rgba(54, 35, 30, .05),
    inset 0 1px
    rgba(255, 255, 255, .82) !important;
}

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble {
  color:
    #fffaf8 !important;

  background:
    linear-gradient(
      145deg,
      var(--d48-chat-wine)
      0%,
      var(--d48-chat-wine-deep)
      100%
    ) !important;

  border:
    1px solid
    rgba(113, 44, 60, .16) !important;

  border-radius:
    19px 19px 7px 19px !important;

  box-shadow:
    0 8px 22px
    rgba(120, 58, 72, .16),
    inset 0 1px
    rgba(255, 255, 255, .13) !important;
}

.date48-chat-page
.date48-chat-message p {
  margin:
    0 !important;

  font-size:
    14.5px !important;

  font-weight:
    450 !important;

  letter-spacing:
    -.008em !important;

  line-height:
    1.42 !important;
}

.date48-chat-page
.date48-chat-message small {
  margin-top:
    4px !important;

  color:
    rgba(55, 41, 37, .40) !important;

  font-size:
    9px !important;

  font-weight:
    620 !important;

  font-variant-numeric:
    tabular-nums !important;
}

.date48-chat-page
.date48-chat-message.is-mine small {
  color:
    rgba(255, 250, 248, .60) !important;
}


/* =========================================================
   PHOTO
   ========================================================= */

.date48-chat-page
.date48-chat-bubble.has-photo {
  padding:
    5px !important;

  overflow:
    hidden !important;
}

.date48-chat-page
.date48-chat-photo-bubble {
  border-radius:
    16px !important;

  background:
    #ede4e0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(58, 40, 35, .05) !important;
}

.date48-chat-page
.date48-chat-photo-bubble img {
  border-radius:
    16px !important;
}


/* =========================================================
   VOICE PLAYER
   ========================================================= */

.date48-chat-page
.date48-chat-voice-message {
  width:
    min(285px, 74vw) !important;

  padding:
    2px 0 !important;
}

.date48-chat-page
.date48-chat-voice-shell {
  gap:
    10px !important;
}

.date48-chat-page
.date48-chat-voice-play {
  width:
    38px !important;

  height:
    38px !important;

  color:
    var(--d48-chat-wine-deep) !important;

  background:
    rgba(255, 253, 251, .78) !important;

  border:
    1px solid
    rgba(102, 68, 72, .07) !important;

  box-shadow:
    0 5px 14px
    rgba(61, 39, 41, .06),
    inset 0 1px
    rgba(255, 255, 255, .76) !important;
}

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-play {
  color:
    #8b4657 !important;

  background:
    rgba(255, 250, 248, .94) !important;
}

.date48-chat-page
.date48-chat-voice-track
input[type="range"] {
  accent-color:
    var(--d48-chat-wine) !important;
}

.date48-chat-page
.date48-chat-voice-track span {
  color:
    var(--d48-chat-muted) !important;

  font-size:
    9px !important;
}

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-track span {
  color:
    rgba(255, 250, 248, .68) !important;
}

.date48-chat-page
.date48-chat-voice-speed {
  color:
    #755d61 !important;

  font-size:
    10px !important;
}

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-speed {
  color:
    rgba(255, 250, 248, .76) !important;
}


/* =========================================================
   VIDEO CIRCLE MESSAGE ONLY
   fullscreen recorder overlay intentionally untouched
   ========================================================= */

.date48-chat-page
.date48-chat-bubble.has-circle {
  padding:
    5px !important;

  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;
}

.date48-chat-page
.date48-chat-circle-media {
  width:
    min(220px, 58vw) !important;

  border:
    3px solid
    rgba(255, 253, 251, .96) !important;

  background:
    #241b1d !important;

  box-shadow:
    0 16px 38px
    rgba(54, 33, 38, .19),
    0 0 0 1px
    rgba(57, 39, 43, .055) !important;
}

.date48-chat-page
.date48-chat-circle-play {
  background:
    rgba(31, 23, 25, .60) !important;

  border:
    1px solid
    rgba(255, 255, 255, .26) !important;

  -webkit-backdrop-filter:
    blur(12px) !important;

  backdrop-filter:
    blur(12px) !important;
}

.date48-chat-page
.date48-chat-circle-duration {
  background:
    rgba(28, 20, 22, .62) !important;

  border:
    1px solid
    rgba(255, 255, 255, .12) !important;

  -webkit-backdrop-filter:
    blur(10px) !important;

  backdrop-filter:
    blur(10px) !important;
}

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle
> small {
  padding:
    3px 4px 0 !important;

  color:
    rgba(57, 43, 40, .48) !important;
}


/* =========================================================
   COMPOSER
   Geometry/grid intentionally preserved.
   ========================================================= */

.date48-chat-page
.date48-chat-composer,
.date48-chat-page
.date48-chat-composer--v2 {
  background:
    rgba(255, 253, 251, .92) !important;

  border:
    1px solid
    rgba(78, 55, 49, .08) !important;

  border-radius:
    27px !important;

  box-shadow:
    0 16px 42px
    rgba(53, 34, 29, .105),
    inset 0 1px
    rgba(255, 255, 255, .92) !important;

  -webkit-backdrop-filter:
    blur(24px)
    saturate(1.08) !important;

  backdrop-filter:
    blur(24px)
    saturate(1.08) !important;
}

.date48-chat-page
.date48-chat-composer__field {
  background:
    rgba(242, 235, 231, .72) !important;

  border:
    1px solid
    rgba(79, 56, 50, .055) !important;

  border-radius:
    21px !important;

  box-shadow:
    inset 0 1px
    rgba(255, 255, 255, .58) !important;
}

.date48-chat-page
.date48-chat-composer textarea,
.date48-chat-page
.date48-chat-composer--v2 textarea {
  color:
    #302521 !important;

  font-size:
    14px !important;

  font-weight:
    450 !important;
}

.date48-chat-page
.date48-chat-composer textarea::placeholder {
  color:
    rgba(73, 55, 50, .37) !important;
}

.date48-chat-page
.date48-chat-composer__attachment,
.date48-chat-page
.date48-chat-composer__emoji,
.date48-chat-page
.date48-chat-composer__circle,
.date48-chat-page
.date48-chat-composer__voice {
  color:
    #74555a !important;

  background:
    rgba(255, 253, 251, .60) !important;

  border:
    1px solid
    rgba(88, 62, 60, .065) !important;

  box-shadow:
    none !important;
}

.date48-chat-page
.date48-chat-composer__emoji.is-active {
  color:
    var(--d48-chat-wine) !important;

  background:
    var(--d48-chat-wine-soft) !important;
}

.date48-chat-page
.date48-chat-composer__send {
  color:
    #fff !important;

  background:
    linear-gradient(
      145deg,
      #aa5366,
      #8f4254
    ) !important;

  border:
    1px solid
    rgba(110, 45, 61, .10) !important;

  box-shadow:
    0 7px 17px
    rgba(127, 56, 72, .20),
    inset 0 1px
    rgba(255, 255, 255, .15) !important;
}

.date48-chat-page
.date48-chat-composer__send:disabled {
  opacity:
    .27 !important;

  box-shadow:
    none !important;
}


/* =========================================================
   RECORDING — visual only, layout untouched
   ========================================================= */

.date48-chat-page
.date48-chat-voice-recorder.is-recording {
  color:
    #3b2b2c !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-cancel {
  color:
    #75595e !important;

  background:
    rgba(255, 253, 251, .72) !important;

  border-color:
    rgba(92, 65, 64, .07) !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-dot {
  background:
    #b45162 !important;

  box-shadow:
    0 0 0 5px
    rgba(180, 81, 98, .10) !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-status__label {
  color:
    #6f5858 !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-status__time {
  color:
    #382c2b !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-send {
  color:
    #fff !important;

  background:
    linear-gradient(
      145deg,
      #aa5366,
      #8d4355
    ) !important;

  box-shadow:
    0 7px 18px
    rgba(128, 57, 73, .20) !important;
}


/* =========================================================
   EMOJI / PHOTO PREVIEW / ERROR
   ========================================================= */

.date48-chat-page
.date48-chat-emoji-panel {
  background:
    rgba(255, 253, 251, .96) !important;

  border:
    1px solid
    rgba(78, 55, 49, .08) !important;

  border-radius:
    25px !important;

  box-shadow:
    0 22px 55px
    rgba(53, 33, 29, .13) !important;

  -webkit-backdrop-filter:
    blur(26px)
    saturate(1.08) !important;

  backdrop-filter:
    blur(26px)
    saturate(1.08) !important;
}

.date48-chat-page
.date48-chat-photo-preview {
  background:
    rgba(255, 253, 251, .95) !important;

  border:
    1px solid
    rgba(78, 55, 49, .08) !important;

  box-shadow:
    0 16px 42px
    rgba(53, 33, 29, .12) !important;
}

.date48-chat-page
.date48-chat-photo-preview__copy strong {
  color:
    #382a27 !important;
}

.date48-chat-page
.date48-chat-photo-preview__copy small {
  color:
    var(--d48-chat-muted) !important;
}

.date48-chat-page
.date48-chat-error {
  background:
    rgba(116, 42, 60, .94) !important;

  border:
    1px solid
    rgba(255, 255, 255, .12) !important;

  border-radius:
    17px !important;

  box-shadow:
    0 13px 35px
    rgba(91, 35, 49, .20) !important;
}


/* =========================================================
   SMALL IPHONE TUNING
   ========================================================= */

@media (max-width: 430px) {

  .date48-chat-page
  .date48-chat-thread {
    padding-left:
      max(
        11px,
        env(safe-area-inset-left)
      ) !important;

    padding-right:
      max(
        11px,
        env(safe-area-inset-right)
      ) !important;
  }

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble {
    max-width:
      83% !important;
  }

  .date48-chat-page
  .date48-chat-person__avatar {
    flex-basis:
      42px !important;

    width:
      42px !important;

    height:
      42px !important;
  }
}


/* DATE48 CSS SOURCE 15: /assets/ui-clean-glass-chat-v1-20260919_035621.css */
/*
 * DATE48 — Clean Glass Chat V1
 * Approved visual direction.
 *
 * VISUAL ONLY.
 * Do not touch recorder/camera/voice mechanics.
 */

html,
body {
  overflow-x: hidden !important;
}

.date48-chat-page {
  --cg-bg: #faf7f4;
  --cg-glass: rgba(255, 255, 255, .46);
  --cg-glass-strong: rgba(255, 255, 255, .62);
  --cg-line: rgba(255, 255, 255, .78);
  --cg-line-dark: rgba(84, 61, 57, .07);
  --cg-ink: #2c2422;
  --cg-muted: #918581;
  --cg-wine: #a54e62;
  --cg-wine-deep: #8f4255;

  width: 100% !important;
  max-width: 100vw !important;
  overflow-x: hidden !important;

  color: var(--cg-ink) !important;

  background:
    radial-gradient(
      circle at 14% 28%,
      rgba(197, 168, 156, .09),
      transparent 31%
    ),
    radial-gradient(
      circle at 88% 68%,
      rgba(163, 79, 98, .055),
      transparent 27%
    ),
    linear-gradient(
      180deg,
      #fcfaf8 0%,
      #f8f4f1 100%
    ) !important;
}


/* =========================================================
   HEADER — ONE GLASS PANEL
   ========================================================= */

.date48-chat-page .date48-chat-head {
  width:
    calc(
      100% - 24px
    ) !important;

  max-width:
    760px !important;

  margin:
    8px auto 0 !important;

  padding:
    max(8px, env(safe-area-inset-top))
    10px
    8px !important;

  background:
    rgba(255, 255, 255, .48) !important;

  border:
    1px solid
    rgba(255, 255, 255, .72) !important;

  border-radius:
    26px !important;

  box-shadow:
    0 12px 34px
    rgba(55, 38, 33, .055),
    inset 0 1px
    rgba(255, 255, 255, .78) !important;

  -webkit-backdrop-filter:
    blur(22px)
    saturate(1.05) !important;

  backdrop-filter:
    blur(22px)
    saturate(1.05) !important;
}

.date48-chat-page
.date48-chat-head__back,
.date48-chat-page
.date48-chat-head__date {
  width:
    42px !important;

  height:
    42px !important;

  flex:
    0 0 42px !important;

  background:
    rgba(255, 255, 255, .34) !important;

  border:
    1px solid
    rgba(255, 255, 255, .74) !important;

  box-shadow:
    0 5px 14px
    rgba(60, 42, 37, .035),
    inset 0 1px
    rgba(255, 255, 255, .72) !important;

  color:
    #61464b !important;
}

.date48-chat-page
.date48-chat-head__date {
  color:
    var(--cg-wine) !important;

  font-weight:
    800 !important;
}

.date48-chat-page
.date48-chat-person {
  min-width:
    0 !important;

  overflow:
    hidden !important;

  gap:
    10px !important;
}

.date48-chat-page
.date48-chat-person__avatar {
  width:
    44px !important;

  height:
    44px !important;

  flex:
    0 0 44px !important;

  border:
    2px solid
    rgba(255, 255, 255, .88) !important;

  box-shadow:
    0 5px 13px
    rgba(66, 44, 40, .075) !important;
}

.date48-chat-page
.date48-chat-person__copy {
  min-width:
    0 !important;
}

.date48-chat-page
.date48-chat-person__copy strong {
  color:
    #2c2422 !important;

  font-size:
    16px !important;

  font-weight:
    800 !important;

  letter-spacing:
    -.025em !important;
}

.date48-chat-page
.date48-chat-person__copy small {
  color:
    var(--cg-wine) !important;

  margin-top:
    2px !important;

  font-size:
    11px !important;

  font-weight:
    700 !important;
}


/* =========================================================
   THREAD WIDTH — HARD OVERFLOW FIX
   ========================================================= */

.date48-chat-page
.date48-chat-thread {
  width:
    100% !important;

  max-width:
    760px !important;

  margin:
    0 auto !important;

  padding:
    18px
    max(12px, env(safe-area-inset-right))
    30px
    max(12px, env(safe-area-inset-left)) !important;

  box-sizing:
    border-box !important;

  overflow-x:
    hidden !important;
}

.date48-chat-page
.date48-chat-message {
  width:
    100% !important;

  max-width:
    100% !important;

  min-width:
    0 !important;

  box-sizing:
    border-box !important;

  margin:
    5px 0 !important;

  overflow:
    visible !important;
}

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble {
  width:
    fit-content !important;

  max-width:
    min(78%, 430px) !important;

  min-width:
    0 !important;

  box-sizing:
    border-box !important;

  overflow:
    hidden !important;

  color:
    var(--cg-ink) !important;

  background:
    rgba(255, 255, 255, .43) !important;

  border:
    1px solid
    rgba(255, 255, 255, .78) !important;

  border-radius:
    20px !important;

  box-shadow:
    0 8px 24px
    rgba(57, 39, 35, .045),
    inset 0 1px
    rgba(255, 255, 255, .76) !important;

  -webkit-backdrop-filter:
    blur(18px)
    saturate(1.03) !important;

  backdrop-filter:
    blur(18px)
    saturate(1.03) !important;
}

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble {
  color:
    #38292d !important;

  background:
    linear-gradient(
      145deg,
      rgba(181, 107, 123, .16),
      rgba(163, 79, 98, .09)
    ) !important;

  border:
    1px solid
    rgba(255, 255, 255, .74) !important;

  box-shadow:
    0 9px 25px
    rgba(91, 52, 61, .055),
    inset 0 1px
    rgba(255, 255, 255, .72) !important;
}

.date48-chat-page
.date48-chat-message p {
  color:
    inherit !important;

  font-size:
    14.5px !important;

  line-height:
    1.42 !important;
}

.date48-chat-page
.date48-chat-message small {
  color:
    rgba(63, 49, 46, .48) !important;

  font-size:
    9px !important;
}

.date48-chat-page
.date48-chat-message.is-mine small {
  color:
    rgba(98, 57, 67, .64) !important;
}


/* =========================================================
   VOICE — GLASS, NOT CANDY
   ========================================================= */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  width:
    min(78%, 430px) !important;

  max-width:
    min(78%, 430px) !important;

  padding:
    9px 11px 7px !important;

  background:
    rgba(255, 255, 255, .41) !important;

  border:
    1px solid
    rgba(255, 255, 255, .76) !important;

  box-shadow:
    0 8px 22px
    rgba(57, 39, 35, .045),
    inset 0 1px
    rgba(255, 255, 255, .72) !important;
}

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, .45),
      rgba(174, 104, 119, .10)
    ) !important;

  border:
    1px solid
    rgba(255, 255, 255, .78) !important;
}

.date48-chat-page
.date48-chat-voice-message {
  width:
    100% !important;

  max-width:
    100% !important;

  min-width:
    0 !important;
}

.date48-chat-page
.date48-chat-voice-shell {
  width:
    100% !important;

  max-width:
    100% !important;

  min-width:
    0 !important;

  gap:
    9px !important;
}

.date48-chat-page
.date48-chat-voice-play {
  width:
    36px !important;

  height:
    36px !important;

  flex:
    0 0 36px !important;

  color:
    var(--cg-wine-deep) !important;

  background:
    rgba(255, 255, 255, .46) !important;

  border:
    1px solid
    rgba(255, 255, 255, .76) !important;

  box-shadow:
    none !important;
}

.date48-chat-page
.date48-chat-voice-track {
  flex:
    1 1 auto !important;

  min-width:
    0 !important;

  width:
    auto !important;
}

.date48-chat-page
.date48-chat-voice-track
input[type="range"] {
  width:
    100% !important;

  max-width:
    100% !important;

  accent-color:
    var(--cg-wine) !important;
}

.date48-chat-page
.date48-chat-voice-track span {
  color:
    var(--cg-muted) !important;

  font-size:
    9px !important;
}

.date48-chat-page
.date48-chat-voice-speed {
  flex:
    0 0 auto !important;

  color:
    var(--cg-wine-deep) !important;

  font-size:
    10px !important;
}


/* =========================================================
   PHOTO
   ========================================================= */

.date48-chat-page
.date48-chat-bubble.has-photo {
  max-width:
    min(74%, 360px) !important;

  padding:
    4px !important;

  background:
    rgba(255, 255, 255, .34) !important;
}


/* =========================================================
   VIDEO CIRCLE — NO HEAVY SQUARE BACKPLATE
   ========================================================= */

.date48-chat-page
.date48-chat-bubble.has-circle {
  width:
    auto !important;

  max-width:
    min(72vw, 310px) !important;

  padding:
    0 !important;

  margin:
    2px 0 !important;

  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;

  overflow:
    visible !important;

  -webkit-backdrop-filter:
    none !important;

  backdrop-filter:
    none !important;
}

.date48-chat-page
.date48-chat-circle-media {
  width:
    min(58vw, 255px) !important;

  max-width:
    255px !important;

  aspect-ratio:
    1 / 1 !important;

  margin:
    0 !important;

  border:
    2px solid
    rgba(255, 255, 255, .82) !important;

  background:
    rgba(255, 255, 255, .18) !important;

  box-shadow:
    0 12px 28px
    rgba(67, 45, 42, .08),
    0 0 0 1px
    rgba(165, 78, 98, .16) !important;
}

.date48-chat-page
.date48-chat-circle-play {
  width:
    52px !important;

  height:
    52px !important;

  background:
    rgba(55, 39, 42, .66) !important;

  border:
    1px solid
    rgba(255, 255, 255, .34) !important;

  box-shadow:
    0 6px 16px
    rgba(31, 20, 22, .16) !important;
}

.date48-chat-page
.date48-chat-circle-duration {
  background:
    rgba(42, 31, 33, .68) !important;

  border:
    1px solid
    rgba(255, 255, 255, .24) !important;

  color:
    #fff !important;
}


/* =========================================================
   COMPOSER — ONE SHARED GLASS DOCK
   ========================================================= */

.date48-chat-page
.date48-chat-composer,
.date48-chat-page
.date48-chat-composer--v2 {
  width:
    calc(
      100% - 20px
    ) !important;

  max-width:
    760px !important;

  box-sizing:
    border-box !important;

  margin-left:
    auto !important;

  margin-right:
    auto !important;

  background:
    rgba(255, 255, 255, .48) !important;

  border:
    1px solid
    rgba(255, 255, 255, .78) !important;

  border-radius:
    27px !important;

  box-shadow:
    0 14px 38px
    rgba(56, 38, 34, .07),
    inset 0 1px
    rgba(255, 255, 255, .80) !important;

  -webkit-backdrop-filter:
    blur(24px)
    saturate(1.05) !important;

  backdrop-filter:
    blur(24px)
    saturate(1.05) !important;

  overflow:
    hidden !important;
}


/* remove individual pads under utility icons */

.date48-chat-page
.date48-chat-composer__attachment,
.date48-chat-page
.date48-chat-composer__emoji,
.date48-chat-page
.date48-chat-composer__circle,
.date48-chat-page
.date48-chat-composer__voice {
  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;

  border-radius:
    0 !important;

  color:
    #67494f !important;
}


/* no candy active emoji chip */

.date48-chat-page
.date48-chat-composer__emoji.is-active {
  background:
    transparent !important;

  color:
    var(--cg-wine) !important;

  box-shadow:
    none !important;
}


/* integrated message field */

.date48-chat-page
.date48-chat-composer__field {
  min-width:
    0 !important;

  flex:
    1 1 auto !important;

  background:
    rgba(255, 255, 255, .26) !important;

  border:
    1px solid
    rgba(91, 67, 61, .055) !important;

  border-radius:
    20px !important;

  box-shadow:
    inset 0 1px
    rgba(255, 255, 255, .52) !important;
}

.date48-chat-page
.date48-chat-composer textarea,
.date48-chat-page
.date48-chat-composer--v2 textarea {
  min-width:
    0 !important;

  width:
    100% !important;

  color:
    #302724 !important;

  background:
    transparent !important;
}

.date48-chat-page
.date48-chat-composer textarea::placeholder {
  color:
    rgba(72, 58, 54, .42) !important;
}


/* send is the only filled accent */

.date48-chat-page
.date48-chat-composer__send {
  width:
    43px !important;

  height:
    43px !important;

  flex:
    0 0 43px !important;

  color:
    #fff !important;

  background:
    linear-gradient(
      145deg,
      #b66074,
      #94475a
    ) !important;

  border:
    1px solid
    rgba(255, 255, 255, .34) !important;

  border-radius:
    999px !important;

  box-shadow:
    0 7px 18px
    rgba(126, 61, 77, .17),
    inset 0 1px
    rgba(255, 255, 255, .22) !important;
}

.date48-chat-page
.date48-chat-composer__send:disabled {
  opacity:
    .42 !important;
}


/* =========================================================
   SMALL TEXT MESSAGES
   ========================================================= */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:not(.has-photo):not(.has-circle)
p {
  position:
    relative !important;
  z-index:
    1 !important;
}


/* =========================================================
   PRESERVE RECORDING LAYOUT
   only recolor, never resize
   ========================================================= */

.date48-chat-page
.date48-chat-voice-recorder.is-recording {
  color:
    #3b2b2d !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-cancel {
  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;

  color:
    #71545a !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-dot {
  background:
    var(--cg-wine) !important;
}

.date48-chat-page
.date48-chat-voice-recorder.is-recording
.date48-chat-voice-send {
  color:
    #fff !important;

  background:
    linear-gradient(
      145deg,
      #b66074,
      #94475a
    ) !important;
}


/* =========================================================
   HARD MOBILE WIDTH GUARDS
   ========================================================= */

@media (max-width: 430px) {

  .date48-chat-page
  .date48-chat-thread {
    padding-left:
      max(10px, env(safe-area-inset-left)) !important;

    padding-right:
      max(10px, env(safe-area-inset-right)) !important;
  }

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble {
    max-width:
      82% !important;
  }

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble:has(.date48-chat-voice-message) {
    width:
      82% !important;

    max-width:
      82% !important;
  }

  .date48-chat-page
  .date48-chat-bubble.has-circle {
    max-width:
      68vw !important;
  }

  .date48-chat-page
  .date48-chat-circle-media {
    width:
      min(60vw, 245px) !important;
  }

  .date48-chat-page
  .date48-chat-composer,
  .date48-chat-page
  .date48-chat-composer--v2 {
    width:
      calc(100% - 16px) !important;

    max-width:
      calc(100% - 16px) !important;

    left:
      8px !important;

    right:
      8px !important;

    box-sizing:
      border-box !important;
  }
}


/* DATE48 CSS SOURCE 16: /assets/ui-clean-glass-geometryfix-v1-20260919_040632.css */
/*
 * DATE48 — Clean Glass Geometry Fix V1
 *
 * 1. Restore sticky chat header on iOS.
 * 2. Lock video-circle geometry inside viewport.
 *
 * Visual geometry only.
 */


/* =========================================================
   STICKY / HORIZONTAL CLIPPING
   ========================================================= */

/*
 * overflow-x:hidden on the page created a scrolling
 * container in Safari and broke sticky positioning.
 *
 * clip prevents horizontal paint overflow without
 * establishing a scrolling container.
 */

html,
body {
  max-width: 100% !important;
  overflow-x: clip !important;
}

.date48-chat-page {
  width: 100% !important;
  max-width: 100% !important;

  overflow-x: clip !important;
  overflow-y: visible !important;
}


/* explicit sticky contract */

.date48-chat-page
.date48-chat-head {
  position: sticky !important;

  top: 0 !important;

  left: auto !important;
  right: auto !important;

  z-index: 1200 !important;

  width: calc(100% - 24px) !important;
  max-width: 760px !important;

  margin-left: auto !important;
  margin-right: auto !important;

  box-sizing: border-box !important;

  transform: none !important;
}


/* Keep messages under the floating/sticky header cleanly */

.date48-chat-page
.date48-chat-thread {
  position: relative !important;

  width: 100% !important;
  max-width: 760px !important;

  margin-left: auto !important;
  margin-right: auto !important;

  box-sizing: border-box !important;

  overflow-x: clip !important;
}


/* =========================================================
   VIDEO CIRCLE — GEOMETRY LOCK
   ========================================================= */

/*
 * The message row itself owns alignment.
 * Bubble and media use exactly the same width.
 */

.date48-chat-page
.date48-chat-message.is-mine:has(.date48-chat-circle-media) {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: flex-start !important;

  width: 100% !important;
  max-width: 100% !important;

  padding-left: 12px !important;
  padding-right: 0 !important;

  box-sizing: border-box !important;

  overflow: visible !important;
}


/* remove any inherited oversized bubble geometry */

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.has-circle {
  display: block !important;

  width: min(58vw, 240px) !important;
  max-width: calc(100vw - 32px) !important;

  min-width: 0 !important;

  margin-left: auto !important;
  margin-right: 0 !important;

  padding: 0 !important;

  box-sizing: border-box !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;

  overflow: visible !important;

  transform: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* circle can never exceed the bubble */

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-bubble.has-circle
.date48-chat-circle-media {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  height: auto !important;

  aspect-ratio: 1 / 1 !important;

  margin: 0 !important;

  box-sizing: border-box !important;

  transform: none !important;

  border-radius: 999px !important;

  overflow: hidden !important;
}


/* time/meta stays with the circle instead of widening the row */

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.has-circle
> small {
  display: block !important;

  width: auto !important;
  max-width: 100% !important;

  margin-top: 5px !important;

  padding: 0 4px !important;

  text-align: right !important;

  box-sizing: border-box !important;
}


/* =========================================================
   IPHONE WIDTH
   ========================================================= */

@media (max-width: 430px) {

  .date48-chat-page
  .date48-chat-head {
    width: calc(100% - 16px) !important;

    margin-left: 8px !important;
    margin-right: 8px !important;
  }

  .date48-chat-page
  .date48-chat-message.is-mine
  > .date48-chat-bubble.has-circle {
    width: min(56vw, 232px) !important;

    max-width: calc(100vw - 28px) !important;
  }

  .date48-chat-page
  .date48-chat-thread {
    width: 100% !important;

    max-width: 100% !important;

    overflow-x: clip !important;
  }
}


/* DATE48 CSS SOURCE 17: /assets/ui-clean-glass-v2-polish-20260919_041027.css */
/*
 * DATE48 — Clean Glass V2 Polish
 * Visual-only layer.
 */


/* =========================================
   HEADER — lighter / slimmer
   ========================================= */

.date48-chat-page
.date48-chat-head {
  min-height: 62px !important;

  padding:
    max(6px, env(safe-area-inset-top))
    9px
    6px !important;

  background:
    rgba(255,255,255,.39) !important;

  border:
    1px solid
    rgba(255,255,255,.66) !important;

  box-shadow:
    0 8px 25px
    rgba(53,38,34,.038),
    inset 0 1px
    rgba(255,255,255,.72) !important;

  -webkit-backdrop-filter:
    blur(22px)
    saturate(1.03) !important;

  backdrop-filter:
    blur(22px)
    saturate(1.03) !important;
}

.date48-chat-page
.date48-chat-head__back,
.date48-chat-page
.date48-chat-head__date {
  width: 38px !important;
  height: 38px !important;
  flex-basis: 38px !important;

  background:
    rgba(255,255,255,.26) !important;

  border:
    1px solid
    rgba(255,255,255,.64) !important;

  box-shadow:
    none !important;
}

.date48-chat-page
.date48-chat-person__avatar {
  width: 40px !important;
  height: 40px !important;
  flex-basis: 40px !important;
}

.date48-chat-page
.date48-chat-person__copy strong {
  font-size: 15px !important;
}

.date48-chat-page
.date48-chat-person__copy small {
  font-size: 10.5px !important;
}


/* =========================================
   VOICE GLASS — readable but still light
   ========================================= */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  padding:
    8px 10px 6px !important;

  background:
    rgba(255,255,255,.48) !important;

  border:
    1px solid
    rgba(255,255,255,.78) !important;

  box-shadow:
    0 6px 17px
    rgba(54,39,35,.035),
    inset 0 1px
    rgba(255,255,255,.76) !important;
}

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.48),
      rgba(177,103,120,.13)
    ) !important;

  border:
    1px solid
    rgba(255,255,255,.80) !important;
}

.date48-chat-page
.date48-chat-voice-play {
  width: 34px !important;
  height: 34px !important;
  flex-basis: 34px !important;

  background:
    rgba(255,255,255,.38) !important;

  border:
    1px solid
    rgba(255,255,255,.70) !important;

  color:
    #994b5d !important;
}

.date48-chat-page
.date48-chat-voice-track {
  color:
    #8f7f7c !important;
}

.date48-chat-page
.date48-chat-voice-track span {
  color:
    rgba(65,52,48,.60) !important;
}

.date48-chat-page
.date48-chat-voice-speed {
  color:
    #784b56 !important;

  opacity:
    .90 !important;
}


/* =========================================
   TEXT GLASS — subtle wine only
   ========================================= */

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble:not(.has-circle):not(.has-photo) {
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.48),
      rgba(172,96,114,.11)
    ) !important;

  color:
    #35282b !important;

  border:
    1px solid
    rgba(255,255,255,.78) !important;

  box-shadow:
    0 6px 18px
    rgba(73,46,52,.035),
    inset 0 1px
    rgba(255,255,255,.74) !important;
}


/* =========================================
   VIDEO — closer to approved reference
   ========================================= */

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.has-circle {
  width:
    min(50vw, 215px) !important;

  max-width:
    min(50vw, 215px) !important;
}

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-bubble.has-circle
.date48-chat-circle-media {
  width: 100% !important;
  max-width: 100% !important;

  border:
    1.5px solid
    rgba(255,255,255,.84) !important;

  box-shadow:
    0 8px 22px
    rgba(62,43,39,.055),
    0 0 0 1px
    rgba(165,78,98,.10) !important;
}

.date48-chat-page
.date48-chat-circle-play {
  width: 48px !important;
  height: 48px !important;

  background:
    rgba(54,39,42,.62) !important;
}


/* =========================================
   COMPOSER — quieter
   ========================================= */

.date48-chat-page
.date48-chat-composer,
.date48-chat-page
.date48-chat-composer--v2 {
  background:
    rgba(255,255,255,.44) !important;

  border:
    1px solid
    rgba(255,255,255,.72) !important;

  box-shadow:
    0 10px 28px
    rgba(53,38,34,.055),
    inset 0 1px
    rgba(255,255,255,.76) !important;
}

.date48-chat-page
.date48-chat-composer__field {
  background:
    rgba(255,255,255,.20) !important;

  border:
    1px solid
    rgba(79,61,56,.045) !important;
}

.date48-chat-page
.date48-chat-composer__attachment,
.date48-chat-page
.date48-chat-composer__emoji,
.date48-chat-page
.date48-chat-composer__circle,
.date48-chat-page
.date48-chat-composer__voice {
  color:
    #5d4349 !important;

  opacity:
    .94 !important;
}

.date48-chat-page
.date48-chat-composer__send {
  width: 41px !important;
  height: 41px !important;
  flex-basis: 41px !important;

  background:
    linear-gradient(
      145deg,
      #ae596d,
      #93485a
    ) !important;

  box-shadow:
    0 6px 15px
    rgba(118,57,72,.14) !important;
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 430px) {

  .date48-chat-page
  .date48-chat-message.is-mine
  > .date48-chat-bubble.has-circle {
    width:
      min(50vw, 210px) !important;

    max-width:
      min(50vw, 210px) !important;
  }
}


/* DATE48 CSS SOURCE 18: /assets/ui-chat-v6-reference-lock-20260919_050337.css */
/*
 * DATE48 — Chat V6 Reference Lock
 *
 * Direct visual lock toward approved reference.
 * Emoji deliberately untouched.
 */


/* =========================================================
   BACKGROUND — warm editorial ivory with smoky depth
   ========================================================= */

body:has(.date48-chat-page) {
  background:
    radial-gradient(
      circle at 7% 40%,
      rgba(151,77,103,.045),
      transparent 26%
    ),
    radial-gradient(
      circle at 92% 18%,
      rgba(151,77,103,.035),
      transparent 22%
    ),
    linear-gradient(
      180deg,
      #fbf8f3 0%,
      #f8f3ed 52%,
      #faf7f2 100%
    ) !important;
}

.date48-chat-page {
  background:
    radial-gradient(
      circle at 14% 50%,
      rgba(125,93,89,.025),
      transparent 26%
    ),
    radial-gradient(
      circle at 86% 21%,
      rgba(163,79,98,.035),
      transparent 24%
    ),
    transparent !important;
}


/* =========================================================
   HEADER — porcelain, no content visible through it
   ========================================================= */

.date48-chat-page
.date48-chat-head {
  background:
    linear-gradient(
      135deg,
      rgba(255,254,252,.996) 0%,
      rgba(253,249,246,.994) 64%,
      rgba(249,241,242,.992) 100%
    ) !important;

  border:
    1px solid rgba(255,255,255,.96) !important;

  border-bottom-color:
    rgba(141,65,84,.11) !important;

  -webkit-backdrop-filter:
    blur(24px) saturate(1.02) !important;

  backdrop-filter:
    blur(24px) saturate(1.02) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.99),
    0 8px 25px rgba(65,44,49,.052) !important;
}

.date48-chat-page
.date48-chat-person__copy strong {
  color:
    #20171a !important;
}

.date48-chat-page
.date48-chat-person__copy small {
  color:
    #984459 !important;

  opacity:
    1 !important;
}


/* =========================================================
   OUTGOING VOICE — dusty wine glass
   ========================================================= */

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  color:
    #342328 !important;

  background:
    linear-gradient(
      135deg,
      rgba(252,247,246,.96) 0%,
      rgba(241,224,228,.92) 55%,
      rgba(213,167,179,.50) 100%
    ) !important;

  border:
    1px solid rgba(255,255,255,.93) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset -1px 0 0 rgba(144,64,84,.11),
    0 8px 22px rgba(79,51,58,.052) !important;
}


/* =========================================================
   INCOMING VOICE — warm pearl
   ========================================================= */

.date48-chat-page
.date48-chat-message:not(.is-mine)
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  color:
    #302925 !important;

  background:
    linear-gradient(
      135deg,
      rgba(255,254,251,.985),
      rgba(249,245,239,.96)
    ) !important;

  border:
    1px solid rgba(255,255,255,.95) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.97),
    0 7px 19px rgba(71,59,52,.044) !important;
}


/* =========================================================
   PLAY BUTTONS
   ========================================================= */

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-play {
  color:
    #963e56 !important;

  background:
    rgba(255,250,249,.82) !important;

  border:
    1px solid rgba(255,255,255,.94) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 5px 13px rgba(112,50,68,.065) !important;
}

.date48-chat-page
.date48-chat-message:not(.is-mine)
.date48-chat-voice-play {
  color:
    #6f6665 !important;

  background:
    rgba(255,255,253,.88) !important;

  border:
    1px solid rgba(255,255,255,.96) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 5px 12px rgba(72,61,56,.045) !important;
}


/* =========================================================
   IOS / WEBKIT VOICE SLIDER
   This is the key reference difference.
   ========================================================= */

.date48-chat-page
.date48-chat-voice-track
input[type="range"] {
  -webkit-appearance:
    none !important;

  appearance:
    none !important;

  background:
    transparent !important;

  accent-color:
    #994258 !important;

  opacity:
    1 !important;
}


/* base track */

.date48-chat-page
.date48-chat-voice-track
input[type="range"]::-webkit-slider-runnable-track {
  height:
    4px !important;

  border-radius:
    999px !important;

  background:
    rgba(120,96,103,.28) !important;

  box-shadow:
    inset 0 1px 1px rgba(70,48,55,.08) !important;
}


/* outgoing wine thumb */

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-track
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance:
    none !important;

  appearance:
    none !important;

  width:
    18px !important;

  height:
    18px !important;

  border-radius:
    999px !important;

  border:
    0 !important;

  margin-top:
    -7px !important;

  background:
    linear-gradient(
      145deg,
      #ad526b,
      #8d3850
    ) !important;

  box-shadow:
    0 4px 9px rgba(110,48,66,.20),
    inset 0 1px 0 rgba(255,255,255,.18) !important;
}


/* incoming pearl / grey thumb */

.date48-chat-page
.date48-chat-message:not(.is-mine)
.date48-chat-voice-track
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance:
    none !important;

  appearance:
    none !important;

  width:
    18px !important;

  height:
    18px !important;

  border-radius:
    999px !important;

  border:
    0 !important;

  margin-top:
    -7px !important;

  background:
    linear-gradient(
      145deg,
      #c7c3c0,
      #a9a5a2
    ) !important;

  box-shadow:
    0 4px 8px rgba(71,63,59,.13),
    inset 0 1px 0 rgba(255,255,255,.30) !important;
}


/* Firefox fallback */

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-track
input[type="range"]::-moz-range-thumb {
  background:
    #963e56 !important;

  border:
    0 !important;
}

.date48-chat-page
.date48-chat-message:not(.is-mine)
.date48-chat-voice-track
input[type="range"]::-moz-range-thumb {
  background:
    #aaa5a2 !important;

  border:
    0 !important;
}


/* =========================================================
   VOICE META — never disappear on iPhone
   ========================================================= */

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-speed {
  color:
    #86364e !important;

  -webkit-text-fill-color:
    #86364e !important;

  opacity:
    1 !important;

  font-weight:
    760 !important;
}

.date48-chat-page
.date48-chat-message:not(.is-mine)
.date48-chat-voice-speed {
  color:
    #645c5b !important;

  -webkit-text-fill-color:
    #645c5b !important;

  opacity:
    1 !important;

  font-weight:
    700 !important;
}

.date48-chat-page
.date48-chat-message.is-mine
.date48-chat-voice-track span {
  color:
    rgba(89,51,60,.74) !important;

  -webkit-text-fill-color:
    rgba(89,51,60,.74) !important;

  opacity:
    1 !important;
}

.date48-chat-page
.date48-chat-message:not(.is-mine)
.date48-chat-voice-track span {
  color:
    rgba(80,71,67,.70) !important;

  -webkit-text-fill-color:
    rgba(80,71,67,.70) !important;

  opacity:
    1 !important;
}

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble:has(.date48-chat-voice-message)
> small {
  color:
    rgba(91,52,62,.70) !important;

  -webkit-text-fill-color:
    rgba(91,52,62,.70) !important;

  opacity:
    1 !important;
}


/* =========================================================
   OUTGOING TEXT
   Emoji content remains full-colour.
   ========================================================= */

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble:not(.has-circle):not(.has-photo):not(:has(.date48-chat-voice-message)) {
  background:
    linear-gradient(
      135deg,
      rgba(255,252,250,.97) 0%,
      rgba(247,235,237,.93) 70%,
      rgba(216,175,185,.43) 100%
    ) !important;

  border:
    1px solid rgba(255,255,255,.94) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 7px 18px rgba(77,50,57,.043) !important;
}


/* =========================================================
   VIDEO — thin wine jewellery ring
   Size / alignment untouched.
   ========================================================= */

.date48-chat-page
.date48-chat-circle-media {
  border:
    2px solid rgba(255,255,255,.96) !important;

  box-shadow:
    0 0 0 1px rgba(177,73,101,.34),
    0 0 0 4px rgba(255,255,255,.22),
    0 11px 28px rgba(89,52,63,.10) !important;
}


/* =========================================================
   COMPOSER — one glass dock, no inner pill
   Emoji button deliberately untouched.
   ========================================================= */

.date48-chat-page
.date48-chat-composer {
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.76),
      rgba(252,248,245,.67)
    ) !important;

  border-color:
    rgba(255,255,255,.90) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 11px 30px rgba(72,51,57,.075) !important;
}

.date48-chat-page
.date48-chat-composer__field {
  background:
    transparent !important;

  box-shadow:
    none !important;

  border:
    0 !important;

  border-left:
    1px solid rgba(119,91,99,.16) !important;

  border-radius:
    0 !important;
}


/* utility icons stay without plates */

.date48-chat-page
.date48-chat-composer__attachment,
.date48-chat-page
.date48-chat-composer__voice,
.date48-chat-page
.date48-chat-composer__circle {
  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;

  color:
    #64434c !important;
}


/* IMPORTANT:
   .date48-chat-composer__emoji intentionally untouched */


/* =========================================================
   SEND — deep wine even while disabled
   ========================================================= */

.date48-chat-page
.date48-chat-composer__send {
  color:
    #ffffff !important;

  -webkit-text-fill-color:
    #ffffff !important;

  background:
    linear-gradient(
      145deg,
      #ad4d67 0%,
      #87364f 56%,
      #69283e 100%
    ) !important;

  border:
    1px solid rgba(255,255,255,.34) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -1px 0 rgba(58,18,32,.27),
    0 8px 20px rgba(111,43,63,.25) !important;

  opacity:
    1 !important;
}

.date48-chat-page
.date48-chat-composer__send:disabled {
  background:
    linear-gradient(
      145deg,
      #b75d75 0%,
      #98465d 58%,
      #7f374e 100%
    ) !important;

  color:
    #ffffff !important;

  -webkit-text-fill-color:
    #ffffff !important;

  opacity:
    .84 !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 7px 17px rgba(110,51,69,.18) !important;
}


/* DATE48 CSS SOURCE 19: /assets/ui-feed-v3-reference-dom-20260919_055540.css */
/*
 * DATE48 — Feed V3 Reference DOM
 * Exact target: approved single-card reference.
 *
 * Stories are intentionally untouched.
 */


/* ---------------------------------------------------------
   FEED FLOW
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-real-feed {
  display:
    flex !important;

  flex-direction:
    column !important;

  gap:
    28px !important;

  width:
    100%;

  padding:
    2px 0
    136px !important;
}


/* ---------------------------------------------------------
   ONE POST
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post {
  width:
    min(
      calc(100% - 20px),
      720px
    );

  margin:
    0 auto;

  padding:
    0;

  border:
    0;

  background:
    transparent;
}


/* ---------------------------------------------------------
   STAGE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__stage {
  position:
    relative;

  width:
    100%;

  aspect-ratio:
    4 / 5.05;

  overflow:
    hidden;

  border:
    1px solid
    rgba(255,255,255,.75);

  border-radius:
    30px;

  background:
    #ece6e3;

  box-shadow:
    0 20px 50px
      rgba(63,39,46,.115),
    0 3px 10px
      rgba(63,39,46,.045);

  isolation:
    isolate;
}


body:has(.date48-real-feed)
.date48-reference-post__media {
  position:
    absolute;

  z-index:
    1;

  inset:
    0;

  display:
    block;

  width:
    100%;

  height:
    100%;

  object-fit:
    cover;

  object-position:
    center;

  cursor:
    pointer;
}


/* ---------------------------------------------------------
   REFERENCE BOTTOM SHADE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__stage::after {
  content:
    "";

  position:
    absolute;

  z-index:
    2;

  inset:
    31% 0 0;

  pointer-events:
    none;

  background:
    linear-gradient(
      180deg,
      rgba(19,11,14,0) 0%,
      rgba(19,11,14,.015) 27%,
      rgba(19,11,14,.13) 50%,
      rgba(19,11,14,.46) 72%,
      rgba(17,9,12,.77) 100%
    );
}


/* ---------------------------------------------------------
   MORE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__more {
  position:
    absolute;

  z-index:
    7;

  top:
    17px;

  right:
    17px;

  display:
    grid;

  place-items:
    center;

  width:
    46px;

  height:
    46px;

  color:
    #fff;

  font-size:
    19px;

  letter-spacing:
    2px;

  border:
    1px solid
    rgba(255,255,255,.65);

  border-radius:
    999px;

  background:
    rgba(42,31,34,.34);

  box-shadow:
    0 7px 18px
    rgba(17,9,12,.15);

  backdrop-filter:
    blur(16px);

  -webkit-backdrop-filter:
    blur(16px);
}


/* ---------------------------------------------------------
   VERIFIED
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__verified {
  position:
    absolute;

  z-index:
    7;

  top:
    17px;

  left:
    17px;

  display:
    inline-flex;

  align-items:
    center;

  min-height:
    28px;

  padding:
    0 10px;

  color:
    #68384a;

  font-size:
    10px;

  font-weight:
    760;

  border:
    1px solid
    rgba(255,255,255,.78);

  border-radius:
    999px;

  background:
    rgba(255,252,249,.79);

  backdrop-filter:
    blur(16px);

  -webkit-backdrop-filter:
    blur(16px);
}


/* ---------------------------------------------------------
   RIGHT ACTION RAIL
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__rail {
  position:
    absolute;

  z-index:
    8;

  right:
    15px;

  bottom:
    30px;

  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  gap:
    14px;
}


body:has(.date48-real-feed)
.date48-reference-post__action {
  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  justify-content:
    center;

  gap:
    3px;

  min-width:
    52px;

  color:
    #fff;

  text-decoration:
    none;
}


body:has(.date48-real-feed)
.date48-reference-post__action-icon,
body:has(.date48-real-feed)
.date48-reference-post__comment-icon,
body:has(.date48-real-feed)
.date48-reference-post__action--save {
  display:
    grid;

  place-items:
    center;

  width:
    50px;

  height:
    50px;

  color:
    #fff;

  font-size:
    22px;

  line-height:
    1;

  border:
    1px solid
    rgba(255,255,255,.75);

  border-radius:
    999px;

  background:
    rgba(33,22,26,.29);

  box-shadow:
    0 8px 20px
    rgba(16,8,11,.17);

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);
}


body:has(.date48-real-feed)
.date48-reference-post__action--like {
  padding:
    0;

  border:
    0;

  background:
    transparent;

  cursor:
    pointer;
}


body:has(.date48-real-feed)
.date48-reference-post__action--like
.date48-reference-post__action-icon {
  background:
    linear-gradient(
      145deg,
      #b6516d,
      #84364f
    );

  border-color:
    rgba(255,255,255,.84);

  font-size:
    22px;
}


body:has(.date48-real-feed)
.date48-reference-post__action small {
  min-height:
    12px;

  color:
    rgba(255,255,255,.92);

  font-size:
    11px;

  font-weight:
    650;

  text-shadow:
    0 2px 8px
    rgba(13,7,9,.28);
}


/* ---------------------------------------------------------
   CONTENT
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__content {
  position:
    absolute;

  z-index:
    7;

  left:
    20px;

  right:
    82px;

  bottom:
    21px;

  color:
    #fff;
}


/* ---------------------------------------------------------
   PERSON
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__person {
  display:
    grid;

  grid-template-columns:
    48px minmax(0,1fr);

  align-items:
    center;

  gap:
    11px;

  width:
    100%;

  margin:
    0;

  padding:
    0;

  color:
    #fff;

  text-align:
    left;

  border:
    0;

  background:
    transparent;

  cursor:
    pointer;
}


body:has(.date48-real-feed)
.date48-reference-post__person img,
body:has(.date48-real-feed)
.date48-reference-post__avatar-fallback {
  display:
    grid;

  place-items:
    center;

  width:
    48px;

  height:
    48px;

  object-fit:
    cover;

  color:
    #fff;

  font-weight:
    750;

  border:
    2px solid
    rgba(255,255,255,.94);

  border-radius:
    999px;

  background:
    rgba(255,255,255,.15);

  box-shadow:
    0 6px 18px
    rgba(13,7,9,.20);
}


body:has(.date48-real-feed)
.date48-reference-post__identity {
  display:
    flex;

  flex-direction:
    column;

  min-width:
    0;
}


body:has(.date48-real-feed)
.date48-reference-post__identity strong {
  overflow:
    hidden;

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    21px;

  line-height:
    1.05;

  font-weight:
    600;

  letter-spacing:
    -.026em;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;

  text-shadow:
    0 2px 11px
    rgba(13,7,9,.27);
}


body:has(.date48-real-feed)
.date48-reference-post__identity small {
  margin-top:
    4px;

  color:
    rgba(255,255,255,.88);

  font-size:
    12px;

  line-height:
    1.2;

  font-weight:
    520;

  text-shadow:
    0 2px 8px
    rgba(13,7,9,.26);
}


/* ---------------------------------------------------------
   CAPTION
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__caption-wrap {
  margin-top:
    15px;
}


body:has(.date48-real-feed)
.date48-reference-post__caption {
  display:
    -webkit-box;

  margin:
    0;

  overflow:
    hidden;

  color:
    #fff;

  font-family:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  font-size:
    clamp(
      17px,
      4.55vw,
      20px
    );

  line-height:
    1.27;

  font-weight:
    510;

  letter-spacing:
    -.02em;

  text-shadow:
    0 2px 12px
    rgba(13,7,9,.32);

  -webkit-box-orient:
    vertical;

  -webkit-line-clamp:
    3;
}


body:has(.date48-real-feed)
.date48-reference-post__caption.is-expanded {
  display:
    block;

  overflow:
    visible;

  -webkit-line-clamp:
    unset;
}


body:has(.date48-real-feed)
.date48-reference-post__caption-more {
  margin:
    6px 0 0;

  padding:
    0;

  color:
    rgba(255,255,255,.84);

  font-size:
    11px;

  font-weight:
    720;

  border:
    0;

  background:
    transparent;

  cursor:
    pointer;
}


/* ---------------------------------------------------------
   REFERENCE TAGS
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__tags {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    7px;

  margin-top:
    15px;
}


body:has(.date48-real-feed)
.date48-reference-post__tags span {
  display:
    inline-flex;

  align-items:
    center;

  min-height:
    31px;

  padding:
    0 13px;

  color:
    rgba(255,255,255,.94);

  font-size:
    11px;

  font-weight:
    590;

  border:
    1px solid
    rgba(255,255,255,.42);

  border-radius:
    999px;

  background:
    rgba(38,25,30,.22);

  backdrop-filter:
    blur(12px);

  -webkit-backdrop-filter:
    blur(12px);
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 620px) {

  body:has(.date48-real-feed)
  .date48-reference-post {
    width:
      calc(100% - 20px);
  }


  body:has(.date48-real-feed)
  .date48-reference-post__stage {
    aspect-ratio:
      4 / 5.06;

    border-radius:
      29px;
  }


  body:has(.date48-real-feed)
  .date48-reference-post__content {
    left:
      18px;

    right:
      76px;

    bottom:
      19px;
  }


  body:has(.date48-real-feed)
  .date48-reference-post__rail {
    right:
      14px;

    bottom:
      27px;
  }

}


/* DATE48 CSS SOURCE 20: /assets/ui-feed-v3-1-reference-lock-20260919_060141.css */
/*
 * Date48 Feed V3.1
 * Reference Lock
 *
 * Approved direction:
 * - stories remain at top
 * - single hero moment
 * - lighter card proportions
 * - refined action rail
 * - content clearly above bottom nav
 */


/* =========================================================
   STORIES — PRESERVED, ONLY COMPACTED
   ========================================================= */

body:has(.date48-real-feed)
.date48-inline-stories {
  min-height:
    78px !important;

  margin:
    2px 0
    17px !important;

  padding-left:
    27px !important;

  padding-right:
    27px !important;

  gap:
    13px !important;

  align-items:
    flex-start !important;
}


body:has(.date48-real-feed)
.date48-inline-story {
  flex:
    0 0 64px !important;

  width:
    64px !important;
}


body:has(.date48-real-feed)
.date48-inline-story__thumb {
  width:
    62px !important;

  height:
    62px !important;
}


body:has(.date48-real-feed)
.date48-inline-story__count {
  font-size:
    10px !important;
}


/* =========================================================
   TITLE AREA — CLOSER TO REFERENCE
   ========================================================= */

body:has(.date48-real-feed)
.date48-feed-title {
  padding-top:
    0 !important;

  padding-bottom:
    14px !important;
}


body:has(.date48-real-feed)
.date48-feed-title > div::before {
  margin-bottom:
    7px !important;
}


body:has(.date48-real-feed)
.date48-feed-title h1 {
  font-size:
    clamp(
      37px,
      10vw,
      48px
    ) !important;

  line-height:
    .96 !important;
}


body:has(.date48-real-feed)
.date48-feed-title p::after {
  font-size:
    13px !important;

  line-height:
    1.34 !important;
}


/* =========================================================
   FILTERS
   ========================================================= */

body:has(.date48-real-feed)
.date48-inline-filters {
  gap:
    9px !important;

  padding-bottom:
    17px !important;
}


body:has(.date48-real-feed)
.date48-inline-filters button {
  min-height:
    37px !important;

  padding:
    0 15px !important;

  font-size:
    12px !important;

  border-radius:
    999px !important;
}


/* =========================================================
   FEED FLOW
   ========================================================= */

body:has(.date48-real-feed)
.date48-real-feed {
  gap:
    31px !important;

  padding-bottom:
    150px !important;
}


/* =========================================================
   SINGLE POST WIDTH
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post {
  width:
    min(
      calc(100% - 30px),
      700px
    ) !important;

  margin:
    0 auto !important;
}


/* =========================================================
   STAGE PROPORTION
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__stage {
  aspect-ratio:
    4 / 5.02 !important;

  border-radius:
    30px !important;

  box-shadow:
    0 18px 44px
      rgba(58,35,42,.105),
    0 3px 9px
      rgba(58,35,42,.035) !important;
}


/* =========================================================
   IMAGE
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__media {
  object-fit:
    cover !important;

  object-position:
    center !important;
}


/* =========================================================
   LIGHTER GRADIENT
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__stage::after {
  inset:
    39% 0 0 !important;

  background:
    linear-gradient(
      180deg,
      rgba(18,10,13,0) 0%,
      rgba(18,10,13,.01) 22%,
      rgba(18,10,13,.11) 45%,
      rgba(18,10,13,.42) 71%,
      rgba(16,8,11,.72) 100%
    ) !important;
}


/* =========================================================
   MORE BUTTON — LIGHTER
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__more {
  top:
    16px !important;

  right:
    16px !important;

  width:
    44px !important;

  height:
    44px !important;

  font-size:
    16px !important;

  color:
    rgba(255,255,255,.96) !important;

  border-color:
    rgba(255,255,255,.62) !important;

  background:
    rgba(53,42,45,.26) !important;

  box-shadow:
    0 6px 16px
      rgba(16,8,11,.11) !important;
}


/* =========================================================
   CONTENT BLOCK
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__content {
  left:
    19px !important;

  right:
    74px !important;

  bottom:
    22px !important;
}


/* =========================================================
   AUTHOR
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__person {
  grid-template-columns:
    46px minmax(0,1fr) !important;

  gap:
    10px !important;
}


body:has(.date48-real-feed)
.date48-reference-post__person img,
body:has(.date48-real-feed)
.date48-reference-post__avatar-fallback {
  width:
    46px !important;

  height:
    46px !important;
}


body:has(.date48-real-feed)
.date48-reference-post__identity strong {
  font-size:
    20px !important;

  font-weight:
    600 !important;
}


body:has(.date48-real-feed)
.date48-reference-post__identity small {
  margin-top:
    3px !important;

  font-size:
    11px !important;
}


/* =========================================================
   CAPTION
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__caption-wrap {
  margin-top:
    13px !important;
}


body:has(.date48-real-feed)
.date48-reference-post__caption {
  font-size:
    clamp(
      16px,
      4.25vw,
      19px
    ) !important;

  line-height:
    1.26 !important;
}


/* =========================================================
   TAGS
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__tags {
  gap:
    7px !important;

  margin-top:
    13px !important;
}


body:has(.date48-real-feed)
.date48-reference-post__tags span {
  min-height:
    30px !important;

  padding:
    0 12px !important;

  font-size:
    10px !important;

  border-color:
    rgba(255,255,255,.38) !important;

  background:
    rgba(40,26,31,.18) !important;
}


/* =========================================================
   ACTION RAIL — MATCH REFERENCE
   ========================================================= */

body:has(.date48-real-feed)
.date48-reference-post__rail {
  right:
    14px !important;

  bottom:
    31px !important;

  gap:
    12px !important;
}


body:has(.date48-real-feed)
.date48-reference-post__action {
  min-width:
    46px !important;

  gap:
    3px !important;
}


body:has(.date48-real-feed)
.date48-reference-post__action-icon,
body:has(.date48-real-feed)
.date48-reference-post__comment-icon,
body:has(.date48-real-feed)
.date48-reference-post__action--save {
  width:
    46px !important;

  height:
    46px !important;

  border:
    1px solid
    rgba(255,255,255,.68) !important;

  background:
    rgba(36,24,28,.22) !important;

  box-shadow:
    0 7px 18px
    rgba(14,7,10,.12) !important;
}


/* like */

body:has(.date48-real-feed)
.date48-reference-post__action--like
.date48-reference-post__action-icon {
  font-size:
    21px !important;

  background:
    linear-gradient(
      145deg,
      #b64f6b,
      #82364e
    ) !important;
}


/* hide broken fallback symbols */

body:has(.date48-real-feed)
.date48-reference-post__comment-icon {
  position:
    relative;

  font-size:
    0 !important;
}


body:has(.date48-real-feed)
.date48-reference-post__comment-icon::before {
  content:
    "";

  width:
    18px;

  height:
    15px;

  border:
    2px solid
    rgba(255,255,255,.96);

  border-radius:
    999px;
}


body:has(.date48-real-feed)
.date48-reference-post__comment-icon::after {
  content:
    "";

  position:
    absolute;

  left:
    14px;

  bottom:
    11px;

  width:
    6px;

  height:
    6px;

  border-left:
    2px solid
    rgba(255,255,255,.96);

  border-bottom:
    2px solid
    rgba(255,255,255,.96);

  transform:
    rotate(-18deg);
}


/* bookmark */

body:has(.date48-real-feed)
.date48-reference-post__action--save {
  position:
    relative;

  font-size:
    0 !important;
}


body:has(.date48-real-feed)
.date48-reference-post__action--save::before {
  content:
    "";

  width:
    15px;

  height:
    20px;

  border:
    2px solid
    rgba(255,255,255,.96);

  border-radius:
    2px 2px 1px 1px;

  clip-path:
    polygon(
      0 0,
      100% 0,
      100% 100%,
      50% 73%,
      0 100%
    );
}


/* missing counts must not leave blank space */

body:has(.date48-real-feed)
.date48-reference-post__action small:empty {
  display:
    none !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 620px) {

  body:has(.date48-real-feed)
  .date48-reference-post {
    width:
      calc(100% - 30px) !important;
  }


  body:has(.date48-real-feed)
  .date48-reference-post__stage {
    aspect-ratio:
      4 / 5.00 !important;
  }


  body:has(.date48-real-feed)
  .date48-reference-post__content {
    left:
      18px !important;

    right:
      72px !important;

    bottom:
      20px !important;
  }


  body:has(.date48-real-feed)
  .date48-reference-post__rail {
    right:
      13px !important;

    bottom:
      29px !important;
  }

}


/* DATE48 CSS SOURCE 21: /assets/ui-feed-composer-v1-20260920_051930.css */
/* =========================================================
   FEED CREATE CTA
   ========================================================= */

.date48-feed-create-bar {
  width:
    min(
      calc(100% - 30px),
      700px
    );

  margin:
    -2px auto 15px;
}

.date48-feed-create {
  display:
    grid;

  grid-template-columns:
    38px minmax(0,1fr);

  grid-template-rows:
    auto auto;

  column-gap:
    11px;

  align-items:
    center;

  width:
    100%;

  min-height:
    62px;

  padding:
    10px 15px;

  text-align:
    left;

  color:
    #4c2935;

  border:
    1px solid
    rgba(112,65,82,.12);

  border-radius:
    22px;

  background:
    rgba(255,252,248,.78);

  box-shadow:
    0 10px 30px
    rgba(75,42,52,.055);

  backdrop-filter:
    blur(18px);

  -webkit-backdrop-filter:
    blur(18px);
}

.date48-feed-create > span {
  grid-row:
    1 / 3;

  display:
    grid;

  place-items:
    center;

  width:
    38px;

  height:
    38px;

  color:
    #fff;

  font-size:
    25px;

  line-height:
    1;

  border-radius:
    999px;

  background:
    linear-gradient(
      145deg,
      #b64f6b,
      #82364e
    );
}

.date48-feed-create strong {
  align-self:
    end;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    16px;

  font-weight:
    600;
}

.date48-feed-create small {
  align-self:
    start;

  margin-top:
    2px;

  color:
    rgba(76,41,53,.58);

  font-size:
    11px;
}


/* =========================================================
   FEED COMPOSER
   ========================================================= */

.date48-feed-composer {
  position:
    fixed;

  z-index:
    5000;

  inset:
    0;

  display:
    flex;

  align-items:
    flex-end;

  justify-content:
    center;
}

.date48-feed-composer__backdrop {
  position:
    absolute;

  inset:
    0;

  border:
    0;

  background:
    rgba(37,24,29,.34);

  backdrop-filter:
    blur(9px);

  -webkit-backdrop-filter:
    blur(9px);
}

.date48-feed-composer__sheet {
  position:
    relative;

  z-index:
    2;

  width:
    min(
      100%,
      560px
    );

  max-height:
    min(
      92dvh,
      820px
    );

  overflow-y:
    auto;

  padding:
    10px 17px
    calc(
      22px +
      env(
        safe-area-inset-bottom
      )
    );

  border:
    1px solid
    rgba(116,76,89,.09);

  border-radius:
    30px 30px 0 0;

  background:
    #fbf7f2;

  box-shadow:
    0 -20px 60px
    rgba(55,34,42,.16);
}

.date48-feed-composer__handle {
  width:
    38px;

  height:
    4px;

  margin:
    0 auto 15px;

  border-radius:
    999px;

  background:
    rgba(76,41,53,.18);
}

.date48-feed-composer__head {
  display:
    flex;

  align-items:
    flex-start;

  justify-content:
    space-between;

  gap:
    16px;

  margin-bottom:
    15px;
}

.date48-feed-composer__head span {
  display:
    block;

  margin-bottom:
    4px;

  color:
    #9b5268;

  font-size:
    9px;

  font-weight:
    800;

  letter-spacing:
    .18em;
}

.date48-feed-composer__head h2 {
  margin:
    0;

  color:
    #432731;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    29px;

  font-weight:
    500;
}

.date48-feed-composer__head > button {
  display:
    grid;

  place-items:
    center;

  width:
    38px;

  height:
    38px;

  color:
    #684251;

  font-size:
    22px;

  border:
    1px solid
    rgba(105,66,80,.12);

  border-radius:
    999px;

  background:
    rgba(255,255,255,.62);
}

.date48-feed-composer__preview {
  position:
    relative;

  width:
    100%;

  aspect-ratio:
    4 / 5;

  overflow:
    hidden;

  border-radius:
    24px;

  background:
    #e9e1dd;
}

.date48-feed-composer__preview img,
.date48-feed-composer__preview video {
  display:
    block;

  width:
    100%;

  height:
    100%;

  object-fit:
    cover;
}

.date48-feed-composer__field {
  display:
    block;

  margin-top:
    16px;
}

.date48-feed-composer__field > span {
  display:
    block;

  margin:
    0 2px 7px;

  color:
    #5d3846;

  font-size:
    12px;

  font-weight:
    700;
}

.date48-feed-composer__field textarea {
  display:
    block;

  width:
    100%;

  min-height:
    92px;

  padding:
    13px 14px;

  resize:
    none;

  color:
    #402932;

  font:
    inherit;

  font-size:
    15px;

  line-height:
    1.4;

  border:
    1px solid
    rgba(101,62,76,.12);

  border-radius:
    18px;

  outline:
    0;

  background:
    rgba(255,255,255,.66);
}

.date48-feed-composer__field textarea:focus {
  border-color:
    rgba(152,70,96,.42);

  box-shadow:
    0 0 0 3px
    rgba(173,77,108,.08);
}

.date48-feed-composer__meta {
  display:
    flex;

  justify-content:
    space-between;

  gap:
    10px;

  margin:
    7px 2px 16px;

  color:
    rgba(75,45,56,.52);

  font-size:
    10px;
}

.date48-feed-composer__meta b {
  color:
    #805061;
}

.date48-feed-composer__publish {
  width:
    100%;

  min-height:
    51px;

  color:
    #fff;

  font-size:
    14px;

  font-weight:
    720;

  border:
    0;

  border-radius:
    18px;

  background:
    linear-gradient(
      145deg,
      #ad4e69,
      #7d334b
    );

  box-shadow:
    0 12px 26px
    rgba(116,45,69,.20);
}

.date48-feed-composer__publish:disabled,
.date48-feed-create:disabled {
  opacity:
    .54;
}


/* =========================================================
   OWN POST
   ========================================================= */

.date48-reference-post__own {
  position:
    absolute;

  z-index:
    8;

  right:
    15px;

  bottom:
    25px;

  padding:
    8px 11px;

  color:
    rgba(255,255,255,.92);

  font-size:
    9px;

  font-weight:
    700;

  letter-spacing:
    .03em;

  border:
    1px solid
    rgba(255,255,255,.38);

  border-radius:
    999px;

  background:
    rgba(37,24,28,.23);

  backdrop-filter:
    blur(12px);

  -webkit-backdrop-filter:
    blur(12px);
}


/* videos use the exact same hero scene */

.date48-reference-post__media:is(video) {
  object-fit:
    cover;

  background:
    #181214;
}


/* DATE48 CSS SOURCE 22: /assets/ui-feed-app-shell-v1-20260920_062657.css */
/* date48_feed_app_shell_v1_20260920 */

/*
 * Scope absolutely everything to the real Home feed.
 * Other pages, chat, profile and story viewer are untouched.
 */

body:has(.date48-real-feed) {
  background:
    #f8f4ef;
}


/* ---------------------------------------------------------
   PAGE — MOBILE APP, NOT A DESKTOP WEB PAGE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.app-shell {
  box-sizing:
    border-box !important;

  width:
    100% !important;

  max-width:
    560px !important;

  margin:
    0 auto !important;

  padding-left:
    12px !important;

  padding-right:
    12px !important;

  padding-bottom:
    calc(
      112px +
      env(safe-area-inset-bottom)
    ) !important;
}


/* ---------------------------------------------------------
   TOP BAR
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.topbar {
  min-height:
    46px !important;

  margin:
    0 0 4px !important;

  padding:
    0 2px !important;
}


/* ---------------------------------------------------------
   STORIES — KEEP THEM, BUT COMPACT
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-inline-stories {
  gap:
    12px !important;

  margin:
    0 -2px 5px !important;

  padding:
    3px 2px 5px !important;
}

body:has(.date48-real-feed)
.date48-inline-story {
  min-width:
    58px !important;

  width:
    58px !important;
}

body:has(.date48-real-feed)
.date48-inline-story__thumb,
body:has(.date48-real-feed)
.date48-inline-story--add > span {
  width:
    54px !important;

  height:
    54px !important;
}

body:has(.date48-real-feed)
.date48-inline-story > b {
  margin-top:
    5px !important;

  font-size:
    10px !important;
}


/* ---------------------------------------------------------
   FEED HEADING
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-feed-title {
  box-sizing:
    border-box !important;

  display:
    grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    auto !important;

  align-items:
    end !important;

  gap:
    10px !important;

  margin:
    0 !important;

  padding:
    6px 2px 10px !important;
}

body:has(.date48-real-feed)
.date48-feed-title h1 {
  margin:
    0 !important;

  color:
    #2b1a20 !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    31px !important;

  line-height:
    .98 !important;

  font-weight:
    500 !important;

  letter-spacing:
    -.045em !important;
}

body:has(.date48-real-feed)
.date48-feed-title p {
  margin:
    5px 0 0 !important;

  color:
    rgba(43,26,32,.51) !important;

  font-size:
    11px !important;

  line-height:
    1.25 !important;
}


/* ---------------------------------------------------------
   CREATE MOMENT — MUST BE VISIBLE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-feed-create {
  box-sizing:
    border-box !important;

  display:
    inline-flex !important;

  align-items:
    center !important;

  justify-content:
    center !important;

  min-width:
    0 !important;

  min-height:
    38px !important;

  margin:
    0 !important;

  padding:
    0 14px !important;

  color:
    #fff !important;

  white-space:
    nowrap !important;

  font-size:
    12px !important;

  line-height:
    1 !important;

  font-weight:
    740 !important;

  border:
    0 !important;

  border-radius:
    999px !important;

  opacity:
    1 !important;

  visibility:
    visible !important;

  background:
    linear-gradient(
      145deg,
      #a94764,
      #783248
    ) !important;

  box-shadow:
    0 8px 20px
    rgba(116,45,69,.19) !important;
}

body:has(.date48-real-feed)
.date48-feed-create::before {
  content:
    "+";

  margin-right:
    6px;

  font-size:
    17px;

  font-weight:
    400;
}

body:has(.date48-real-feed)
.date48-feed-create:disabled {
  opacity:
    .48 !important;
}


/* If the title also contains the old filters button,
   keep it visually secondary. */

body:has(.date48-real-feed)
.date48-feed-title >
button:not(.date48-feed-create) {
  min-height:
    34px !important;

  padding:
    0 11px !important;

  color:
    rgba(43,26,32,.60) !important;

  font-size:
    11px !important;

  font-weight:
    650 !important;

  border:
    1px solid
    rgba(73,38,51,.08) !important;

  border-radius:
    999px !important;

  background:
    rgba(255,255,255,.64) !important;

  box-shadow:
    none !important;
}


/* ---------------------------------------------------------
   FILTERS — APP CHIP ROW
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-inline-filters {
  box-sizing:
    border-box !important;

  gap:
    7px !important;

  width:
    calc(100% + 24px) !important;

  margin:
    0 -12px 10px !important;

  padding:
    0 12px 3px !important;

  overflow-x:
    auto !important;

  scrollbar-width:
    none;
}

body:has(.date48-real-feed)
.date48-inline-filters::-webkit-scrollbar {
  display:
    none;
}

body:has(.date48-real-feed)
.date48-inline-filters button {
  min-height:
    34px !important;

  padding:
    0 13px !important;

  color:
    rgba(43,26,32,.66) !important;

  font-size:
    11px !important;

  font-weight:
    650 !important;

  border:
    1px solid
    rgba(73,38,51,.08) !important;

  border-radius:
    999px !important;

  background:
    rgba(255,255,255,.62) !important;

  box-shadow:
    none !important;
}

body:has(.date48-real-feed)
.date48-inline-filters button.is-active {
  color:
    #fff !important;

  border-color:
    #943d59 !important;

  background:
    #943d59 !important;
}


/* ---------------------------------------------------------
   FEED
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-real-feed {
  display:
    flex !important;

  flex-direction:
    column !important;

  gap:
    18px !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 0 12px !important;
}

body:has(.date48-real-feed)
.date48-reference-post {
  box-sizing:
    border-box !important;

  width:
    100% !important;

  margin:
    0 !important;
}


/* Main stage: controlled app-sized card.
   No 68vh / 72vh / 74svh geometry. */

body:has(.date48-real-feed)
.date48-reference-post__stage {
  box-sizing:
    border-box !important;

  width:
    100% !important;

  height:
    auto !important;

  min-height:
    0 !important;

  max-height:
    none !important;

  aspect-ratio:
    4 / 5 !important;

  overflow:
    hidden !important;

  border-radius:
    27px !important;

  box-shadow:
    0 16px 38px
    rgba(53,32,39,.10) !important;
}


/* ---------------------------------------------------------
   ACTION RAIL — SMALLER / CLEANER
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__rail {
  right:
    12px !important;

  bottom:
    22px !important;

  gap:
    9px !important;
}

body:has(.date48-real-feed)
.date48-reference-post__action-icon,
body:has(.date48-real-feed)
.date48-reference-post__comment-icon,
body:has(.date48-real-feed)
.date48-reference-post__action--save {
  width:
    42px !important;

  height:
    42px !important;
}


/* ---------------------------------------------------------
   CONTENT
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-reference-post__content {
  left:
    16px !important;

  right:
    64px !important;

  bottom:
    17px !important;
}

body:has(.date48-real-feed)
.date48-reference-post__person img,
body:has(.date48-real-feed)
.date48-reference-post__avatar-fallback {
  width:
    42px !important;

  height:
    42px !important;
}

body:has(.date48-real-feed)
.date48-reference-post__identity strong {
  font-size:
    19px !important;
}

body:has(.date48-real-feed)
.date48-reference-post__caption {
  font-size:
    15px !important;

  line-height:
    1.3 !important;
}


/* ---------------------------------------------------------
   BOTTOM NAV CLEARANCE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.bottom-nav {
  bottom:
    calc(
      8px +
      env(safe-area-inset-bottom)
    ) !important;
}


/* ---------------------------------------------------------
   EMPTY STATE
   --------------------------------------------------------- */

body:has(.date48-real-feed)
.date48-real-feed__empty {
  box-sizing:
    border-box !important;

  min-height:
    260px !important;

  padding:
    34px 20px 120px !important;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 620px) {

  body:has(.date48-real-feed)
  .app-shell {
    max-width:
      none !important;

    padding-left:
      12px !important;

    padding-right:
      12px !important;
  }

  body:has(.date48-real-feed)
  .date48-reference-post__stage {
    aspect-ratio:
      4 / 5 !important;

    min-height:
      0 !important;
  }
}

/* /date48_feed_app_shell_v1_20260920 */


/* DATE48 CSS SOURCE 23: /assets/ui-feed-nav-state-v1-20260920_064811.css */
/* date48_feed_nav_state_v1_20260920 */

/*
 * /home: Home is the active destination.
 * 48 remains structurally central but visually neutral
 * unless /48 itself is active.
 */

body:has(.date48-real-feed)
.bottom-nav__item--primary:not(.is-active) {
  color:
    rgba(50,40,44,.58) !important;

  background:
    rgba(250,247,245,.95) !important;

  border-color:
    rgba(64,45,53,.07) !important;

  box-shadow:
    0 6px 20px
    rgba(40,25,31,.06) !important;
}

body:has(.date48-real-feed)
.bottom-nav__item--primary:not(.is-active)
.bottom-nav__icon,
body:has(.date48-real-feed)
.bottom-nav__item--primary:not(.is-active)
.bottom-nav__label {
  color:
    rgba(50,40,44,.58) !important;

  opacity:
    .82 !important;
}

body:has(.date48-real-feed)
.bottom-nav__item.is-active:not(.bottom-nav__item--primary),
body:has(.date48-real-feed)
.bottom-nav__item.is-active:not(.bottom-nav__item--primary)
.bottom-nav__icon,
body:has(.date48-real-feed)
.bottom-nav__item.is-active:not(.bottom-nav__item--primary)
.bottom-nav__label {
  color:
    #9b405d !important;

  opacity:
    1 !important;
}

/* /date48_feed_nav_state_v1_20260920 */


/* DATE48 CSS SOURCE 24: /assets/ui-moment-entry-v1-20260920_070012.css */
/* date48_premium_moment_entry_v1_20260920 */

/*
 * The create action should feel like a native composer,
 * not a promotional CTA.
 */

body:has(.date48-real-feed)
.date48-feed-create {
  box-sizing:
    border-box !important;

  position:
    relative !important;

  display:
    grid !important;

  grid-template-columns:
    42px minmax(0,1fr) !important;

  align-items:
    center !important;

  column-gap:
    11px !important;

  width:
    100% !important;

  min-width:
    0 !important;

  min-height:
    56px !important;

  margin:
    0 0 11px !important;

  padding:
    7px 13px 7px 8px !important;

  overflow:
    hidden !important;

  color:
    transparent !important;

  text-align:
    left !important;

  font-size:
    0 !important;

  line-height:
    1 !important;

  border:
    1px solid
    rgba(67,39,49,.085) !important;

  border-radius:
    20px !important;

  background:
    rgba(255,253,250,.88) !important;

  box-shadow:
    0 8px 24px
    rgba(50,30,37,.055),
    inset 0 1px
    rgba(255,255,255,.96) !important;

  backdrop-filter:
    blur(18px) !important;

  -webkit-backdrop-filter:
    blur(18px) !important;
}


/*
 * Remove all historical labels/icons inside the old CTA.
 * This removes the duplicated "+" and "фото или видео".
 */

body:has(.date48-real-feed)
.date48-feed-create > *:not(input) {
  display:
    none !important;
}


/* Small quiet create affordance */

body:has(.date48-real-feed)
.date48-feed-create::before {
  content:
    "+" !important;

  grid-column:
    1 !important;

  grid-row:
    1 !important;

  display:
    grid !important;

  place-items:
    center !important;

  width:
    40px !important;

  height:
    40px !important;

  color:
    #8e3d58 !important;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size:
    25px !important;

  line-height:
    1 !important;

  font-weight:
    300 !important;

  border:
    1px solid
    rgba(117,65,83,.10) !important;

  border-radius:
    14px !important;

  background:
    linear-gradient(
      145deg,
      #f6ecef,
      #f0e4e8
    ) !important;

  box-shadow:
    inset 0 1px
    rgba(255,255,255,.88) !important;
}


/* Human invitation instead of a CTA */

body:has(.date48-real-feed)
.date48-feed-create::after {
  content:
    "Поделиться моментом…" !important;

  grid-column:
    2 !important;

  grid-row:
    1 !important;

  display:
    block !important;

  min-width:
    0 !important;

  overflow:
    hidden !important;

  color:
    rgba(48,31,37,.66) !important;

  white-space:
    nowrap !important;

  text-overflow:
    ellipsis !important;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size:
    14px !important;

  line-height:
    1.2 !important;

  font-weight:
    520 !important;

  letter-spacing:
    -.012em !important;
}


body:has(.date48-real-feed)
.date48-feed-create:active {
  transform:
    scale(.992) !important;

  background:
    rgba(250,246,244,.94) !important;
}


body:has(.date48-real-feed)
.date48-feed-create:disabled {
  opacity:
    .48 !important;
}


/* Slightly tighten the transition into filters */

body:has(.date48-real-feed)
.date48-inline-filters {
  margin-top:
    0 !important;

  margin-bottom:
    11px !important;
}


/*
 * Keep Feed header cleaner now that creation is
 * its own native-style row.
 */

body:has(.date48-real-feed)
.date48-feed-title {
  padding-bottom:
    8px !important;
}


/* /date48_premium_moment_entry_v1_20260920 */


/* DATE48 CSS SOURCE 25: /assets/native-photo-delete-confirm-v1-20260920_074953.css */
/* date48_native_photo_delete_confirm_css_v1_20260920 */

.date48-native-delete-confirm {
  position: fixed;
  z-index: 2147483000;
  inset: 0;

  display: flex;
  align-items: flex-end;
  justify-content: center;

  padding:
    16px 14px
    calc(14px + env(safe-area-inset-bottom));
}

.date48-native-delete-confirm__backdrop {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  border: 0;
  border-radius: 0;

  background:
    rgba(31, 20, 24, .38);

  backdrop-filter:
    blur(10px);

  -webkit-backdrop-filter:
    blur(10px);
}

.date48-native-delete-confirm__sheet {
  position: relative;
  z-index: 2;

  box-sizing: border-box;

  width: min(100%, 430px);

  padding:
    9px 17px
    16px;

  border:
    1px solid
    rgba(82, 51, 61, .08);

  border-radius:
    28px;

  background:
    #fffaf7;

  box-shadow:
    0 24px 70px
    rgba(43, 25, 31, .24);
}

.date48-native-delete-confirm__handle {
  width: 34px;
  height: 4px;

  margin:
    0 auto 15px;

  border-radius:
    999px;

  background:
    rgba(50, 35, 40, .14);
}

.date48-native-delete-confirm__preview {
  width: 74px;
  height: 74px;

  margin:
    0 auto 13px;

  overflow: hidden;

  border:
    3px solid
    rgba(255, 255, 255, .96);

  border-radius:
    22px;

  box-shadow:
    0 8px 24px
    rgba(57, 35, 42, .11);
}

.date48-native-delete-confirm__preview img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}

.date48-native-delete-confirm__kicker {
  display: block;

  margin-bottom: 5px;

  color: #9a425d;

  text-align: center;

  font-size: 10px;
  font-weight: 750;

  letter-spacing: .12em;
}

.date48-native-delete-confirm__sheet h2 {
  margin: 0;

  color: #291a1f;

  text-align: center;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size: 30px;
  line-height: 1.04;
  font-weight: 500;

  letter-spacing: -.035em;
}

.date48-native-delete-confirm__sheet p {
  max-width: 285px;

  margin:
    9px auto
    18px;

  color:
    rgba(45, 30, 35, .58);

  text-align: center;

  font-size: 13px;
  line-height: 1.42;
}

.date48-native-delete-confirm__actions {
  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 9px;
}

.date48-native-delete-confirm__actions button {
  min-height: 50px;

  padding:
    0 16px;

  border-radius: 16px;

  font-size: 14px;
  font-weight: 700;
}

.date48-native-delete-confirm__cancel {
  color: #432f36;

  border:
    1px solid
    rgba(70, 45, 54, .08);

  background:
    #f5f0ed;
}

.date48-native-delete-confirm__delete {
  color: #fff;

  border:
    1px solid #a13f50;

  background:
    linear-gradient(
      145deg,
      #b5485c,
      #8e3548
    );

  box-shadow:
    0 8px 22px
    rgba(151, 53, 73, .18);
}

/* /date48_native_photo_delete_confirm_css_v1_20260920 */


/* DATE48 CSS SOURCE 26: /assets/social-core-v1-20260920_082537.css */
/* date48_social_frontend_v1_20260920 */


/* Feed bookmark */

body:has(.date48-real-feed)
.date48-reference-post__action--save {
  padding: 0 !important;
  border: 1px solid
    rgba(255,255,255,.68) !important;
  cursor: pointer;
  font-size: 0 !important;
  transition:
    transform .18s ease,
    background .18s ease;
}

body:has(.date48-real-feed)
.date48-reference-post__action--save::before,
body:has(.date48-real-feed)
.date48-reference-post__action--save::after {
  content: none !important;
  display: none !important;
}

body:has(.date48-real-feed)
.date48-reference-post__action--save svg {
  width: 20px;
  height: 24px;
  fill: transparent;
  stroke: rgba(255,255,255,.97);
  stroke-width: 1.8;
  stroke-linejoin: round;
}

body:has(.date48-real-feed)
.date48-reference-post__action--save.is-saved {
  background:
    rgba(255,248,244,.94) !important;
}

body:has(.date48-real-feed)
.date48-reference-post__action--save.is-saved svg {
  fill: #8e3f59;
  stroke: #8e3f59;
}

body:has(.date48-real-feed)
.date48-reference-post__action--save:active {
  transform: scale(.94);
}


/* Feed status */

.date48-feed-live-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 27px;
  width: fit-content;
  margin-top: 10px;
  padding: 0 10px;
  color: #fff;
  font-size: 11px;
  font-weight: 680;
  border: 1px solid
    rgba(255,255,255,.34);
  border-radius: 999px;
  background:
    rgba(101,45,66,.38);
  backdrop-filter:
    blur(12px);
  -webkit-backdrop-filter:
    blur(12px);
}

.date48-feed-live-status::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #f4c5d3;
  box-shadow:
    0 0 0 3px
    rgba(244,197,211,.17);
}


/* Own profile */

.date48-social-core {
  width:
    min(
      calc(100% - 30px),
      700px
    );
  margin:
    20px auto 0;
}

.date48-social-status-card,
.date48-social-library {
  overflow: hidden;
  border: 1px solid
    rgba(104,62,76,.10);
  border-radius: 28px;
  background:
    rgba(255,252,248,.91);
  box-shadow:
    0 16px 42px
    rgba(74,43,54,.06);
}

.date48-social-status-card {
  padding: 22px 20px 20px;
}

.date48-social-eyebrow {
  display: block;
  margin-bottom: 7px;
  color: #9b6476;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .13em;
}

.date48-social-status-card h2,
.date48-social-library h2 {
  margin: 0;
  color: #4b2935;
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 25px;
  line-height: 1.06;
  font-weight: 600;
  letter-spacing: -.025em;
}

.date48-social-status-card > p,
.date48-social-library__head p {
  margin: 8px 0 0;
  color:
    rgba(75,41,53,.61);
  font-size: 13px;
  line-height: 1.42;
}

.date48-social-status-current {
  display: flex;
  align-items: center;
  justify-content:
    space-between;
  gap: 12px;
  margin-top: 17px;
  padding: 13px 14px;
  border: 1px solid
    rgba(145,74,97,.12);
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      rgba(249,233,237,.74),
      rgba(255,250,246,.90)
    );
}

.date48-social-status-current strong {
  color: #78394f;
  font-size: 13px;
}

.date48-social-status-current button {
  min-height: 30px;
  padding: 0 10px;
  color: #815568;
  font-size: 11px;
  border: 1px solid
    rgba(112,65,82,.13);
  border-radius: 999px;
  background:
    rgba(255,255,255,.67);
}

.date48-social-status-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 15px;
}

.date48-social-status-options button {
  min-height: 36px;
  padding: 0 13px;
  color: #694052;
  font-size: 12px;
  font-weight: 630;
  border: 1px solid
    rgba(111,65,82,.12);
  border-radius: 999px;
  background: #fffaf6;
}

.date48-social-status-options button.is-active {
  color: #fff;
  background:
    linear-gradient(
      145deg,
      #aa4c68,
      #7f354d
    );
  box-shadow:
    0 7px 17px
    rgba(122,52,77,.15);
}

.date48-social-status-options button:disabled,
.date48-social-status-current button:disabled {
  opacity: .55;
}

.date48-social-notice {
  margin: 12px 0 0;
  color: #8b5265;
  font-size: 12px;
}


/* Libraries */

.date48-social-library {
  margin-top: 14px;
  padding: 20px;
}

.date48-social-library__head {
  display: flex;
  justify-content:
    space-between;
  align-items: flex-end;
  gap: 15px;
  margin-bottom: 15px;
}

.date48-social-library__count {
  display: grid;
  place-items: center;
  min-width: 32px;
  height: 32px;
  padding: 0 9px;
  color: #875064;
  font-size: 11px;
  font-weight: 720;
  border-radius: 999px;
  background: #f7ecee;
}

.date48-social-grid {
  display: grid;
  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );
  gap: 10px;
}

.date48-social-moment {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  border-radius: 19px;
  background: #eee3df;
}

.date48-social-moment img,
.date48-social-moment video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.date48-social-moment::after {
  content: "";
  position: absolute;
  inset: 48% 0 0;
  pointer-events: none;
  background:
    linear-gradient(
      180deg,
      transparent,
      rgba(26,13,18,.46)
    );
}

.date48-social-moment__caption {
  position: absolute;
  z-index: 2;
  right: 11px;
  bottom: 10px;
  left: 11px;
  overflow: hidden;
  color: #fff;
  font-size: 11px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.date48-social-moment__remove {
  position: absolute;
  z-index: 4;
  top: 9px;
  right: 9px;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid
    rgba(255,255,255,.82);
  border-radius: 999px;
  background:
    rgba(255,251,248,.92);
}

.date48-social-moment__remove svg {
  width: 14px;
  height: 18px;
  fill: #8e3f59;
  stroke: #8e3f59;
}

.date48-social-empty {
  display: grid;
  place-items: center;
  min-height: 110px;
  padding: 20px;
  color:
    rgba(75,41,53,.50);
  font-size: 13px;
  text-align: center;
  border: 1px dashed
    rgba(112,65,82,.15);
  border-radius: 19px;
  background:
    rgba(253,248,244,.62);
}


/* Person profile */

.d48-person-live-status {
  display: flex;
  align-items: center;
  gap: 9px;
  width:
    min(
      calc(100% - 30px),
      700px
    );
  min-height: 43px;
  margin: 14px auto 0;
  padding: 0 16px;
  color: #713e51;
  font-size: 13px;
  font-weight: 690;
  border: 1px solid
    rgba(133,72,94,.12);
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      #f8ebee,
      #fff9f5
    );
}

.d48-person-live-status::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #a84c68;
  box-shadow:
    0 0 0 4px
    rgba(168,76,104,.10);
}

.d48-person-moments {
  width:
    min(
      calc(100% - 30px),
      700px
    );
  margin: 18px auto 0;
  padding: 19px;
  border: 1px solid
    rgba(103,61,75,.10);
  border-radius: 25px;
  background:
    rgba(255,252,248,.91);
}

.d48-person-moments__head {
  display: flex;
  align-items: center;
  justify-content:
    space-between;
  gap: 12px;
  margin-bottom: 13px;
}

.d48-person-moments__head span {
  color: #9c6678;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .13em;
}

.d48-person-moments__head h2 {
  margin: 4px 0 0;
  color: #4b2935;
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 24px;
  font-weight: 600;
}

.d48-person-moments__head b {
  display: grid;
  place-items: center;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  color: #845064;
  font-size: 11px;
  border-radius: 999px;
  background: #f5e9ec;
}

.d48-person-moments__grid {
  display: grid;
  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );
  gap: 7px;
}

.d48-person-moment {
  overflow: hidden;
  aspect-ratio: 3 / 4;
  border-radius: 15px;
  background: #eee3df;
}

.d48-person-moment img,
.d48-person-moment video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.d48-person-moments__empty {
  margin: 0;
  padding: 16px 0 5px;
  color:
    rgba(75,41,53,.49);
  font-size: 13px;
}


@media (max-width: 620px) {
  .date48-social-core,
  .d48-person-live-status,
  .d48-person-moments {
    width:
      calc(100% - 24px);
  }

  .date48-social-status-card,
  .date48-social-library {
    border-radius: 24px;
  }

  .date48-social-grid {
    gap: 8px;
  }

  .d48-person-moments__grid {
    gap: 6px;
  }
}

/* /date48_social_frontend_v1_20260920 */


/* DATE48 CSS SOURCE 27: /assets/feed-comments-ui-v1-20260920_110709.css */
/* date48_feed_comments_ui_v1_20260920 */

.date48-reference-post__action--comment {
  cursor: pointer;
  pointer-events: auto;
}

.date48-comments-layer {
  position: fixed;
  z-index: 220;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.date48-comments-backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgba(32, 19, 24, .28);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

.date48-comments-sheet {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  width: min(100%, 720px);
  max-height: min(78dvh, 720px);
  padding:
    8px
    18px
    calc(14px + env(safe-area-inset-bottom));
  overflow: hidden;
  border: 1px solid rgba(96, 55, 70, .09);
  border-radius: 28px 28px 0 0;
  background: rgba(255, 251, 247, .985);
  box-shadow: 0 -20px 70px rgba(58, 33, 43, .20);
}

.date48-comments-sheet__handle {
  width: 38px;
  height: 4px;
  margin: 0 auto 12px;
  border-radius: 999px;
  background: rgba(91, 55, 68, .16);
}

.date48-comments-sheet__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 2px 2px 13px;
  border-bottom: 1px solid rgba(93, 56, 69, .075);
}

.date48-comments-sheet__head > div {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.date48-comments-sheet__head span {
  color: #a16b7e;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .13em;
}

.date48-comments-sheet__head strong {
  color: #452833;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  line-height: 1.1;
  font-weight: 600;
}

.date48-comments-sheet__head > button {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  color: #76505e;
  font-size: 23px;
  border: 0;
  border-radius: 999px;
  background: rgba(126, 82, 99, .06);
}

.date48-comments-sheet__list {
  flex: 1 1 auto;
  min-height: 140px;
  padding: 12px 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.date48-comment {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  padding: 9px 2px;
}

.date48-comment > img,
.date48-comment__avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  object-fit: cover;
  color: #7a4055;
  font-size: 13px;
  font-weight: 700;
  border-radius: 999px;
  background: #f0e1e5;
}

.date48-comment__body {
  min-width: 0;
  padding-top: 1px;
}

.date48-comment__meta {
  display: flex;
  align-items: baseline;
  gap: 7px;
}

.date48-comment__meta strong {
  overflow: hidden;
  color: #462932;
  font-size: 12px;
  font-weight: 720;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.date48-comment__meta time {
  flex: 0 0 auto;
  color: rgba(70, 41, 50, .42);
  font-size: 9px;
}

.date48-comment p {
  margin: 3px 0 0;
  color: #4b343c;
  font-size: 13px;
  line-height: 1.38;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.date48-comment__delete {
  margin-top: 4px;
  padding: 0;
  color: #9c6677;
  font-size: 9px;
  font-weight: 650;
  border: 0;
  background: transparent;
}

.date48-comments-sheet__state,
.date48-comments-sheet__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 150px;
  color: rgba(73, 43, 54, .48);
  text-align: center;
}

.date48-comments-sheet__empty strong {
  color: #573541;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 600;
}

.date48-comments-sheet__empty span {
  margin-top: 4px;
  font-size: 11px;
}

.date48-comments-composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  align-items: end;
  gap: 9px;
  padding-top: 11px;
  border-top: 1px solid rgba(93, 56, 69, .075);
}

.date48-comments-composer textarea {
  width: 100%;
  min-height: 42px;
  max-height: 110px;
  box-sizing: border-box;
  resize: none;
  padding: 11px 13px;
  color: #432932;
  font: inherit;
  font-size: 13px;
  line-height: 1.35;
  border: 1px solid rgba(102, 62, 77, .11);
  outline: none;
  border-radius: 16px;
  background: #fff;
}

.date48-comments-composer textarea:focus {
  border-color: rgba(151, 67, 96, .34);
  box-shadow: 0 0 0 3px rgba(151, 67, 96, .06);
}

.date48-comments-composer > button {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  color: #fff;
  font-size: 20px;
  border: 0;
  border-radius: 15px;
  background:
    linear-gradient(
      145deg,
      #aa4d69,
      #7d344c
    );
  box-shadow:
    0 8px 18px rgba(126, 53, 77, .18);
}

.date48-comments-composer > button:disabled {
  opacity: .36;
  box-shadow: none;
}

/* /date48_feed_comments_ui_v1_20260920 */


/* DATE48 CSS SOURCE 28: /assets/social-rail-v2-20260920_112916.css */
/* date48_social_rail_mobile_comments_v2_20260920 */

/*
 * Reset the real comment button itself.
 * The visible circle is the nested comment-icon;
 * this prevents the second grey rectangular layer.
 */
body:has(.date48-real-feed)
.date48-reference-post__action--comment {
  -webkit-appearance: none !important;
  appearance: none !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 46px !important;

  padding: 0 !important;

  border: 0 !important;
  outline: 0 !important;

  color: inherit !important;

  background: transparent !important;

  box-shadow: none !important;

  cursor: pointer !important;

  -webkit-tap-highlight-color:
    transparent !important;
}


/* Same vertical rhythm for like/comment counters. */

body:has(.date48-real-feed)
.date48-reference-post__action--like {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 46px !important;

  -webkit-tap-highlight-color:
    transparent !important;
}


body:has(.date48-real-feed)
.date48-social-count {
  display: block !important;

  min-height: 12px !important;

  margin-top: 3px !important;

  padding: 0 !important;

  color:
    rgba(255,255,255,.96) !important;

  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 700 !important;

  text-align: center !important;

  text-shadow:
    0 2px 8px
    rgba(15,7,10,.32) !important;

  pointer-events: none !important;
}


body:has(.date48-real-feed)
.date48-reference-post__action--like.is-active
.date48-reference-post__action-icon {
  transform:
    scale(1.03) !important;

  box-shadow:
    0 8px 22px
    rgba(120,40,68,.30) !important;
}


/*
 * Sheet must never become wider than the visual viewport.
 */

.date48-comments-layer {
  box-sizing: border-box !important;

  width: 100% !important;
  max-width: 100vw !important;

  padding-left:
    max(
      6px,
      env(safe-area-inset-left)
    ) !important;

  padding-right:
    max(
      6px,
      env(safe-area-inset-right)
    ) !important;

  overflow-x: hidden !important;
}


.date48-comments-sheet {
  box-sizing: border-box !important;

  width: 100% !important;
  max-width: 720px !important;
  min-width: 0 !important;

  margin:
    0 auto !important;

  overflow-x: hidden !important;
}


.date48-comments-sheet__head,
.date48-comments-sheet__list,
.date48-comment,
.date48-comment__body,
.date48-comments-composer {
  box-sizing: border-box !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}


.date48-comments-sheet__head > div {
  min-width: 0 !important;
}


.date48-comments-sheet__head strong {
  overflow: hidden !important;

  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}


.date48-comments-composer {
  grid-template-columns:
    minmax(0,1fr)
    42px !important;
}


.date48-comments-composer textarea {
  min-width: 0 !important;
  max-width: 100% !important;
}


.date48-comment p {
  max-width: 100% !important;

  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}


@media (max-width: 600px) {

  .date48-comments-layer {
    padding-left:
      max(
        6px,
        env(safe-area-inset-left)
      ) !important;

    padding-right:
      max(
        6px,
        env(safe-area-inset-right)
      ) !important;
  }


  .date48-comments-sheet {
    width:
      calc(
        100vw -
        max(
          12px,
          env(safe-area-inset-left)
          +
          env(safe-area-inset-right)
        )
      ) !important;

    max-width:
      calc(
        100vw - 12px
      ) !important;

    max-height:
      min(
        82dvh,
        720px
      ) !important;

    padding:
      8px
      14px
      calc(
        12px +
        env(safe-area-inset-bottom)
      )
      !important;

    border-radius:
      24px
      24px
      0
      0 !important;
  }


  .date48-comments-sheet__list {
    min-height:
      110px !important;
  }


  .date48-comments-composer {
    gap:
      8px !important;
  }

}

/* /date48_social_rail_mobile_comments_v2_20260920 */


/* DATE48 CSS SOURCE 29: /assets/comments-composer-v3-20260920_113517.css */
/* date48_comments_composer_mobile_v3_20260920 */

/*
 * iOS-safe comment composer.
 *
 * Grid on narrow Safari could still preserve an intrinsic textarea
 * width and push the send button outside the visible sheet.
 * Flex + flex-basis:0 removes that intrinsic-width pressure.
 */

.date48-comments-composer {
  box-sizing: border-box !important;

  display: flex !important;
  align-items: flex-end !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  gap: 8px !important;
}


.date48-comments-composer textarea {
  box-sizing: border-box !important;

  flex:
    1
    1
    0 !important;

  width: 0 !important;
  min-width: 0 !important;
  max-width: 100% !important;

  margin: 0 !important;
}


.date48-comments-composer > button {
  box-sizing: border-box !important;

  flex:
    0
    0
    40px !important;

  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;

  margin: 0 !important;
}


@media (max-width: 600px) {

  .date48-comments-sheet {
    box-sizing: border-box !important;

    width:
      calc(
        100vw -
        12px
      )
      !important;

    max-width:
      calc(
        100vw -
        12px
      )
      !important;

    margin:
      0
      6px
      !important;
  }


  .date48-comments-sheet__list,
  .date48-comments-composer {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

}

/* /date48_comments_composer_mobile_v3_20260920 */


/* DATE48 CSS SOURCE 30: /assets/comments-composer-v4-20260920_114121.css */
/* date48_comments_composer_mobile_v4_20260920 */

/*
 * One source of horizontal spacing:
 * the fixed overlay owns the 6px safe gutter.
 */

.date48-comments-layer {
  box-sizing: border-box !important;

  width: 100% !important;
  max-width: 100% !important;

  padding-left:
    max(
      6px,
      env(safe-area-inset-left)
    ) !important;

  padding-right:
    max(
      6px,
      env(safe-area-inset-right)
    ) !important;

  overflow-x: hidden !important;
}


/*
 * Do NOT calculate sheet width from 100vw here.
 * It previously combined viewport width + parent padding + margins.
 */

.date48-comments-sheet {
  box-sizing: border-box !important;

  flex:
    0
    1
    720px !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: 720px !important;

  margin:
    0
    auto !important;

  overflow-x: hidden !important;
}


/*
 * Composer itself can never exceed the sheet content box.
 */

.date48-comments-composer {
  box-sizing: border-box !important;

  display: flex !important;
  align-items: flex-end !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;

  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;

  gap: 8px !important;

  overflow: hidden !important;
}


/*
 * Critical iOS rule:
 * flex-basis:0 + width:0 removes textarea intrinsic width.
 */

.date48-comments-composer textarea {
  box-sizing: border-box !important;

  flex:
    1
    1
    0 !important;

  width: 0 !important;
  min-width: 0 !important;
  max-width: none !important;

  margin: 0 !important;

  transform: none !important;
}


/*
 * Send button always consumes exactly 40px.
 */

.date48-comments-composer > button {
  box-sizing: border-box !important;

  position: static !important;

  flex:
    0
    0
    40px !important;

  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;

  height: 42px !important;

  margin: 0 !important;

  inset: auto !important;
  right: auto !important;
  left: auto !important;

  transform: none !important;
}


/*
 * Prevent any nested content from creating horizontal overflow.
 */

.date48-comments-sheet__head,
.date48-comments-sheet__list,
.date48-comment,
.date48-comment__body,
.date48-comments-composer {
  min-width: 0 !important;
  max-width: 100% !important;
}


@media (max-width: 600px) {

  .date48-comments-layer {
    padding-left:
      max(
        6px,
        env(safe-area-inset-left)
      ) !important;

    padding-right:
      max(
        6px,
        env(safe-area-inset-right)
      ) !important;
  }


  .date48-comments-sheet {
    flex-basis:
      100% !important;

    width:
      100% !important;

    max-width:
      100% !important;

    margin:
      0 !important;
  }


  .date48-comments-composer textarea {
    font-size:
      16px !important;
  }

}

/* /date48_comments_composer_mobile_v4_20260920 */


/* DATE48 CSS SOURCE 31: /assets/feed-controls-width-v1-20260920_121823.css */
/*
 * DATE48 — FEED CONTROLS WIDTH FIX V1
 */

@media (max-width: 600px) {

  .d48-feed-sheet {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;

    margin-left: 8px !important;
    margin-right: 8px !important;

    padding-left: 13px !important;
    padding-right: 13px !important;

    border-radius:
      27px 27px 0 0 !important;
  }

  .d48-feed-head,
  .d48-feed-section,
  .d48-feed-actions,
  .d48-feed-chips,
  .d48-feed-age {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .d48-feed-head > div {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .d48-feed-close {
    flex: 0 0 38px !important;
    margin-right: 0 !important;
  }

  .d48-feed-section {
    overflow: hidden !important;
  }

  .d48-feed-chips {
    display: flex !important;
    flex-wrap: wrap !important;
  }

  .d48-feed-chips button {
    flex: 0 1 auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .d48-feed-age {
    grid-template-columns:
      minmax(0, 1fr)
      auto
      minmax(0, 1fr) !important;
  }

  .d48-feed-age label {
    width: 100% !important;
    min-width: 0 !important;
  }

  .d48-feed-age input {
    min-width: 0 !important;
  }

  .d48-feed-actions {
    grid-template-columns:
      minmax(0, .72fr)
      minmax(0, 1.72fr) !important;

    gap: 8px !important;
  }

  .d48-feed-primary,
  .d48-feed-secondary {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}


/* DATE48 CSS SOURCE 32: /assets/home-overflow-source-fix-v1-20260920_123622.css */
/*
 * DATE48 HOME — CONFIRMED HORIZONTAL OVERFLOW FIX V1
 * Only fixes sizing math of the two horizontal rails.
 */

@media (max-width: 620px) {

  body:has(.date48-real-feed)
  .date48-inline-filters {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body:has(.date48-real-feed)
  .date48-inline-stories {
    box-sizing: border-box !important;
    min-width: 0 !important;
  }

}


/* DATE48 CSS SOURCE 33: /assets/first-move-premium-card-v1-1-20260922_021116.css */
/* date48_first_move_runtime_css_v1 */

.date48-first-move-runtime {
  width: min(100%, 520px);
  box-sizing: border-box;
  margin: 4px auto 22px;
  padding: 17px;
  border: 1px solid rgba(93, 49, 64, .10);
  border-radius: 22px;
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.96),
      rgba(249,244,242,.92)
    );
  box-shadow:
    0 16px 44px rgba(56,28,38,.075);
}

.date48-first-move-runtime__top {
  display: flex;
  align-items: center;
  gap: 9px;
}

.date48-first-move-runtime__spark {
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
  border-radius: 999px;
  background: #702d45;
  color: #fffaf8;
  font-size: 14px;
}

.date48-first-move-runtime__title {
  color: #312126;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 750;
  letter-spacing: -.01em;
}

.date48-first-move-runtime__copy {
  margin: 11px 0 0;
  color: #816e75;
  font-size: 13px;
  line-height: 1.42;
}

.date48-first-move-runtime__generate {
  width: 100%;
  min-height: 45px;
  margin-top: 15px;
  padding: 0 16px;
  border: 0;
  border-radius: 15px;
  background: #702d45;
  color: #fffaf8;
  font: inherit;
  font-size: 14px;
  font-weight: 720;
  cursor: pointer;
  box-shadow:
    0 9px 24px rgba(92,37,57,.17);
  -webkit-tap-highlight-color: transparent;
}

.date48-first-move-runtime__generate:active {
  transform: scale(.985);
}

.date48-first-move-runtime__generate:disabled {
  opacity: .6;
}

.date48-first-move-runtime__options {
  display: grid;
  gap: 8px;
  margin-top: 15px;
}

.date48-first-move-runtime__option {
  width: 100%;
  box-sizing: border-box;
  padding: 12px 13px;
  border: 1px solid rgba(102,58,72,.09);
  border-radius: 16px;
  background: rgba(255,255,255,.84);
  color: #35272c;
  text-align: left;
  font: inherit;
  cursor: pointer;
  box-shadow:
    0 6px 18px rgba(56,28,38,.035);
  -webkit-tap-highlight-color: transparent;
}

.date48-first-move-runtime__option:active {
  transform: scale(.985);
}

.date48-first-move-runtime__tone {
  display: block;
  margin-bottom: 4px;
  color: #92546a;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.date48-first-move-runtime__text {
  display: block;
  font-size: 14px;
  line-height: 1.4;
}

.date48-first-move-runtime__error {
  margin: 11px 0 0;
  color: #9d4058;
  font-size: 12px;
  line-height: 1.4;
}

.date48-first-move-runtime__note {
  display: block;
  margin-top: 11px;
  color: #9a888f;
  font-size: 11px;
  line-height: 1.35;
}

@media (max-width: 560px) {
  .date48-first-move-runtime {
    padding: 16px;
    border-radius: 20px;
  }
}

/* /date48_first_move_runtime_css_v1 */


/* =========================================================
   DATE48 FIRST MOVE — REGENERATE V2
   ========================================================= */

.date48-first-move-runtime__generate.is-regenerate {
  min-height: 42px;
  margin-top: 12px;
  border:
    1px solid
    rgba(112, 45, 69, .13);
  background:
    rgba(112, 45, 69, .065);
  color:
    #702d45;
  box-shadow:
    none;
  font-size:
    13px;
  font-weight:
    720;
}

.date48-first-move-runtime__generate.is-regenerate:active {
  transform:
    scale(.985);
}

.date48-first-move-runtime__generate:disabled {
  opacity:
    .58;
  cursor:
    default;
}


/*
 * Global settings remain available where they have meaning.
 * The feed keeps its own settings sheet.
 * Direct chat does not show a contextless gear.
 */
body.date48-direct-chat-open
.topbar__settings {
  display:
    none !important;
}

/* /date48_first_move_regenerate_v2_20260921 */

/* date48_first_move_premium_card_v1 */

.date48-first-move-runtime {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: min(100%, 520px);
  box-sizing: border-box;
  margin: 4px auto 22px;
  padding: 20px 20px 18px;

  border:
    1px solid
    rgba(180, 92, 119, .16);

  border-radius: 24px;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.985) 0%,
      rgba(255,250,249,.975) 45%,
      rgba(250,240,243,.95) 100%
    );

  box-shadow:
    0 20px 50px rgba(74, 39, 51, .085),
    0 4px 14px rgba(112, 45, 69, .035),
    inset 0 1px 0 rgba(255,255,255,.98);
}

.date48-first-move-runtime::before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 210px;
  height: 210px;
  top: -105px;
  right: -68px;
  border-radius: 50%;
  pointer-events: none;

  background:
    radial-gradient(
      circle,
      rgba(218, 124, 151, .16) 0%,
      rgba(232, 174, 190, .09) 38%,
      rgba(255,255,255,0) 72%
    );

  filter: blur(2px);
}

.date48-first-move-runtime::after {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: 0;
  border-radius: 23px;
  pointer-events: none;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.54);
}

.date48-first-move-runtime > * {
  position: relative;
  z-index: 1;
}

.date48-first-move-runtime__top {
  display: flex;
  align-items: center;
  gap: 13px;
}

.date48-first-move-runtime__spark {
  position: relative;
  display: grid;
  place-items: center;

  width: 52px;
  height: 52px;
  flex: 0 0 52px;

  border:
    1px solid
    rgba(171, 70, 105, .20);

  border-radius: 999px;

  background:
    radial-gradient(
      circle at 34% 28%,
      #e8a5b8 0%,
      #c95f81 32%,
      #a3375d 68%,
      #842947 100%
    );

  color: transparent;
  font-size: 0;

  box-shadow:
    0 9px 24px rgba(137, 42, 75, .18),
    0 0 0 7px rgba(197, 88, 124, .065),
    inset 0 1px 1px rgba(255,255,255,.68),
    inset 0 -8px 18px rgba(95, 23, 49, .13);
}

.date48-first-move-runtime__spark::before {
  content: "♥";
  display: block;
  color: #fff8f8;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 22px;
  line-height: 1;
  text-shadow:
    0 2px 8px rgba(96, 26, 51, .16);
}

.date48-first-move-runtime__spark::after {
  content: "✦";
  position: absolute;
  top: -6px;
  right: -9px;
  display: block;
  color: #c75a7e;
  font-size: 12px;
  line-height: 1;
  text-shadow:
    0 2px 7px rgba(142, 49, 80, .13);
}

.date48-first-move-runtime__title {
  color: #382029;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      19px,
      4.7vw,
      22px
    );

  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -.025em;
}

.date48-first-move-runtime__copy {
  margin:
    8px
    0
    0
    65px;

  color: #8d777f;
  font-size: 13px;
  line-height: 1.42;
}

.date48-first-move-runtime__generate {
  position: relative;

  width: 100%;
  min-height: 54px;

  margin-top: 18px;

  padding:
    0
    48px
    0
    20px;

  border:
    1px solid
    rgba(157, 56, 91, .18);

  border-radius: 18px;

  background:
    linear-gradient(
      135deg,
      #963255 0%,
      #812b49 48%,
      #6f233e 100%
    );

  color: #fffafa;

  font: inherit;
  font-size: 15px;
  font-weight: 740;
  letter-spacing: -.005em;

  cursor: pointer;

  box-shadow:
    0 12px 28px rgba(112, 37, 65, .22),
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -8px 18px rgba(72, 19, 39, .09);

  transition:
    transform .16s ease,
    box-shadow .16s ease,
    opacity .16s ease;

  -webkit-tap-highlight-color: transparent;
}

.date48-first-move-runtime__generate::after {
  content: "›";
  position: absolute;
  right: 19px;
  top: 50%;
  transform: translateY(-53%);
  color: rgba(255,255,255,.90);
  font-size: 29px;
  line-height: 1;
  font-weight: 300;
}

.date48-first-move-runtime__generate:active {
  transform: scale(.985);

  box-shadow:
    0 7px 18px rgba(112, 37, 65, .17),
    inset 0 1px 0 rgba(255,255,255,.20);
}

.date48-first-move-runtime__generate:disabled {
  opacity: .58;
  cursor: default;
}

.date48-first-move-runtime__generate:disabled::after {
  opacity: .45;
}

.date48-first-move-runtime__note {
  position: relative;
  display: block;

  margin-top: 15px;

  padding:
    13px
    0
    0
    25px;

  border-top:
    1px solid
    rgba(112, 45, 69, .075);

  color: #9a888f;
  font-size: 11px;
  line-height: 1.38;
}

.date48-first-move-runtime__note::before {
  content: "i";
  position: absolute;
  left: 1px;
  top: 12px;

  display: grid;
  place-items: center;

  width: 16px;
  height: 16px;

  border:
    1px solid
    rgba(117, 82, 94, .46);

  border-radius: 999px;

  color: #856f77;

  font-family:
    Georgia,
    serif;

  font-size: 11px;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.date48-first-move-runtime__options {
  display: grid;
  gap: 9px;
  margin-top: 17px;
}

.date48-first-move-runtime__option {
  width: 100%;
  box-sizing: border-box;

  padding: 13px 14px;

  border:
    1px solid
    rgba(121, 65, 84, .09);

  border-radius: 17px;

  background:
    rgba(255,255,255,.88);

  color: #35272c;
  text-align: left;
  font: inherit;
  cursor: pointer;

  box-shadow:
    0 7px 20px rgba(56,28,38,.042),
    inset 0 1px 0 rgba(255,255,255,.76);

  transition:
    transform .15s ease,
    box-shadow .15s ease;

  -webkit-tap-highlight-color: transparent;
}

.date48-first-move-runtime__option:active {
  transform: scale(.985);
}

.date48-first-move-runtime__tone {
  margin-bottom: 5px;
  color: #96546c;
}

.date48-first-move-runtime__generate.is-regenerate {
  min-height: 45px;
  margin-top: 13px;

  padding:
    0
    16px;

  border:
    1px solid
    rgba(112, 45, 69, .12);

  border-radius: 16px;

  background:
    linear-gradient(
      145deg,
      rgba(112,45,69,.075),
      rgba(112,45,69,.045)
    );

  color: #702d45;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.62);

  font-size: 13px;
  font-weight: 720;
}

.date48-first-move-runtime__generate.is-regenerate::after {
  content: none;
}

@media (max-width: 430px) {
  .date48-first-move-runtime {
    padding:
      18px
      17px
      16px;

    border-radius: 22px;
  }

  .date48-first-move-runtime::after {
    border-radius: 21px;
  }

  .date48-first-move-runtime__spark {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
  }

  .date48-first-move-runtime__spark::before {
    font-size: 20px;
  }

  .date48-first-move-runtime__top {
    gap: 12px;
  }

  .date48-first-move-runtime__title {
    font-size:
      clamp(
        18px,
        5vw,
        21px
      );
  }

  .date48-first-move-runtime__copy {
    margin-left: 60px;
  }

  .date48-first-move-runtime__generate {
    min-height: 52px;
  }
}


/* date48_first_move_premium_card_v1_1 */

/*
  V1.1:
  - better balanced two-line title
  - slightly lighter medallion
  - calmer glow
  - lighter CTA
*/

.date48-first-move-runtime::before {
  width: 180px;
  height: 180px;
  top: -92px;
  right: -56px;

  background:
    radial-gradient(
      circle,
      rgba(218,124,151,.115) 0%,
      rgba(232,174,190,.06) 40%,
      rgba(255,255,255,0) 72%
    );
}

.date48-first-move-runtime__top {
  align-items: center;
  gap: 12px;
}

.date48-first-move-runtime__spark {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;

  box-shadow:
    0 7px 18px rgba(137,42,75,.14),
    0 0 0 5px rgba(197,88,124,.045),
    inset 0 1px 1px rgba(255,255,255,.62),
    inset 0 -6px 15px rgba(95,23,49,.10);
}

.date48-first-move-runtime__spark::before {
  font-size: 19px;
}

.date48-first-move-runtime__spark::after {
  top: -5px;
  right: -8px;
  font-size: 10px;
}

.date48-first-move-runtime__title {
  flex: 0 1 auto;

  max-width: 16ch;

  color: #3c242c;

  font-size:
    clamp(
      18px,
      4.65vw,
      20px
    );

  line-height: 1.08;
  letter-spacing: -.022em;

  text-wrap: balance;
}

.date48-first-move-runtime__copy {
  margin:
    9px
    0
    0
    58px;
}

.date48-first-move-runtime__generate {
  min-height: 50px;

  margin-top: 17px;

  border-radius: 17px;

  font-size: 14.5px;

  box-shadow:
    0 9px 22px rgba(112,37,65,.18),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -6px 14px rgba(72,19,39,.07);
}

.date48-first-move-runtime__generate::after {
  right: 18px;
  font-size: 27px;
}

.date48-first-move-runtime__note {
  margin-top: 14px;
}

@media (max-width: 430px) {
  .date48-first-move-runtime__spark {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
  }

  .date48-first-move-runtime__spark::before {
    font-size: 18px;
  }

  .date48-first-move-runtime__title {
    max-width: 16ch;

    font-size:
      clamp(
        18px,
        4.7vw,
        19.5px
      );

    text-wrap: balance;
  }

  .date48-first-move-runtime__copy {
    margin-left: 56px;
  }

  .date48-first-move-runtime__generate {
    min-height: 50px;
  }
}



/* DATE48 CSS SOURCE 34: /assets/bottom-nav-premium-v2-20260921_013127.css */
/*
 * Date48 Bottom Navigation — Premium V2
 *
 * Safe-area remains inside the existing component.
 * This layer only controls the visual floating distance
 * and premium surface treatment.
 */

html body .bottom-nav {
  bottom: 14px !important;

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.965) 0%,
      rgba(251,247,247,.94) 100%
    ) !important;

  border:
    1px solid
    rgba(113, 78, 91, .11) !important;

  border-radius:
    30px !important;

  box-shadow:
    0 18px 42px rgba(57, 37, 46, .12),
    0 5px 14px rgba(57, 37, 46, .055),
    inset 0 1px 0 rgba(255,255,255,.92) !important;

  backdrop-filter:
    blur(22px) saturate(1.08) !important;

  -webkit-backdrop-filter:
    blur(22px) saturate(1.08) !important;

  overflow: visible !important;
}

/* restrained premium highlight */
html body .bottom-nav::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  top: 0;
  height: 1px;
  border-radius: 999px;
  pointer-events: none;
  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(166, 92, 118, .20),
      transparent
    );
}

/* navigation items */
html body .bottom-nav a,
html body .bottom-nav button {
  transition:
    color .18s ease,
    opacity .18s ease,
    transform .18s ease !important;
}

html body .bottom-nav a:active,
html body .bottom-nav button:active {
  transform: translateY(1px) scale(.985);
}

/* active tab: richer Date48 accent */
html body .bottom-nav a[aria-current="page"],
html body .bottom-nav button[aria-current="page"],
html body .bottom-nav .active,
html body .bottom-nav .is-active {
  color: #984c69 !important;
}

/*
 * Keep the existing central "48" architecture.
 * Give it only a little more depth instead of
 * replacing its design.
 */
html body .bottom-nav [class*="center"],
html body .bottom-nav [class*="middle"] {
  filter:
    drop-shadow(
      0 5px 10px
      rgba(84, 51, 64, .075)
    );
}


/* DATE48 CSS SOURCE 35: /assets/bottom-nav-home-equal-v2-20260921_014514.css */
/*
 * Date48 bottom nav home equalizer v2
 *
 * ui-feed-app-shell has a more-specific Home-only rule:
 * body:has(.date48-real-feed) .bottom-nav
 *
 * Match/exceed that specificity and use the same
 * external bottom offset as the other tabs.
 */

html body:has(.date48-real-feed) .bottom-nav {
  bottom: 14px !important;
}


/* DATE48 CSS SOURCE 36: /assets/date48-map-large-clean-v1-20260922_000948.css */
/* =========================================================
   DATE48 — MAP LARGE + DEBUG CLEAN V1
   ========================================================= */


/* ---------------------------------------------------------
   Remove temporary production diagnostic badges.
   These selectors came from profile DOM fingerprint testing.
   --------------------------------------------------------- */

body::after,
.date48-profile-ref::before,
.d48-premium-person::after {
  content:
    none !important;

  display:
    none !important;

  visibility:
    hidden !important;
}


/* ---------------------------------------------------------
   REAL YANDEX MAP — larger premium viewport
   --------------------------------------------------------- */

.d48v41-map {
  height:
    300px !important;

  min-height:
    300px !important;

  border-radius:
    26px !important;

  box-shadow:
    0 18px 46px
    rgba(57,34,43,.10),
    inset
    0 1px 0
    rgba(255,255,255,.78) !important;
}


/*
 * Actual Yandex canvas fills the new larger card.
 */
.d48v42-yandex-canvas {
  position:
    absolute !important;

  inset:
    0 !important;

  width:
    100% !important;

  height:
    100% !important;

  border-radius:
    inherit !important;
}


/*
 * Give map imagery a tiny premium softening,
 * but don't obscure labels, roads or attribution.
 */
.d48v42-yandex-canvas::after {
  background:
    linear-gradient(
      180deg,
      rgba(255,247,244,.035),
      rgba(255,247,244,.012)
    ) !important;
}


/* ---------------------------------------------------------
   REAL PERSON MARKERS
   --------------------------------------------------------- */

.d48ym-avatar {
  width:
    46px !important;

  height:
    46px !important;

  border:
    2px solid
    rgba(255,255,255,.99) !important;

  box-shadow:
    0 0 0 4px
    rgba(178,44,92,.11),
    0 10px 26px
    rgba(47,29,36,.22) !important;
}

.d48ym-avatar__online {
  width:
    10px !important;

  height:
    10px !important;
}


/* ---------------------------------------------------------
   MAP CTA
   --------------------------------------------------------- */

.d48v41-map-open {
  top:
    13px !important;

  right:
    13px !important;

  min-height:
    36px !important;

  padding:
    0 13px !important;

  gap:
    5px !important;

  font-size:
    10px !important;

  background:
    rgba(255,255,255,.90) !important;

  box-shadow:
    0 7px 19px
    rgba(54,33,40,.11) !important;
}

.d48v41-map-open > span {
  width:
    20px !important;

  height:
    20px !important;

  font-size:
    12px !important;
}

.d48v41-map-open > b {
  font-size:
    14px !important;
}


/*
 * Preserve rounded Yandex canvas.
 */
.d48v42-yandex-canvas ymaps {
  border-radius:
    inherit !important;
}


/*
 * We intentionally DO NOT hide Yandex copyright,
 * attribution or provider controls.
 */


@media (max-width: 430px) {

  .d48v41-map {
    height:
      300px !important;

    min-height:
      300px !important;

    border-radius:
      24px !important;
  }
}


@media (max-width: 390px) {

  .d48v41-map {
    height:
      286px !important;

    min-height:
      286px !important;
  }

  .d48ym-avatar {
    width:
      44px !important;

    height:
      44px !important;
  }
}


/* /DATE48 MAP LARGE + DEBUG CLEAN V1 */


/* DATE48 CSS SOURCE 37: /assets/date48-premium-hero-card-v1-3-20260922_114824.css */
/* DATE48 PREMIUM HERO CARD V1.3 */


/*
 * Live proof:
 * cleaner and quieter; real people remain visible
 * in stories, people cards and Yandex map.
 */
.d48v4-liveproof {
  display:
    inline-flex !important;

  align-items:
    center !important;

  width:
    fit-content !important;

  max-width:
    calc(100% - 12px) !important;

  min-height:
    35px !important;

  margin-top:
    16px !important;

  padding:
    0 13px !important;

  gap:
    9px !important;

  border:
    1px solid
    rgba(255,255,255,.20) !important;

  border-radius:
    999px !important;

  background:
    rgba(24,13,17,.34) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.08),
    0 8px 24px
    rgba(0,0,0,.12) !important;

  backdrop-filter:
    blur(15px)
    saturate(1.05);

  -webkit-backdrop-filter:
    blur(15px)
    saturate(1.05);
}


.d48v4-live-dot {
  width:
    9px !important;

  height:
    9px !important;

  flex:
    0 0 auto !important;

  border:
    2px solid
    rgba(255,255,255,.94) !important;

  border-radius:
    50% !important;

  background:
    #43cf63 !important;

  box-shadow:
    0 0 0 4px
    rgba(67,207,99,.12),
    0 0 12px
    rgba(67,207,99,.34) !important;
}


.d48v4-live-copy {
  color:
    rgba(255,255,255,.98) !important;

  font-size:
    10.5px !important;

  font-weight:
    650 !important;
}


.d48v4-live-avatars {
  display:
    none !important;
}


/* Hero typography/composition */

.d48v3-hero {
  min-height:
    364px !important;

  padding:
    max(
      22px,
      env(safe-area-inset-top)
    )
    20px
    111px !important;

  background-position:
    center 48% !important;
}


.d48v3-hero::before {
  background:
    linear-gradient(
      90deg,
      rgba(12,7,9,.70) 0%,
      rgba(12,7,9,.38) 39%,
      rgba(12,7,9,.08) 74%
    ),
    linear-gradient(
      180deg,
      rgba(8,5,6,.06) 0%,
      rgba(8,5,6,.015) 44%,
      rgba(8,5,6,.53) 100%
    ) !important;
}


.d48v3-brand {
  font-size:
    clamp(
      52px,
      13.5vw,
      66px
    ) !important;

  line-height:
    .90 !important;

  letter-spacing:
    -4.4px !important;

  text-shadow:
    0 4px 22px
    rgba(0,0,0,.23) !important;
}


.d48v41-hero-copy {
  width:
    min(
      278px,
      73%
    ) !important;

  margin-top:
    14px !important;

  font-size:
    20px !important;

  line-height:
    1.10 !important;

  letter-spacing:
    -.38px !important;
}


.d48v4-handnote {
  top:
    158px !important;

  right:
    17px !important;

  width:
    116px !important;

  color:
    rgba(255,217,229,.94) !important;

  font-size:
    14px !important;

  line-height:
    1.08 !important;

  opacity:
    .94 !important;

  transform:
    rotate(-6deg) !important;

  text-shadow:
    0 3px 12px
    rgba(0,0,0,.33) !important;
}


/*
 * Main 48-hour card:
 * glass / ivory instead of a plain white rectangle.
 */
.d48v3-mode {
  position:
    absolute !important;

  z-index:
    4 !important;

  left:
    20px !important;

  right:
    20px !important;

  bottom:
    15px !important;

  display:
    grid !important;

  grid-template-columns:
    56px
    minmax(0,1fr)
    auto !important;

  align-items:
    center !important;

  gap:
    13px !important;

  min-height:
    82px !important;

  padding:
    11px
    14px
    11px
    12px !important;

  overflow:
    hidden !important;

  border:
    1px solid
    rgba(255,255,255,.74) !important;

  border-radius:
    28px !important;

  background:
    linear-gradient(
      135deg,
      rgba(255,252,250,.95),
      rgba(250,244,243,.89)
    ) !important;

  box-shadow:
    0 19px 46px
    rgba(39,21,28,.17),
    inset
    0 1px 0
    rgba(255,255,255,.96) !important;

  backdrop-filter:
    blur(24px)
    saturate(1.12);

  -webkit-backdrop-filter:
    blur(24px)
    saturate(1.12);
}


.d48v3-mode::before {
  content:
    "";

  position:
    absolute;

  left:
    -30px;

  top:
    -36px;

  width:
    126px;

  height:
    126px;

  pointer-events:
    none;

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(205,44,101,.13) 0%,
      rgba(205,44,101,.04) 48%,
      transparent 72%
    );
}


.d48v3-mode-icon {
  position:
    relative;

  display:
    grid !important;

  place-items:
    center !important;

  width:
    52px !important;

  height:
    52px !important;

  color:
    #b32d5d !important;

  font-size:
    29px !important;

  border:
    1px solid
    rgba(184,41,91,.05) !important;

  border-radius:
    50% !important;

  background:
    linear-gradient(
      145deg,
      #fcecf2,
      #f6e2ea
    ) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.94),
    0 7px 17px
    rgba(156,37,79,.07) !important;
}


.d48v3-mode-copy strong {
  color:
    #181416 !important;

  font-size:
    16px !important;

  line-height:
    1.08 !important;

  font-weight:
    780 !important;

  letter-spacing:
    -.22px !important;
}


.d48v3-mode-copy span {
  margin-top:
    5px !important;

  color:
    #73686b !important;

  font-size:
    10.5px !important;

  line-height:
    1.23 !important;
}


/* Refined toggle */

.d48v3-toggle {
  width:
    61px !important;

  height:
    38px !important;

  border:
    0 !important;

  border-radius:
    999px !important;

  background:
    #dcd6d8 !important;

  box-shadow:
    inset 0 1px 4px
    rgba(52,36,42,.10) !important;
}


.d48v3-toggle::after {
  width:
    32px !important;

  height:
    32px !important;

  top:
    3px !important;

  left:
    3px !important;

  background:
    #fff !important;

  box-shadow:
    0 3px 11px
    rgba(52,29,38,.22) !important;
}


.d48v3-toggle.is-on {
  background:
    linear-gradient(
      135deg,
      #cf3e72,
      #a92052
    ) !important;

  box-shadow:
    inset 0 1px 1px
    rgba(255,255,255,.20),
    0 5px 15px
    rgba(179,37,90,.17) !important;
}


.d48v3-toggle.is-on::after {
  transform:
    translateX(23px) !important;
}


@media (max-width:390px) {

  .d48v3-hero {
    min-height:
      356px !important;
  }

  .d48v3-mode {
    left:
      16px !important;

    right:
      16px !important;

    grid-template-columns:
      50px
      minmax(0,1fr)
      auto !important;

    gap:
      10px !important;

    min-height:
      78px !important;

    padding:
      10px
      12px
      10px
      10px !important;

    border-radius:
      25px !important;
  }

  .d48v3-mode-icon {
    width:
      48px !important;

    height:
      48px !important;
  }

  .d48v3-mode-copy strong {
    font-size:
      15px !important;
  }

  .d48v3-toggle {
    width:
      58px !important;

    height:
      36px !important;
  }

  .d48v3-toggle::after {
    width:
      30px !important;

    height:
      30px !important;
  }

  .d48v3-toggle.is-on::after {
    transform:
      translateX(22px) !important;
  }
}


/* /DATE48 PREMIUM HERO CARD V1.3 */


/* DATE48 CSS SOURCE 38: /assets/people-layout-v3-20260922_123207.css */
/* =========================================================
   DATE48 — PEOPLE LAYOUT V3
   Precise CSS-only correction.

   - Hide dead settings gear only on People.
   - Do not shift the whole page.
   - Tighten only existing positive spacing.
   - Do not modify Pinterest masonry.
   ========================================================= */


/* Dead settings action:
   exact shared-shell selector confirmed by live audit. */

body:has(.date48-people-page--v3)
.topbar__settings {
  display:
    none !important;
}


/* With the right-side action gone, keep brand naturally left. */

body:has(.date48-people-page--v3)
.topbar {
  justify-content:
    flex-start !important;

  margin-bottom:
    4px !important;
}


/* Keep logo exactly where shell places it.
   No transforms. No negative margins. */

body:has(.date48-people-page--v3)
.brand,
body:has(.date48-people-page--v3)
.brand__logo {
  transform:
    none !important;
}


/* Existing People page had 8px top padding.
   Remove only that positive padding. */

.date48-people-page--v3 {
  padding-top:
    0 !important;
}


/* Existing premium layer:
   17px 16px 11px.
   Reduce top only; preserve horizontal alignment. */

.date48-people-page--v3
.date48-people-v3__head {
  padding:
    7px
    16px
    8px !important;
}


/* Keep the editorial typography itself unchanged. */

.date48-people-page--v3
.date48-people-v3__head h1 {
  margin-top:
    0 !important;
}


.date48-people-page--v3
.date48-people-v3__head p {
  margin-top:
    0 !important;
}


/* Existing filters:
   2px 16px 12px.
   Reduce only vertical whitespace. */

.date48-people-page--v3
.date48-people-v3__filters {
  padding:
    0
    16px
    8px !important;

  margin-top:
    0 !important;
}


/* Existing Compass:
   0 16px 13px.
   Keep its geometry but bring feed slightly closer. */

.date48-people-page--v3
.date48-people-v3__compass {
  margin:
    0
    16px
    10px !important;
}


/* Explicit protection:
   the actual Pinterest grid stays exactly as supplied
   by Wave 5.1. No column/gap/card/aspect overrides here. */


/* Narrow iPhones: same rhythm, no extra movement. */

@media (max-width: 390px) {

  body:has(.date48-people-page--v3)
  .topbar {
    margin-bottom:
      3px !important;
  }


  .date48-people-page--v3
  .date48-people-v3__head {
    padding-top:
      6px !important;

    padding-bottom:
      7px !important;
  }


  .date48-people-page--v3
  .date48-people-v3__filters {
    padding-bottom:
      7px !important;
  }


  .date48-people-page--v3
  .date48-people-v3__compass {
    margin-bottom:
      9px !important;
  }

}


/* DATE48 CSS SOURCE 39: /assets/people-layout-v3-1-20260922_124055.css */
/* DATE48 PEOPLE V3.1
   Micro polish only.
   No whole-page movement.
   No navigation changes.
   No feed/card geometry changes.
*/


/* V3 currently uses 7px top padding here.
   Remove only those final positive pixels. */

.date48-people-page--v3
.date48-people-v3__head {
  padding-top:
    0 !important;

  padding-bottom:
    6px !important;
}


/* Current underlying title peaks around 43px.
   Reduce by roughly 9%, while keeping two-line editorial shape. */

.date48-people-page--v3
.date48-people-v3__head h1 {
  font-size:
    clamp(
      31px,
      8.5vw,
      39px
    ) !important;

  line-height:
    0.99 !important;

  letter-spacing:
    -0.04em !important;

  margin-bottom:
    4px !important;
}


/* Current V3 leaves 10px after Compass.
   Reduce by exactly 8px so the real people feed
   visually belongs to the same stack. */

.date48-people-page--v3
.date48-people-v3__compass {
  margin-bottom:
    2px !important;
}


@media (max-width: 390px) {

  .date48-people-page--v3
  .date48-people-v3__head h1 {
    font-size:
      clamp(
        30px,
        8.4vw,
        38px
      ) !important;
  }

}


/* DATE48 CSS SOURCE 40: /assets/date48-hero-clean-v1-20260922_131540.css */
/*
 * DATE48 HERO CLEAN V1
 *
 * Only text composition on the main image.
 * No fixed top strip.
 * No stories styling.
 * No places styling.
 * No people styling.
 * No map styling.
 * No navigation styling.
 */


/* Date48 — lighter visual weight, more of the photo remains visible */
.d48v3-page .d48v3-brand {
  font-size:
    clamp(
      48px,
      12vw,
      56px
    ) !important;

  line-height:
    .92 !important;

  letter-spacing:
    -3px !important;
}


/* Main promise — compact editorial block */
.d48v3-page .d48v41-hero-copy {
  width:
    min(
      245px,
      66%
    ) !important;

  margin-top:
    11px !important;

  font-size:
    17px !important;

  line-height:
    1.10 !important;

  letter-spacing:
    -.28px !important;
}


.d48v3-page
.d48v41-hero-line--soft {
  margin-bottom:
    3px !important;

  font-weight:
    430 !important;
}


.d48v3-page
.d48v41-hero-line:not(
  .d48v41-hero-line--soft
) {
  font-weight:
    630 !important;
}


/* Quiet proof chip */
.d48v3-page .d48v4-liveproof {
  min-height:
    30px !important;

  margin-top:
    12px !important;

  padding:
    0 11px !important;

  gap:
    7px !important;
}


.d48v3-page .d48v4-live-copy {
  font-size:
    9.5px !important;

  line-height:
    1.1 !important;

  font-weight:
    610 !important;
}


/* Handwritten phrase no longer competes with the headline */
.d48v3-page .d48v4-handnote {
  top:
    147px !important;

  right:
    14px !important;

  width:
    98px !important;

  font-size:
    12px !important;

  line-height:
    1.07 !important;

  opacity:
    .87 !important;

  transform:
    rotate(-5deg) !important;
}


@media (max-width:390px) {

  .d48v3-page .d48v3-brand {
    font-size:
      49px !important;
  }

  .d48v3-page .d48v41-hero-copy {
    width:
      235px !important;

    font-size:
      16.5px !important;
  }

  .d48v3-page .d48v4-handnote {
    top:
      144px !important;

    right:
      11px !important;

    width:
      92px !important;

    font-size:
      11.5px !important;
  }
}


/* /DATE48 HERO CLEAN V1 */


/* DATE48 CSS SOURCE 41: /assets/date48-hero-concept-v2-20260922_133038.css */
/*
 * DATE48 HERO CONCEPT V2
 *
 * Concept:
 * premium editorial restaurant hero,
 * cleaner hierarchy,
 * no changes outside the hero.
 */


/* ---------- PHOTO / COMPOSITION ---------- */

.d48v3-page .d48v3-hero {
  min-height:
    374px !important;

  padding:
    max(
      26px,
      env(safe-area-inset-top)
    )
    20px
    112px !important;

  background-image:
    url("/uploads/places/ruma-khabarovsk/03_atmosphere.webp") !important;

  background-size:
    cover !important;

  background-position:
    center 44% !important;
}


.d48v3-page .d48v3-hero::before {
  background:
    linear-gradient(
      90deg,
      rgba(9,5,7,.64) 0%,
      rgba(9,5,7,.37) 37%,
      rgba(9,5,7,.09) 68%,
      rgba(9,5,7,.025) 100%
    ),
    linear-gradient(
      180deg,
      rgba(7,4,5,.10) 0%,
      rgba(7,4,5,.025) 42%,
      rgba(7,4,5,.18) 67%,
      rgba(7,4,5,.59) 100%
    ) !important;
}


/* ---------- DATE48 SIGNATURE ---------- */

.d48v3-page .d48v3-brand {
  margin:
    1px 0 0 !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    clamp(
      55px,
      14.3vw,
      67px
    ) !important;

  line-height:
    .89 !important;

  font-weight:
    400 !important;

  letter-spacing:
    -4.5px !important;

  text-shadow:
    0 4px 22px
    rgba(0,0,0,.25) !important;
}


/* ---------- MAIN MESSAGE ---------- */

.d48v3-page .d48v41-hero-copy {
  display:
    grid !important;

  width:
    min(
      270px,
      70%
    ) !important;

  margin-top:
    13px !important;

  gap:
    0 !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    18px !important;

  line-height:
    1.12 !important;

  font-weight:
    400 !important;

  letter-spacing:
    -.28px !important;

  text-shadow:
    0 3px 17px
    rgba(0,0,0,.34) !important;
}


.d48v3-page
.d48v41-hero-line,
.d48v3-page
.d48v41-hero-line--soft,
.d48v3-page
.d48v41-hero-line:not(
  .d48v41-hero-line--soft
) {
  font-weight:
    400 !important;
}


.d48v3-page
.d48v41-hero-line--soft {
  margin-bottom:
    1px !important;

  color:
    rgba(255,255,255,.96) !important;
}


.d48v3-page
.d48v41-hero-line em {
  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    1.18em !important;

  font-style:
    normal !important;

  font-weight:
    400 !important;
}


/* ---------- HANDWRITTEN ACCENT ---------- */

.d48v3-page .d48v4-handnote {
  top:
    99px !important;

  right:
    15px !important;

  width:
    122px !important;

  color:
    rgba(255,218,231,.96) !important;

  font-family:
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    14px !important;

  font-style:
    italic !important;

  line-height:
    1.08 !important;

  text-align:
    right !important;

  opacity:
    .94 !important;

  transform:
    rotate(-7deg) !important;

  text-shadow:
    0 3px 13px
    rgba(0,0,0,.38) !important;
}


/* subtle handwritten underline */
.d48v3-page .d48v4-handnote::after {
  content:
    "";

  display:
    block;

  width:
    82px;

  height:
    1px;

  margin:
    7px 2px 0 auto;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,220,231,.88)
    );

  transform:
    rotate(-6deg);

  transform-origin:
    right center;
}


/* ---------- LIVE PROOF ---------- */

.d48v3-page .d48v4-liveproof {
  width:
    fit-content !important;

  max-width:
    calc(100% - 4px) !important;

  min-height:
    32px !important;

  margin-top:
    17px !important;

  padding:
    0 11px !important;

  gap:
    8px !important;

  border:
    1px solid
    rgba(255,255,255,.19) !important;

  border-radius:
    999px !important;

  background:
    rgba(18,10,13,.35) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.07),
    0 8px 22px
    rgba(0,0,0,.12) !important;

  backdrop-filter:
    blur(13px)
    saturate(1.04) !important;

  -webkit-backdrop-filter:
    blur(13px)
    saturate(1.04) !important;
}


.d48v3-page .d48v4-live-copy {
  font-size:
    9.7px !important;

  line-height:
    1 !important;

  font-weight:
    590 !important;

  letter-spacing:
    .01em !important;
}


/*
 * Intentionally untouched:
 *
 * .d48v3-mode
 * .d48v3-activities
 * .d48v3-story*
 * .d48v3-people*
 * .d48v3-place*
 * .d48v41-map*
 * .bottom-nav*
 */


@media (max-width:390px) {

  .d48v3-page .d48v3-hero {
    min-height:
      368px !important;

    background-position:
      center 43% !important;
  }

  .d48v3-page .d48v3-brand {
    font-size:
      57px !important;
  }

  .d48v3-page .d48v41-hero-copy {
    width:
      235px !important;

    font-size:
      17px !important;
  }

  .d48v3-page .d48v4-handnote {
    top:
      97px !important;

    right:
      11px !important;

    width:
      110px !important;

    font-size:
      13px !important;
  }

  .d48v3-page .d48v4-liveproof {
    margin-top:
      15px !important;
  }
}


/* /DATE48 HERO CONCEPT V2 */


/* DATE48 CSS SOURCE 42: /assets/date48-location-overlap-fix-v1-20260923_000609.css */
/*
 * DATE48_LOCATION_OVERLAP_FIX_V1
 *
 * The map is already visible on /48.
 * The legacy "Посмотреть на карте" overlay competes with
 * the new private-location actions and hides "Точка интереса".
 */

.d48v41-map .d48v41-map-open {
  display: none !important;
}


/*
 * With the legacy CTA gone, use the full top row for
 * the two search-center controls.
 */

.d48v41-map .d48loc-controls {
  left: 12px;
  right: 12px;

  justify-content: space-between;
}


.d48v41-map .d48loc-control {
  flex: 1 1 0;

  max-width: calc(50% - 4px);

  text-align: center;
}


@media (max-width: 390px) {

  .d48v41-map .d48loc-controls {
    left: 9px;
    right: 9px;
  }

}


/* /DATE48_LOCATION_OVERLAP_FIX_V1 */


/* DATE48 CSS SOURCE 43: /assets/date48-map-fullscreen-v1-20260923_001559.css */
/*
 * DATE48 MAP FULLSCREEN V1
 */


.d48map-expand-button {
  appearance: none;
  -webkit-appearance: none;

  width: 100%;
  min-height: 43px;

  margin: 9px 0 0;

  border:
    1px solid
    rgba(79, 52, 62, .10);

  border-radius: 15px;

  background:
    rgba(255, 255, 255, .90);

  box-shadow:
    0 7px 22px
    rgba(48, 30, 37, .06);

  color: #3a2b31;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;

  font:
    600 12px/1
    -apple-system,
    BlinkMacSystemFont,
    "SF Pro Text",
    Inter,
    system-ui,
    sans-serif;

  letter-spacing: -.01em;

  cursor: pointer;

  -webkit-tap-highlight-color:
    transparent;

  transition:
    transform .16s ease,
    background .16s ease;
}


.d48map-expand-button > span {
  font-size: 15px;
  line-height: 1;
}


.d48map-expand-button:active {
  transform: scale(.985);

  background:
    rgba(249, 244, 246, .97);
}


/*
 * Legacy CTA stays hidden on normal map.
 */
.d48v41-map:not(.is-expanded) .d48v41-map-open {
  display: none !important;
}


/*
 * In fullscreen the same control becomes "Свернуть карту".
 */
.d48v41-map.is-expanded .d48v41-map-open {
  display: flex !important;

  position: absolute !important;

  top: auto !important;
  left: 50% !important;
  right: auto !important;

  bottom:
    calc(
      env(safe-area-inset-bottom, 0px) +
      52px
    ) !important;

  z-index: 120 !important;

  min-width: 170px !important;
  min-height: 42px !important;

  padding: 0 15px !important;

  justify-content: center !important;

  transform:
    translateX(-50%) !important;

  border:
    1px solid
    rgba(71, 45, 55, .12) !important;

  background:
    rgba(255, 255, 255, .94) !important;

  box-shadow:
    0 9px 28px
    rgba(39, 24, 30, .16) !important;

  -webkit-backdrop-filter:
    blur(18px);

  backdrop-filter:
    blur(18px);
}


.d48v41-map.is-expanded .d48v41-map-open:active {
  transform:
    translateX(-50%)
    scale(.98) !important;
}


/*
 * True viewport fullscreen.
 */
.d48v41-map.is-expanded {
  position: fixed !important;

  inset: 0 !important;

  z-index: 2147482000 !important;

  width: 100vw !important;

  height: 100dvh !important;
  min-height: 100dvh !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;

  background: #f4efef !important;
}


@supports not (height: 100dvh) {

  .d48v41-map.is-expanded {
    height: 100vh !important;
    min-height: 100vh !important;
  }

}


.d48v41-map.is-expanded .d48v42-yandex-canvas {
  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  border-radius: 0 !important;
}


/*
 * Keep private-location actions usable in fullscreen.
 */
.d48v41-map.is-expanded .d48loc-controls {
  top:
    calc(
      env(safe-area-inset-top, 0px) +
      12px
    ) !important;

  left: 12px !important;
  right: 12px !important;

  z-index: 120 !important;
}


.d48v41-map.is-expanded .d48loc-control {
  min-height: 40px;
}


/*
 * Yandex attribution/provider UI remains untouched.
 */


/* /DATE48 MAP FULLSCREEN V1 */


/* DATE48 CSS SOURCE 44: /assets/date48-hero-proof-lower-v2-20260923_003627.css */
/*
 * DATE48 HERO PROOF LOWER V2
 *
 * Move only the live readiness / places pill
 * closer to the "Режим 48 часов" card.
 *
 * No typography, image, mode-card or hero-size changes.
 */

.d48v3-page .d48v3-hero .d48v4-liveproof {
  transform:
    translateY(48px) !important;
}


/* slightly tighter on very short / narrow phones */
@media (max-width: 390px) {
  .d48v3-page .d48v3-hero .d48v4-liveproof {
    transform:
      translateY(44px) !important;
  }
}


/* /DATE48 HERO PROOF LOWER V2 */


/* DATE48 CSS SOURCE 45: /assets/stories-v2-clean-fullscreen-20260923_023436.css */

/* DATE48 STORIES V2 — CLEAN FULLSCREEN V1 */

/* media itself is the screen */
.date48-story-viewer {
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;

  width: 100vw !important;
  height: 100dvh !important;
  min-height: 100svh !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;
  isolation: isolate !important;

  background: #000 !important;
  color: #fff !important;
}


/* kill all old global darkening */
.date48-story-viewer::before {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
  filter: none !important;
}


/* full-screen photo/video — no card, no radius */
.date48-story-viewer__media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;

  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;

  border: 0 !important;
  border-radius: 0 !important;

  background: #000 !important;
  box-shadow: none !important;
}


.date48-story-viewer__media img,
.date48-story-viewer__media video {
  position: absolute !important;
  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  min-width: 0 !important;
  min-height: 0 !important;

  display: block !important;

  object-fit: cover !important;
  object-position: center center !important;

  border: 0 !important;
  border-radius: 0 !important;

  background: #000 !important;
  box-shadow: none !important;
}


/* top information */
.date48-story-viewer__top {
  position: absolute !important;

  top: calc(env(safe-area-inset-top) + 10px) !important;
  left: 14px !important;
  right: 112px !important;

  z-index: 10 !important;

  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  display: block !important;

  background: transparent !important;
  color: #fff !important;
}


.date48-story-viewer__top::before {
  content: none !important;
  display: none !important;
}


/* very thin segmented progress */
.date48-story-viewer__segments {
  width: 100% !important;
  height: 2px !important;

  display: flex !important;
  align-items: center !important;

  gap: 3px !important;

  margin: 0 0 12px !important;
}


.date48-story-viewer__segment {
  flex: 1 1 0 !important;

  height: 2px !important;
  min-width: 4px !important;

  overflow: hidden !important;

  border-radius: 999px !important;

  background: rgba(255,255,255,.34) !important;
}


.date48-story-viewer__top strong {
  display: block !important;

  margin: 0 !important;

  font-size: 15px !important;
  line-height: 1.15 !important;

  font-weight: 700 !important;
  letter-spacing: -.015em !important;

  color: rgba(255,255,255,.98) !important;

  /*
   * Shadow is only behind glyphs.
   * It does not overlay/darken the image.
   */
  text-shadow:
    0 1px 3px rgba(0,0,0,.34),
    0 2px 10px rgba(0,0,0,.18)
    !important;
}


/* old automatic "Сегодня" text is removed */
.date48-story-viewer__top >
span:not(.date48-story-viewer__meta) {
  display: none !important;
}


.date48-story-viewer__meta {
  display: block !important;

  margin-top: 3px !important;

  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;

  color: rgba(255,255,255,.76) !important;

  text-shadow:
    0 1px 4px rgba(0,0,0,.28)
    !important;
}


/* close + sound */
.date48-story-viewer__close,
.date48-story-viewer__sound {
  position: absolute !important;

  top: calc(env(safe-area-inset-top) + 20px) !important;

  z-index: 12 !important;

  width: 40px !important;
  height: 40px !important;

  min-width: 40px !important;
  min-height: 40px !important;

  padding: 0 !important;

  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 999px !important;

  background: rgba(10,10,10,.24) !important;

  color: #fff !important;

  box-shadow: none !important;

  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}


.date48-story-viewer__close {
  right: 14px !important;

  display: grid !important;
  place-items: center !important;

  font-size: 27px !important;
  line-height: 1 !important;
  font-weight: 300 !important;
}


.date48-story-viewer__sound {
  right: 62px !important;
}


/* invisible previous / next zones */
.date48-story-viewer__tap {
  position: absolute !important;

  top: 0 !important;
  bottom: 78px !important;

  z-index: 4 !important;

  width: 34% !important;

  padding: 0 !important;

  border: 0 !important;

  background: transparent !important;
  color: transparent !important;

  box-shadow: none !important;

  -webkit-tap-highlight-color: transparent !important;
}


.date48-story-viewer__tap--left {
  left: 0 !important;
}


.date48-story-viewer__tap--right {
  right: 0 !important;
}


/* clean bottom controls */
.date48-story-viewer__bottom {
  position: absolute !important;

  left: 14px !important;
  right: 14px !important;

  bottom: calc(env(safe-area-inset-bottom) + 12px) !important;

  z-index: 11 !important;

  min-height: 48px !important;

  margin: 0 !important;
  padding: 0 !important;

  display: flex !important;
  align-items: center !important;

  gap: 8px !important;

  background: transparent !important;
}


/* like */
.date48-story-viewer__bottom button:first-child {
  flex: 0 0 46px !important;

  width: 46px !important;
  height: 46px !important;

  min-width: 46px !important;
  min-height: 46px !important;

  padding: 0 !important;

  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 999px !important;

  background: rgba(10,10,10,.26) !important;

  color: transparent !important;
  font-size: 0 !important;

  box-shadow: none !important;

  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}


.date48-story-viewer__bottom button:first-child::before {
  content: "♡";

  color: #fff;

  font-size: 28px;
  line-height: 1;
  font-weight: 300;
}


/* reply */
.date48-story-viewer__bottom button:nth-child(2) {
  flex: 1 1 auto !important;

  width: auto !important;
  height: 46px !important;
  min-height: 46px !important;

  padding: 0 17px !important;

  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 999px !important;

  background: rgba(10,10,10,.26) !important;

  color: rgba(255,255,255,.94) !important;

  text-align: left !important;

  font-size: 14px !important;
  font-weight: 500 !important;

  letter-spacing: -.01em !important;

  box-shadow: none !important;

  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}


/* destructive own-story action */
.date48-story-viewer__bottom button:nth-child(3) {
  flex: 0 0 auto !important;

  width: auto !important;
  height: 46px !important;
  min-height: 46px !important;

  padding: 0 12px !important;

  border: 1px solid rgba(255,255,255,.20) !important;
  border-radius: 999px !important;

  background: rgba(10,10,10,.24) !important;

  color: rgba(255,255,255,.82) !important;

  font-size: 11px !important;
  font-weight: 600 !important;

  box-shadow: none !important;

  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}


/* explicitly beat the old mobile overlay */
@media (max-width: 820px) {

  .date48-story-viewer::before {
    content: none !important;
    display: none !important;
    background: none !important;
  }

  .date48-story-viewer__media {
    inset: 0 !important;
  }

  .date48-story-viewer__media img,
  .date48-story-viewer__media video {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

}

/* /DATE48 STORIES V2 — CLEAN FULLSCREEN V1 */


/* DATE48 CSS SOURCE 46: /assets/global-48-spark-v1-20260923_042608.css */
/*
 * Date48 Global 48 Spark V1
 *
 * Reference:
 * floating 48 signature + compact premium
 * panel. Never occupies document flow.
 */

#date48-global-48-spark {
  --d48-wine:
    #9b405d;

  --d48-wine-deep:
    #7f304b;

  --d48-ink:
    #241f21;

  --d48-muted:
    #837a7d;

  --d48-pearl:
    rgba(255, 252, 249, .92);

  position:
    fixed;

  z-index:
    2147482000;

  top:
    calc(
      env(
        safe-area-inset-top,
        0px
      ) + 54px
    );

  left:
    50%;

  width:
    min(
      430px,
      calc(
        100vw - 20px
      )
    );

  height:
    1px;

  pointer-events:
    none;

  opacity:
    0;

  transform:
    translateX(-50%)
    translateY(-15px);

  transition:
    opacity .34s ease,
    transform .52s
      cubic-bezier(
        .22,
        .8,
        .24,
        1
      );
}

#date48-global-48-spark.is-visible {
  opacity:
    1;

  transform:
    translateX(-50%)
    translateY(0);
}

#date48-global-48-spark.is-leaving {
  opacity:
    0;

  transform:
    translateX(-50%)
    translateY(-15px);

  transition-duration:
    .24s;
}

/*
 * Signature trigger.
 */

#date48-global-48-spark
.d48-spark__trigger {
  position:
    absolute;

  top:
    0;

  right:
    68px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  width:
    56px;

  height:
    48px;

  padding:
    0;

  border:
    0;

  background:
    transparent;

  color:
    var(
      --d48-wine
    );

  pointer-events:
    auto;

  cursor:
    pointer;

  -webkit-tap-highlight-color:
    transparent;

  filter:
    drop-shadow(
      0 8px 16px
      rgba(
        151,
        65,
        92,
        .11
      )
    );

  transform-origin:
    50% 18%;
}

#date48-global-48-spark
.d48-spark__number {
  position:
    relative;

  display:
    inline-block;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    33px;

  line-height:
    1;

  font-weight:
    400;

  letter-spacing:
    -.085em;

  text-shadow:
    0 0 18px
    rgba(
      176,
      89,
      115,
      .18
    );
}

#date48-global-48-spark
.d48-spark__number::before {
  content:
    "";

  position:
    absolute;

  inset:
    -12px
    -14px;

  z-index:
    -1;

  border-radius:
    999px;

  background:
    radial-gradient(
      circle,
      rgba(
        216,
        139,
        165,
        .20
      ),
      rgba(
        216,
        139,
        165,
        .07
      ) 42%,
      transparent
      70%
    );

  opacity:
    .7;

  filter:
    blur(5px);
}

#date48-global-48-spark
.d48-spark__star {
  position:
    absolute;

  top:
    1px;

  right:
    1px;

  color:
    #b75c7b;

  font-size:
    11px;

  line-height:
    1;

  transform:
    rotate(10deg);

  text-shadow:
    0 0 10px
    rgba(
      184,
      91,
      123,
      .28
    );

  animation:
    d48-spark-glint
    4.4s
    1.1s
    ease-out
    1;
}

#date48-global-48-spark
.d48-spark__trigger::before,
#date48-global-48-spark
.d48-spark__trigger::after {
  content:
    "";

  position:
    absolute;

  border-radius:
    999px;

  background:
    rgba(
      184,
      91,
      123,
      .46
    );

  opacity:
    0;

  pointer-events:
    none;
}

#date48-global-48-spark
.d48-spark__trigger::before {
  width:
    3px;

  height:
    3px;

  left:
    4px;

  top:
    19px;

  animation:
    d48-spark-particle
    3.6s
    1.2s
    ease-out
    1;
}

#date48-global-48-spark
.d48-spark__trigger::after {
  width:
    2px;

  height:
    2px;

  right:
    5px;

  bottom:
    9px;

  animation:
    d48-spark-particle
    3.6s
    1.65s
    ease-out
    1;
}

/*
 * Popup.
 */

#date48-global-48-spark
.d48-spark__panel {
  position:
    absolute;

  top:
    58px;

  right:
    18px;

  width:
    min(
      292px,
      calc(
        100vw - 42px
      )
    );

  box-sizing:
    border-box;

  padding:
    18px
    18px
    16px;

  border:
    1px solid
    rgba(
      125,
      75,
      91,
      .09
    );

  border-radius:
    24px;

  background:
    linear-gradient(
      145deg,
      rgba(
        255,
        254,
        252,
        .96
      ),
      rgba(
        251,
        243,
        244,
        .92
      )
    );

  color:
    var(
      --d48-ink
    );

  box-shadow:
    0 18px 46px
    rgba(
      63,
      39,
      47,
      .11
    ),
    inset
    0 1px 0
    rgba(
      255,
      255,
      255,
      .9
    );

  -webkit-backdrop-filter:
    blur(24px)
    saturate(1.1);

  backdrop-filter:
    blur(24px)
    saturate(1.1);

  pointer-events:
    none;

  opacity:
    0;

  visibility:
    hidden;

  transform:
    translateY(-8px)
    scale(.965);

  transform-origin:
    84% 0;

  transition:
    opacity .2s ease,
    visibility .2s ease,
    transform .26s
      cubic-bezier(
        .22,
        .8,
        .24,
        1
      );
}

#date48-global-48-spark
.d48-spark__panel::before {
  content:
    "";

  position:
    absolute;

  top:
    -8px;

  right:
    76px;

  width:
    16px;

  height:
    16px;

  border-left:
    1px solid
    rgba(
      125,
      75,
      91,
      .07
    );

  border-top:
    1px solid
    rgba(
      125,
      75,
      91,
      .07
    );

  background:
    rgba(
      255,
      252,
      250,
      .96
    );

  transform:
    rotate(45deg);

  border-radius:
    3px 0 0 0;
}

#date48-global-48-spark.is-open
.d48-spark__panel {
  pointer-events:
    auto;

  opacity:
    1;

  visibility:
    visible;

  transform:
    translateY(0)
    scale(1);
}

#date48-global-48-spark
.d48-spark__close {
  position:
    absolute;

  top:
    11px;

  right:
    12px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  width:
    30px;

  height:
    30px;

  padding:
    0;

  border:
    0;

  border-radius:
    999px;

  background:
    transparent;

  color:
    #9b9294;

  font:
    300 27px/1
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  cursor:
    pointer;

  -webkit-tap-highlight-color:
    transparent;
}

#date48-global-48-spark
.d48-spark__panel-row {
  display:
    grid;

  grid-template-columns:
    46px
    minmax(
      0,
      1fr
    );

  gap:
    13px;

  align-items:
    start;

  padding-right:
    22px;
}

#date48-global-48-spark
.d48-spark__event-icon {
  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  width:
    44px;

  height:
    44px;

  border-radius:
    999px;

  background:
    radial-gradient(
      circle
      at
      38% 30%,
      rgba(
        255,
        255,
        255,
        .95
      ),
      rgba(
        244,
        221,
        227,
        .72
      )
    );

  color:
    var(
      --d48-wine
    );

  box-shadow:
    inset
    0 0 0
    1px
    rgba(
      153,
      65,
      92,
      .08
    );

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    24px;
}

#date48-global-48-spark
.d48-spark__copy h2 {
  margin:
    0;

  color:
    #211d1e;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    22px;

  line-height:
    1.04;

  font-weight:
    400;

  letter-spacing:
    -.027em;

  text-wrap:
    balance;
}

#date48-global-48-spark
.d48-spark__copy p {
  margin:
    8px
    0
    0;

  color:
    var(
      --d48-muted
    );

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  font-size:
    12px;

  line-height:
    1.42;

  font-weight:
    400;
}

#date48-global-48-spark
.d48-spark__action {
  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  width:
    calc(
      100% - 59px
    );

  min-height:
    46px;

  margin:
    15px
    0
    0
    auto;

  padding:
    10px
    18px;

  border:
    0;

  border-radius:
    999px;

  background:
    linear-gradient(
      180deg,
      rgba(
        248,
        231,
        236,
        .92
      ),
      rgba(
        244,
        220,
        227,
        .80
      )
    );

  color:
    var(
      --d48-wine
    );

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  font-size:
    14px;

  line-height:
    1.1;

  font-weight:
    650;

  cursor:
    pointer;

  -webkit-tap-highlight-color:
    transparent;

  box-shadow:
    inset
    0 1px 0
    rgba(
      255,
      255,
      255,
      .8
    );
}

#date48-global-48-spark
.d48-spark__action:active {
  transform:
    scale(.985);
}

/*
 * Initial life.
 *
 * Spark attracts attention only briefly,
 * then becomes visually quiet.
 */

#date48-global-48-spark.is-visible
.d48-spark__trigger {
  animation:
    d48-spark-arrive
    1.05s
    cubic-bezier(
      .22,
      .8,
      .24,
      1
    )
    1;
}

@keyframes d48-spark-arrive {
  0% {
    opacity:
      0;

    transform:
      translateY(-16px)
      rotate(-2.5deg)
      scale(.94);
  }

  58% {
    opacity:
      1;

    transform:
      translateY(2px)
      rotate(1.4deg)
      scale(1.025);
  }

  100% {
    opacity:
      1;

    transform:
      translateY(0)
      rotate(0)
      scale(1);
  }
}

@keyframes d48-spark-glint {
  0%,
  100% {
    opacity:
      .70;

    transform:
      scale(.9)
      rotate(10deg);
  }

  18% {
    opacity:
      1;

    transform:
      scale(1.38)
      rotate(28deg);
  }

  31% {
    opacity:
      .74;

    transform:
      scale(.95)
      rotate(8deg);
  }

  72% {
    opacity:
      .74;

    transform:
      scale(.95)
      rotate(8deg);
  }

  82% {
    opacity:
      1;

    transform:
      scale(1.24)
      rotate(24deg);
  }
}

@keyframes d48-spark-particle {
  0% {
    opacity:
      0;

    transform:
      translateY(5px)
      scale(.5);
  }

  22% {
    opacity:
      .82;

    transform:
      translateY(0)
      scale(1);
  }

  60% {
    opacity:
      .38;
  }

  100% {
    opacity:
      0;

    transform:
      translateY(-7px)
      scale(.75);
  }
}

@media
(max-width: 390px) {

  #date48-global-48-spark
  .d48-spark__trigger {
    right:
      59px;
  }

  #date48-global-48-spark
  .d48-spark__panel {
    right:
      10px;

    width:
      min(
        286px,
        calc(
          100vw - 28px
        )
      );
  }

  #date48-global-48-spark
  .d48-spark__panel::before {
    right:
      77px;
  }
}

@media
(prefers-reduced-motion: reduce) {

  #date48-global-48-spark,
  #date48-global-48-spark *,
  #date48-global-48-spark *::before,
  #date48-global-48-spark *::after {
    animation:
      none !important;

    transition-duration:
      .01ms !important;
  }
}


/* DATE48 CSS SOURCE 47: /assets/global-48-spark-hint-v1-1-20260923_043105.css */
/*
 * Date48 Spark V1.1
 * First 5.2 sec = explanatory premium capsule.
 * Then collapses back to the original 48 Spark.
 */

#date48-global-48-spark
.d48-spark__trigger {
  transition:
    width .48s
      cubic-bezier(.22,.8,.24,1),
    min-width .48s
      cubic-bezier(.22,.8,.24,1),
    padding .48s
      cubic-bezier(.22,.8,.24,1),
    background .34s ease,
    border-color .34s ease,
    box-shadow .34s ease,
    transform .24s ease;
}

#date48-global-48-spark
.d48-spark__hint-label,
#date48-global-48-spark
.d48-spark__hint-arrow {
  display:
    none;

  pointer-events:
    none;
}

/*
 * Expanded explanatory state.
 */

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__trigger {
  right:
    48px;

  width:
    auto;

  min-width:
    190px;

  height:
    48px;

  justify-content:
    flex-start;

  gap:
    9px;

  padding:
    0 14px
    0 13px;

  border:
    1px solid
    rgba(139, 69, 91, .10);

  border-radius:
    999px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.92),
      rgba(250,239,243,.91)
    );

  box-shadow:
    0 12px 34px
      rgba(84,47,59,.10),
    inset 0 1px 0
      rgba(255,255,255,.92);

  -webkit-backdrop-filter:
    blur(22px)
    saturate(1.08);

  backdrop-filter:
    blur(22px)
    saturate(1.08);

  animation:
    d48-hint-arrive
    .72s
    cubic-bezier(.22,.8,.24,1)
    both;
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__number {
  flex:
    0 0 auto;

  font-size:
    27px;

  letter-spacing:
    -.075em;
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__number::before {
  inset:
    -8px -9px;

  opacity:
    .42;
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__star {
  position:
    static;

  flex:
    0 0 auto;

  margin-left:
    -5px;

  margin-right:
    1px;

  font-size:
    8px;

  transform:
    translateY(-7px);

  animation:
    d48-hint-glint
    2.8s
    .35s
    ease-out
    1;
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__trigger::before,
#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__trigger::after {
  display:
    none;
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__hint-label {
  display:
    block;

  min-width:
    0;

  max-width:
    155px;

  overflow:
    hidden;

  color:
    #593e47;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  font-size:
    12px;

  line-height:
    1;

  font-weight:
    620;

  letter-spacing:
    -.01em;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;

  opacity:
    1;

  animation:
    d48-hint-copy-in
    .5s
    .14s
    ease
    both;
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__hint-label::before {
  content:
    "·";

  margin-right:
    8px;

  color:
    rgba(147,65,91,.42);
}

#date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
.d48-spark__hint-arrow {
  display:
    block;

  flex:
    0 0 auto;

  margin-left:
    auto;

  color:
    #9b405d;

  font-size:
    16px;

  line-height:
    1;

  font-weight:
    500;

  opacity:
    .9;

  animation:
    d48-hint-arrow
    1.45s
    1.1s
    ease-in-out
    2;
}

/*
 * After the hint phase we smoothly return
 * to the original minimal Spark geometry.
 */

#date48-global-48-spark.d48-hint-done
.d48-spark__hint-label,
#date48-global-48-spark.d48-hint-done
.d48-spark__hint-arrow,
#date48-global-48-spark.is-open
.d48-spark__hint-label,
#date48-global-48-spark.is-open
.d48-spark__hint-arrow {
  display:
    none;
}

/*
 * Give the compact Spark a subtle "tap me"
 * affordance without turning it into a badge.
 */

#date48-global-48-spark.d48-hint-done:not(.is-open)
.d48-spark__trigger {
  cursor:
    pointer;
}

#date48-global-48-spark.d48-hint-done:not(.is-open)
.d48-spark__trigger:active {
  transform:
    scale(.94);
}

@keyframes d48-hint-arrive {
  0% {
    opacity:
      0;

    transform:
      translateY(-10px)
      scale(.96);
  }

  100% {
    opacity:
      1;

    transform:
      translateY(0)
      scale(1);
  }
}

@keyframes d48-hint-copy-in {
  0% {
    opacity:
      0;

    transform:
      translateX(-5px);
  }

  100% {
    opacity:
      1;

    transform:
      translateX(0);
  }
}

@keyframes d48-hint-arrow {
  0%,
  100% {
    transform:
      translateX(0);
  }

  50% {
    transform:
      translateX(3px);
  }
}

@keyframes d48-hint-glint {
  0%,
  100% {
    opacity:
      .7;
  }

  20% {
    opacity:
      1;

    transform:
      translateY(-7px)
      scale(1.35)
      rotate(18deg);
  }
}

@media
(max-width: 390px) {

  #date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
  .d48-spark__trigger {
    right:
      35px;

    min-width:
      182px;
  }

  #date48-global-48-spark.d48-has-hint:not(.d48-hint-done):not(.is-open)
  .d48-spark__hint-label {
    max-width:
      142px;
  }
}

@media
(prefers-reduced-motion: reduce) {

  #date48-global-48-spark
  .d48-spark__trigger,
  #date48-global-48-spark
  .d48-spark__hint-label,
  #date48-global-48-spark
  .d48-spark__hint-arrow {
    animation:
      none !important;

    transition-duration:
      .01ms !important;
  }
}


/* DATE48 CSS SOURCE 48: /assets/stories-v3-premium-viewer-20260923_043709.css */
/*
 * DATE48 STORIES V3
 * PREMIUM VIEWER
 *
 * No overlay.
 * No media darkening.
 * No media sizing/compression changes.
 */


/* PROGRESS */

.date48-story-viewer__segments {
  top:
    calc(
      env(safe-area-inset-top, 0px)
      + 9px
    ) !important;

  left: 14px !important;
  right: 14px !important;

  gap: 4px !important;
}

.date48-story-viewer__segment {
  height: 2px !important;

  border-radius: 999px !important;

  background:
    rgba(255,255,255,.32) !important;
}


/* OWNER */

.date48-story-viewer__owner {
  position: absolute !important;

  z-index: 48 !important;

  top:
    calc(
      env(safe-area-inset-top, 0px)
      + 31px
    ) !important;

  left: 15px !important;

  display: inline-flex !important;
  align-items: center !important;

  gap: 9px !important;

  max-width:
    calc(100% - 125px) !important;

  height: 38px !important;

  padding: 0 !important;

  border: 0 !important;

  color: #fff !important;

  background:
    transparent !important;

  box-shadow: none !important;

  font: inherit !important;

  -webkit-tap-highlight-color:
    transparent !important;
}

.date48-story-viewer__owner img,
.date48-story-viewer__owner-fallback {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 34px !important;
  height: 34px !important;

  flex:
    0 0 34px !important;

  border:
    1px solid
    rgba(255,255,255,.72) !important;

  border-radius: 50% !important;

  box-shadow:
    0 3px 12px
    rgba(0,0,0,.16) !important;
}

.date48-story-viewer__owner img {
  object-fit: cover !important;
}

.date48-story-viewer__owner-fallback {
  color: #fff !important;

  background:
    rgba(19,16,17,.24) !important;

  backdrop-filter:
    blur(12px) !important;

  -webkit-backdrop-filter:
    blur(12px) !important;

  font-size: 13px !important;
  font-weight: 700 !important;
}

.date48-story-viewer__owner strong {
  overflow: hidden !important;

  min-width: 0 !important;

  color: #fff !important;

  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.1 !important;

  letter-spacing:
    -.015em !important;

  white-space: nowrap !important;
  text-overflow: ellipsis !important;

  text-shadow:
    0 1px 6px
    rgba(0,0,0,.38) !important;
}


/* OLD TOP TEXT NO LONGER USED */

.date48-story-viewer__top
  > strong,

.date48-story-viewer__meta,

.date48-story-viewer__top
  > span:not(.date48-story-viewer__segments) {
  display: none !important;
}


/* SOUND / CLOSE */

.date48-story-viewer__sound,
.date48-story-viewer__close {
  top:
    calc(
      env(safe-area-inset-top, 0px)
      + 31px
    ) !important;

  width: 38px !important;
  height: 38px !important;

  min-width: 38px !important;
  min-height: 38px !important;

  padding: 0 !important;

  border:
    1px solid
    rgba(255,255,255,.13) !important;

  border-radius: 50% !important;

  color: #fff !important;

  background:
    rgba(17,14,15,.24) !important;

  backdrop-filter:
    blur(13px)
    saturate(115%) !important;

  -webkit-backdrop-filter:
    blur(13px)
    saturate(115%) !important;

  box-shadow:
    0 4px 16px
    rgba(0,0,0,.10) !important;
}

.date48-story-viewer__close {
  right: 13px !important;
}

.date48-story-viewer__sound {
  right: 58px !important;
}


/* COMMON BOTTOM */

.date48-story-viewer__bottom {
  z-index: 52 !important;

  left: 15px !important;
  right: 15px !important;

  bottom:
    calc(
      env(safe-area-inset-bottom, 0px)
      + 13px
    ) !important;

  width: auto !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  pointer-events:
    auto !important;
}


/* OWN STORY */

.date48-story-viewer__bottom--own {
  display: flex !important;

  align-items: center !important;
  justify-content: space-between !important;

  gap: 10px !important;
}

.date48-story-viewer__stats {
  display: inline-flex !important;
  align-items: center !important;

  gap: 12px !important;

  min-height: 39px !important;

  padding:
    0 14px !important;

  border:
    1px solid
    rgba(255,255,255,.14) !important;

  border-radius:
    999px !important;

  color:
    rgba(255,255,255,.96) !important;

  background:
    rgba(17,14,15,.24) !important;

  backdrop-filter:
    blur(13px)
    saturate(115%) !important;

  -webkit-backdrop-filter:
    blur(13px)
    saturate(115%) !important;

  box-shadow:
    0 5px 18px
    rgba(0,0,0,.09) !important;

  font-size: 13px !important;
  font-weight: 560 !important;

  text-shadow:
    0 1px 5px
    rgba(0,0,0,.25) !important;
}

.date48-story-viewer__stats
  span + span::before {
  content: "·";

  margin-right:
    12px !important;

  opacity: .65 !important;
}


/* OWN MORE */

.date48-story-viewer__more {
  position: relative !important;

  margin: 0 !important;
}

.date48-story-viewer__more
  > summary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 39px !important;
  height: 39px !important;

  padding:
    0 0 7px !important;

  border:
    1px solid
    rgba(255,255,255,.14) !important;

  border-radius:
    50% !important;

  color: #fff !important;

  background:
    rgba(17,14,15,.24) !important;

  backdrop-filter:
    blur(13px) !important;

  -webkit-backdrop-filter:
    blur(13px) !important;

  box-shadow:
    0 5px 18px
    rgba(0,0,0,.09) !important;

  cursor: pointer !important;

  list-style:
    none !important;

  font-size: 18px !important;
  font-weight: 700 !important;

  line-height: 1 !important;

  letter-spacing:
    1px !important;
}

.date48-story-viewer__more
  > summary::-webkit-details-marker {
  display: none !important;
}

.date48-story-viewer__delete {
  position: absolute !important;

  right: 0 !important;
  bottom: 48px !important;

  width: max-content !important;

  min-width:
    152px !important;

  min-height:
    43px !important;

  padding:
    0 16px !important;

  border:
    1px solid
    rgba(255,255,255,.68) !important;

  border-radius:
    15px !important;

  color:
    #ae2947 !important;

  background:
    rgba(255,255,255,.95) !important;

  backdrop-filter:
    blur(18px) !important;

  -webkit-backdrop-filter:
    blur(18px) !important;

  box-shadow:
    0 14px 36px
    rgba(0,0,0,.17) !important;

  font: inherit !important;

  font-size:
    14px !important;

  font-weight:
    650 !important;
}


/* OTHER STORY */

.date48-story-viewer__bottom--other {
  display: grid !important;

  grid-template-columns:
    43px minmax(0,1fr) !important;

  align-items: center !important;

  gap: 9px !important;
}

.date48-story-viewer__reaction {
  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 43px !important;
  height: 43px !important;

  min-width: 43px !important;
  min-height: 43px !important;

  padding: 0 !important;

  border:
    1px solid
    rgba(255,255,255,.15) !important;

  border-radius:
    50% !important;

  color: #fff !important;

  background:
    rgba(17,14,15,.24) !important;

  backdrop-filter:
    blur(13px) !important;

  -webkit-backdrop-filter:
    blur(13px) !important;

  box-shadow:
    0 5px 18px
    rgba(0,0,0,.09) !important;

  font: inherit !important;

  font-size:
    26px !important;

  line-height: 1 !important;
}

.date48-story-viewer__reaction.is-active {
  background:
    rgba(151,31,72,.55) !important;
}

.date48-story-viewer__reply {
  display: flex !important;
  align-items: center !important;

  width: 100% !important;
  min-width: 0 !important;

  height: 43px !important;

  padding:
    0 16px !important;

  border:
    1px solid
    rgba(255,255,255,.15) !important;

  border-radius:
    999px !important;

  color:
    rgba(255,255,255,.95) !important;

  background:
    rgba(17,14,15,.24) !important;

  backdrop-filter:
    blur(13px) !important;

  -webkit-backdrop-filter:
    blur(13px) !important;

  box-shadow:
    0 5px 18px
    rgba(0,0,0,.09) !important;

  font: inherit !important;

  font-size:
    15px !important;

  font-weight:
    520 !important;

  letter-spacing:
    -.01em !important;

  text-align: left !important;
}


/* REMOVE V2 NTH-CHILD GEOMETRY */

.date48-story-viewer__bottom--own
  button,

.date48-story-viewer__bottom--other
  button {
  transform: none !important;
}


/* ABSOLUTELY NO MEDIA VEIL */

.date48-story-viewer::before,
.date48-story-viewer__media::before,
.date48-story-viewer__media::after {
  content: none !important;

  display: none !important;

  background: none !important;
}


@media (max-width: 380px) {

  .date48-story-viewer__owner {
    max-width:
      calc(100% - 116px) !important;
  }

  .date48-story-viewer__owner img,
  .date48-story-viewer__owner-fallback {
    width: 32px !important;
    height: 32px !important;

    flex-basis:
      32px !important;
  }

  .date48-story-viewer__owner strong {
    font-size:
      15px !important;
  }

  .date48-story-viewer__sound,
  .date48-story-viewer__close {
    width: 36px !important;
    height: 36px !important;

    min-width: 36px !important;
    min-height: 36px !important;
  }

  .date48-story-viewer__sound {
    right: 55px !important;
  }

}

/* /DATE48 STORIES V3 */


/* DATE48 CSS SOURCE 49: /assets/stories-v4-editor-20260923_050734.css */
/* Date48 Stories V4 — editor + caption overlay */

.date48-story-editor {
  position: fixed;
  inset: 0;
  z-index: 1800;
  width: 100vw;
  height: 100dvh;
  overflow: hidden;
  background: #050505;
  color: #fff;
}

.date48-story-editor__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  display: block;
}

.date48-story-editor__top {
  position: absolute;
  z-index: 4;
  top: max(14px, env(safe-area-inset-top));
  left: max(14px, env(safe-area-inset-left));
  right: max(14px, env(safe-area-inset-right));
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}

.date48-story-editor__top button {
  pointer-events: auto;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  color: #fff;
  background: rgba(18,16,18,.46);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 8px 28px rgba(0,0,0,.18);
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
}

.date48-story-editor__top button:last-child {
  font-size: 18px;
  font-weight: 760;
}

.date48-story-editor__top button.is-active {
  background: rgba(255,255,255,.92);
  color: #24171d;
}

.date48-story-editor__text,
.date48-story-viewer__caption-overlay {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  width: min(84vw, 560px);
  transform: translate(-50%, -50%);
  text-align: center;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: #fff;
  font-size: clamp(24px, 7vw, 42px);
  font-weight: 760;
  line-height: 1.08;
  letter-spacing: -.025em;
  text-shadow:
    0 2px 5px rgba(0,0,0,.58),
    0 8px 30px rgba(0,0,0,.34);
  pointer-events: none;
}

.date48-story-editor__caption {
  position: absolute;
  z-index: 5;
  left: max(12px, env(safe-area-inset-left));
  right: max(12px, env(safe-area-inset-right));
  bottom: calc(82px + max(12px, env(safe-area-inset-bottom)));
  width: min(calc(100% - 24px), 620px);
  margin: 0 auto;
  padding: 8px 12px 6px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 22px;
  background: rgba(18,16,18,.52);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
}

.date48-story-editor__caption textarea {
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-height: 46px;
  max-height: 110px;
  resize: none;
  border: 0;
  outline: 0;
  padding: 8px 4px 3px;
  color: #fff;
  background: transparent;
  font: inherit;
  font-size: 16px;
  line-height: 1.3;
}

.date48-story-editor__caption textarea::placeholder {
  color: rgba(255,255,255,.62);
}

.date48-story-editor__caption small {
  display: block;
  text-align: right;
  color: rgba(255,255,255,.48);
  font-size: 10px;
}

.date48-story-editor__publish {
  position: absolute;
  z-index: 6;
  right: max(14px, env(safe-area-inset-right));
  bottom: max(14px, env(safe-area-inset-bottom));
  min-height: 50px;
  padding: 0 22px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: #a61946;
  font: inherit;
  font-size: 14px;
  font-weight: 760;
  box-shadow: 0 12px 34px rgba(72,18,39,.32);
}

.date48-story-editor__publish:disabled {
  opacity: .58;
}

.date48-story-viewer__media {
  position: relative;
}

.date48-story-viewer__caption-overlay {
  z-index: 5;
}

.date48-story-viewer__reaction.is-active {
  color: #fff !important;
  background: rgba(166,25,70,.92) !important;
  border-color: rgba(255,255,255,.18) !important;
  transform: scale(1.03);
}

@media (max-width: 640px) {
  .date48-story-editor__text,
  .date48-story-viewer__caption-overlay {
    width: 86vw;
    font-size: clamp(23px, 7.4vw, 35px);
  }
}


/* DATE48 CSS SOURCE 50: /assets/stories-v4-1-fonts-20260923_051919.css */
/* Date48 Stories V4.1 — font styles */

.date48-story-editor__stylebar {
  display: grid;
  gap: 8px;
  padding: 6px 0 3px;
}

.date48-story-editor__fonts,
.date48-story-editor__sizes {
  display: flex;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  scrollbar-width: none;
}

.date48-story-editor__fonts::-webkit-scrollbar,
.date48-story-editor__sizes::-webkit-scrollbar {
  display: none;
}

.date48-story-editor__fonts button,
.date48-story-editor__sizes button {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  color: rgba(255,255,255,.78);
  background: rgba(255,255,255,.08);
  font-size: 12px;
}

.date48-story-editor__fonts button.is-active,
.date48-story-editor__sizes button.is-active {
  color: #22171c;
  background: rgba(255,255,255,.94);
  border-color: rgba(255,255,255,.94);
}

.date48-story-editor__fonts .is-font-clean {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-weight: 720;
}

.date48-story-editor__fonts .is-font-light {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-weight: 350;
  letter-spacing: -.02em;
}

.date48-story-editor__fonts .is-font-serif {
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-weight: 600;
}

.date48-story-editor__fonts .is-font-bold {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-weight: 900;
  letter-spacing: -.04em;
}

.date48-story-editor__text.is-font-clean,
.date48-story-viewer__caption-overlay.is-font-clean {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-weight: 760;
}

.date48-story-editor__text.is-font-light,
.date48-story-viewer__caption-overlay.is-font-light {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-weight: 360;
  letter-spacing: -.035em;
}

.date48-story-editor__text.is-font-serif,
.date48-story-viewer__caption-overlay.is-font-serif {
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-weight: 600;
  letter-spacing: -.02em;
}

.date48-story-editor__text.is-font-bold,
.date48-story-viewer__caption-overlay.is-font-bold {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-weight: 900;
  letter-spacing: -.045em;
}

.date48-story-editor__text.is-size-s,
.date48-story-viewer__caption-overlay.is-size-s {
  font-size: clamp(19px, 5.4vw, 28px);
}

.date48-story-editor__text.is-size-m,
.date48-story-viewer__caption-overlay.is-size-m {
  font-size: clamp(24px, 7vw, 38px);
}

.date48-story-editor__text.is-size-l,
.date48-story-viewer__caption-overlay.is-size-l {
  font-size: clamp(31px, 9vw, 50px);
}

@media (max-width: 640px) {
  .date48-story-editor__caption {
    bottom:
      calc(
        82px +
        max(
          12px,
          env(safe-area-inset-bottom)
        )
      );
  }

  .date48-story-editor__fonts button,
  .date48-story-editor__sizes button {
    min-height: 32px;
    padding: 0 11px;
  }
}


/* DATE48 CSS SOURCE 51: /assets/stories-v4-2-script-drag-20260923_053948.css */
/* Date48 Stories V4.2 — Script + free text position */

/*
 * Script is deliberately system-font based.
 * No remote font dependency is introduced into story rendering.
 */
.date48-story-editor__fonts .is-font-script {
  font-family:
    "Snell Roundhand",
    "Apple Chancery",
    "Segoe Script",
    "Brush Script MT",
    cursive;
  font-size: 16px;
  font-style: italic;
  font-weight: 500;
  letter-spacing: .01em;
}

.date48-story-editor__text.is-font-script,
.date48-story-viewer__caption-overlay.is-font-script {
  font-family:
    "Snell Roundhand",
    "Apple Chancery",
    "Segoe Script",
    "Brush Script MT",
    cursive;
  font-style: italic;
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: .005em;
}

/*
 * The base V4 viewer CSS intentionally used pointer-events:none.
 * Only the editor copy becomes interactive.
 */
.date48-story-editor__text {
  pointer-events: auto !important;
  touch-action: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  cursor: grab;
  will-change: left, top;
  max-width: 84vw;
}

.date48-story-editor__text:active {
  cursor: grabbing;
}

.date48-story-viewer__caption-overlay {
  pointer-events: none !important;
}

/*
 * Give the draggable text a forgiving touch target without
 * adding a visible pill/background.
 */
.date48-story-editor__text {
  padding: .18em .24em;
  margin: -.18em -.24em;
}

/* Clean compact helper row under styling controls. */
.date48-story-editor__caption-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 2px;
}

.date48-story-editor__drag-hint {
  min-width: 0;
  color: rgba(255,255,255,.63);
  font-size: 11px;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.date48-story-editor__caption-meta small {
  flex: 0 0 auto;
}

/*
 * Keep Script visually balanced across the existing S/M/L scale.
 */
.date48-story-editor__text.is-font-script.is-size-s,
.date48-story-viewer__caption-overlay.is-font-script.is-size-s {
  font-size: clamp(22px, 6.1vw, 31px);
}

.date48-story-editor__text.is-font-script.is-size-m,
.date48-story-viewer__caption-overlay.is-font-script.is-size-m {
  font-size: clamp(29px, 8vw, 42px);
}

.date48-story-editor__text.is-font-script.is-size-l,
.date48-story-viewer__caption-overlay.is-font-script.is-size-l {
  font-size: clamp(37px, 10.2vw, 56px);
}

@media (max-width: 640px) {
  .date48-story-editor__drag-hint {
    max-width: 72%;
  }
}


/* DATE48 CSS SOURCE 52: /assets/global-48-meeting-action-v1-20260923_054707.css */
#date48-global-48-spark.d48-spark--meeting
.d48-spark__panel {
  width: min(326px, calc(100vw - 28px));
  padding: 20px;
  border-radius: 26px;
  background:
    linear-gradient(
      145deg,
      rgba(255,254,252,.975),
      rgba(250,241,244,.95)
    );
  box-shadow:
    0 22px 56px rgba(67,38,48,.14),
    inset 0 1px 0 rgba(255,255,255,.94);
}

#date48-global-48-spark.d48-spark--meeting
.d48-spark__panel::before {
  right: 76px;
}

#date48-global-48-spark
.d48-meeting__eyebrow {
  padding-right: 32px;
  color: rgba(142,55,84,.72);
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 9px;
  line-height: 1;
  font-weight: 720;
  letter-spacing: .16em;
}

#date48-global-48-spark
.d48-meeting__title {
  margin: 9px 30px 0 0;
  color: #211c1e;
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 25px;
  line-height: 1.03;
  font-weight: 400;
  letter-spacing: -.035em;
}

#date48-global-48-spark
.d48-meeting__moment {
  margin-top: 9px;
  color: #9b405d;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 650;
}

#date48-global-48-spark
.d48-meeting__target {
  display: grid;
  grid-template-columns: 58px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  margin-top: 16px;
  padding: 8px;
  border: 1px solid rgba(124,68,86,.07);
  border-radius: 18px;
  background: rgba(255,255,255,.56);
}

#date48-global-48-spark
.d48-meeting__visual {
  width: 58px;
  height: 58px;
  overflow: hidden;
  border-radius: 14px;
  background:
    linear-gradient(
      145deg,
      #f4e2e7,
      #fbf6f4
    );
}

#date48-global-48-spark
.d48-meeting__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#date48-global-48-spark
.d48-meeting__fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #9b405d;
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 22px;
  letter-spacing: -.08em;
}

#date48-global-48-spark
.d48-meeting__target-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
}

#date48-global-48-spark
.d48-meeting__target-copy strong {
  overflow: hidden;
  color: #31282b;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 13px;
  line-height: 1.22;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#date48-global-48-spark
.d48-meeting__target-copy span {
  display: -webkit-box;
  overflow: hidden;
  color: #8e8588;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 10px;
  line-height: 1.3;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

#date48-global-48-spark
.d48-meeting__note {
  margin-top: 12px;
  padding: 11px 13px;
  border-radius: 15px;
  background: rgba(153,64,93,.055);
  color: #675a5f;
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 12px;
  line-height: 1.38;
  font-style: italic;
}

#date48-global-48-spark
.d48-meeting__note::before {
  content: "“";
}

#date48-global-48-spark
.d48-meeting__note::after {
  content: "”";
}

#date48-global-48-spark
.d48-meeting__status {
  margin-top: 9px;
  color: #82777b;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 10px;
  line-height: 1.3;
}

#date48-global-48-spark
.d48-meeting__status:empty {
  display: none;
}

#date48-global-48-spark
.d48-meeting__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 15px;
}

#date48-global-48-spark
.d48-meeting__actions.is-single {
  grid-template-columns: 1fr;
}

#date48-global-48-spark
.d48-meeting__primary,
#date48-global-48-spark
.d48-meeting__secondary {
  min-height: 45px;
  padding: 0 14px;
  border-radius: 999px;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 13px;
  line-height: 1;
  font-weight: 680;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

#date48-global-48-spark
.d48-meeting__primary {
  border: 1px solid #93405d;
  background: #93405d;
  color: #fff;
}

#date48-global-48-spark
.d48-meeting__secondary {
  border: 1px solid rgba(126,73,91,.12);
  background: rgba(255,255,255,.72);
  color: #704556;
}

#date48-global-48-spark
.d48-meeting__decline {
  grid-column: 1 / -1;
  justify-self: center;
  min-height: 32px;
  padding: 3px 12px;
  border: 0;
  background: transparent;
  color: #9b9295;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 11px;
  line-height: 1.2;
  cursor: pointer;
}

#date48-global-48-spark
.d48-meeting__decline.is-armed {
  color: #99435e;
  font-weight: 620;
}

#date48-global-48-spark.d48-spark--meeting.is-busy
.d48-meeting__actions {
  opacity: .58;
  pointer-events: none;
}

@media (max-width: 370px) {
  #date48-global-48-spark.d48-spark--meeting
  .d48-spark__panel {
    right: 6px;
    width: calc(100vw - 20px);
  }

  #date48-global-48-spark
  .d48-meeting__title {
    font-size: 23px;
  }
}


/* DATE48 CSS SOURCE 53: /assets/propose-date-v1-20260923_055307.css */
.date48-chat-head__date.date48-chat-head__date--propose {
  width: auto !important;
  min-width: 88px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;
  font-size: 11px !important;
  font-weight: 680 !important;
  letter-spacing: -.01em !important;
  white-space: nowrap;
}

body.d48-propose-date-open {
  overflow: hidden !important;
}

.d48-propose {
  position: fixed;
  inset: 0;
  z-index: 2147483200;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  opacity: 0;
  transition: opacity .22s ease;
}

.d48-propose.is-visible {
  opacity: 1;
}

.d48-propose__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgba(31,20,24,.28);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.d48-propose__sheet {
  position: relative;
  z-index: 1;
  width: min(100%, 430px);
  max-height: min(88dvh, 760px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding:
    12px 18px
    calc(22px + env(safe-area-inset-bottom));
  border:
    1px solid rgba(112,67,82,.08);
  border-bottom: 0;
  border-radius: 30px 30px 0 0;
  outline: none;
  background:
    linear-gradient(
      165deg,
      rgba(255,254,252,.985),
      rgba(250,242,245,.985)
    );
  box-shadow:
    0 -24px 70px
      rgba(65,38,47,.18);
  transform: translateY(24px);
  transition:
    transform .34s
    cubic-bezier(.2,.82,.24,1);
}

.d48-propose.is-visible
.d48-propose__sheet {
  transform: translateY(0);
}

.d48-propose__handle {
  width: 42px;
  height: 4px;
  margin: 0 auto 12px;
  border-radius: 999px;
  background:
    rgba(83,63,70,.13);
}

.d48-propose__close {
  position: absolute;
  top: 18px;
  right: 18px;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background:
    rgba(109,77,87,.07);
  color: #78646b;
  font-size: 21px;
  line-height: 1;
}

.d48-propose__body {
  padding-top: 3px;
}

.d48-propose__eyebrow {
  padding-right: 46px;
  color: #9b405d;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 9px;
  line-height: 1;
  font-weight: 750;
  letter-spacing: .17em;
}

.d48-propose__title,
.d48-propose__active h2,
.d48-propose__done h2,
.d48-propose__error h2 {
  margin: 9px 42px 0 0;
  color: #241d20;
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 29px;
  line-height: 1.02;
  font-weight: 400;
  letter-spacing: -.04em;
}

.d48-propose__lead {
  margin: 8px 0 0;
  color: #8c7e83;
  font-size: 12px;
  line-height: 1.35;
}

.d48-propose__section {
  margin-top: 22px;
}

.d48-propose__section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.d48-propose__section-head strong {
  color: #3a3034;
  font-size: 13px;
  font-weight: 720;
}

.d48-propose__section-head span {
  color: #a19398;
  font-size: 9px;
}

.d48-propose__times {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0,1fr));
  gap: 8px;
}

.d48-propose__time {
  display: flex;
  min-height: 52px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 13px;
  border:
    1px solid rgba(110,73,86,.09);
  border-radius: 16px;
  background:
    rgba(255,255,255,.65);
  color: #55474c;
  text-align: left;
}

.d48-propose__time span {
  font-size: 11px;
}

.d48-propose__time strong {
  color: #8f3f5b;
  font-size: 12px;
}

.d48-propose__time.is-selected {
  border-color:
    rgba(147,64,93,.28);
  background:
    rgba(151,64,94,.08);
  box-shadow:
    inset 0 0 0 1px
    rgba(147,64,93,.04);
}

.d48-propose__places {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0,1fr));
  gap: 8px;
}

.d48-propose__place {
  display: grid;
  grid-template-columns:
    48px minmax(0,1fr);
  min-width: 0;
  min-height: 64px;
  gap: 9px;
  align-items: center;
  padding: 7px;
  border:
    1px solid rgba(110,73,86,.08);
  border-radius: 17px;
  background:
    rgba(255,255,255,.63);
  text-align: left;
}

.d48-propose__place.is-selected {
  border-color:
    rgba(147,64,93,.28);
  background:
    rgba(151,64,94,.075);
}

.d48-propose__place-media {
  display: grid;
  width: 48px;
  height: 48px;
  overflow: hidden;
  place-items: center;
  border-radius: 12px;
  background:
    linear-gradient(
      145deg,
      #f1dce3,
      #faf5f3
    );
}

.d48-propose__place-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.d48-propose__place-media b {
  color: #98435f;
  font-family:
    Georgia,
    serif;
  font-size: 18px;
  font-weight: 400;
}

.d48-propose__place-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
}

.d48-propose__place-copy strong {
  overflow: hidden;
  color: #3a3034;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.d48-propose__place-copy small {
  display: -webkit-box;
  overflow: hidden;
  color: #97898e;
  font-size: 8px;
  line-height: 1.25;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.d48-propose__custom {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}

.d48-propose__custom[hidden] {
  display: none;
}

.d48-propose__custom input,
.d48-propose__note {
  width: 100%;
  box-sizing: border-box;
  border:
    1px solid rgba(111,75,87,.10);
  border-radius: 15px;
  outline: 0;
  background:
    rgba(255,255,255,.72);
  color: #45383d;
  font: inherit;
  font-size: 16px;
}

.d48-propose__custom input {
  min-height: 48px;
  padding: 0 13px;
}

.d48-propose__note {
  min-height: 64px;
  resize: none;
  padding: 12px 13px;
}

.d48-propose__custom input:focus,
.d48-propose__note:focus {
  border-color:
    rgba(147,64,93,.28);
  box-shadow:
    0 0 0 3px
    rgba(147,64,93,.05);
}

.d48-propose__status {
  margin-top: 10px;
  color: #83767b;
  font-size: 10px;
  line-height: 1.3;
}

.d48-propose__status:empty {
  display: none;
}

.d48-propose__status.is-error {
  color: #a23e5a;
}

.d48-propose__send {
  width: 100%;
  min-height: 50px;
  margin-top: 14px;
  padding: 0 18px;
  border: 1px solid #93405d;
  border-radius: 999px;
  background: #93405d;
  color: #fff;
  font-size: 13px;
  font-weight: 720;
  box-shadow:
    0 10px 24px
    rgba(147,64,93,.16);
}

.d48-propose__send:disabled {
  border-color:
    rgba(115,91,99,.10);
  background:
    rgba(113,91,98,.10);
  color:
    rgba(90,72,78,.36);
  box-shadow: none;
}

.d48-propose__loading {
  display: grid;
  min-height: 260px;
  place-items: center;
  align-content: center;
  gap: 12px;
}

.d48-propose__loading span,
.d48-propose__done-mark {
  color: #98435f;
  font-family:
    Georgia,
    serif;
  font-size: 38px;
  letter-spacing: -.08em;
}

.d48-propose__loading p {
  margin: 0;
  color: #8d8085;
  font-size: 11px;
}

.d48-propose__done,
.d48-propose__active,
.d48-propose__error {
  padding-top: 14px;
}

.d48-propose__done-time {
  margin-top: 12px;
  color: #98435f;
  font-size: 13px;
  font-weight: 700;
}

.d48-propose__done-place {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-top: 15px;
  padding: 12px;
  border-radius: 16px;
  background:
    rgba(255,255,255,.64);
}

.d48-propose__done-place strong {
  color: #3a3034;
  font-size: 13px;
}

.d48-propose__done-place span {
  color: #93868a;
  font-size: 10px;
}

.d48-propose__done p,
.d48-propose__active p,
.d48-propose__error p {
  margin: 13px 0 0;
  color: #82757a;
  font-size: 12px;
  line-height: 1.45;
}

.d48-propose__active-place {
  display: grid;
  grid-template-columns:
    58px minmax(0,1fr);
  align-items: center;
  gap: 11px;
  margin-top: 16px;
  padding: 8px;
  border-radius: 17px;
  background:
    rgba(255,255,255,.64);
}

.d48-propose__active-place img,
.d48-propose__place-fallback {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  object-fit: cover;
  border-radius: 13px;
  background:
    #f3e2e7;
  color: #98435f;
  font-family:
    Georgia,
    serif;
}

.d48-propose__active-place div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
}

.d48-propose__active-place strong {
  color: #3a3034;
  font-size: 13px;
}

.d48-propose__active-place small {
  color: #93868a;
  font-size: 9px;
  line-height: 1.3;
}

.d48-propose__active-note {
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  background:
    rgba(151,64,94,.055);
  color: #65575c;
  font-family:
    Georgia,
    serif;
  font-size: 12px;
  font-style: italic;
}

.d48-propose__active-actions {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.d48-propose__quiet {
  width: 100%;
  min-height: 42px;
  border: 0;
  background: transparent;
  color: #8b7d82;
  font-size: 11px;
}

.d48-propose__quiet.is-danger {
  color: #9b405d;
}

@media (max-width: 370px) {
  .date48-chat-head__date.date48-chat-head__date--propose {
    min-width: 78px !important;
    padding: 0 9px !important;
    font-size: 10px !important;
  }

  .d48-propose__sheet {
    padding-left: 14px;
    padding-right: 14px;
  }

  .d48-propose__title,
  .d48-propose__active h2,
  .d48-propose__done h2 {
    font-size: 26px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .d48-propose,
  .d48-propose__sheet {
    transition: none !important;
  }
}


/* DATE48 CSS SOURCE 54: /assets/stories-v4-3-text-colors-20260923_055614.css */
/* Date48 Stories V4.3 — text colors */

.date48-story-editor__colors {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 2px 1px 1px;
  overflow-x: auto;
  scrollbar-width: none;
}

.date48-story-editor__colors::-webkit-scrollbar {
  display: none;
}

.date48-story-editor__colors button {
  position: relative;
  flex: 0 0 auto;
  width: 27px;
  height: 27px;
  padding: 0;
  border: 2px solid rgba(255,255,255,.20);
  border-radius: 999px;
  box-shadow:
    0 2px 8px rgba(0,0,0,.16),
    inset 0 0 0 1px rgba(0,0,0,.08);
  transition:
    transform 120ms ease,
    border-color 120ms ease,
    box-shadow 120ms ease;
}

.date48-story-editor__colors button.is-active {
  transform: scale(1.12);
  border-color: rgba(255,255,255,.98);
  box-shadow:
    0 0 0 2px rgba(0,0,0,.28),
    0 3px 10px rgba(0,0,0,.22);
}

.date48-story-editor__colors .is-color-white {
  background: #ffffff;
}

.date48-story-editor__colors .is-color-black {
  background: #171418;
}

.date48-story-editor__colors .is-color-cream {
  background: #f5dfc1;
}

.date48-story-editor__colors .is-color-rose {
  background: #ff91b8;
}

.date48-story-editor__colors .is-color-berry {
  background: #d32f67;
}

.date48-story-editor__colors .is-color-blue {
  background: #78b9ff;
}

.date48-story-editor__colors .is-color-lavender {
  background: #b8a2ff;
}

.date48-story-editor__colors .is-color-mint {
  background: #72dfbe;
}


.date48-story-editor__text.is-color-white,
.date48-story-viewer__caption-overlay.is-color-white {
  color: #ffffff;
  text-shadow:
    0 2px 10px rgba(0,0,0,.42),
    0 1px 2px rgba(0,0,0,.30);
}

.date48-story-editor__text.is-color-black,
.date48-story-viewer__caption-overlay.is-color-black {
  color: #171418;
  text-shadow:
    0 1px 8px rgba(255,255,255,.42),
    0 1px 2px rgba(255,255,255,.36);
}

.date48-story-editor__text.is-color-cream,
.date48-story-viewer__caption-overlay.is-color-cream {
  color: #f5dfc1;
  text-shadow:
    0 2px 10px rgba(0,0,0,.38);
}

.date48-story-editor__text.is-color-rose,
.date48-story-viewer__caption-overlay.is-color-rose {
  color: #ff91b8;
  text-shadow:
    0 2px 10px rgba(0,0,0,.40);
}

.date48-story-editor__text.is-color-berry,
.date48-story-viewer__caption-overlay.is-color-berry {
  color: #d32f67;
  text-shadow:
    0 2px 10px rgba(0,0,0,.42);
}

.date48-story-editor__text.is-color-blue,
.date48-story-viewer__caption-overlay.is-color-blue {
  color: #78b9ff;
  text-shadow:
    0 2px 10px rgba(0,0,0,.40);
}

.date48-story-editor__text.is-color-lavender,
.date48-story-viewer__caption-overlay.is-color-lavender {
  color: #b8a2ff;
  text-shadow:
    0 2px 10px rgba(0,0,0,.40);
}

.date48-story-editor__text.is-color-mint,
.date48-story-viewer__caption-overlay.is-color-mint {
  color: #72dfbe;
  text-shadow:
    0 2px 10px rgba(0,0,0,.40);
}

@media (max-width: 640px) {
  .date48-story-editor__colors {
    gap: 8px;
  }

  .date48-story-editor__colors button {
    width: 26px;
    height: 26px;
  }
}


/* DATE48 CSS SOURCE 55: /assets/chat-meeting-state-v1-20260923_061048.css */
/*
 * Date48 Chat Meeting State V1
 * Fixes header overflow and reflects meeting state.
 */

.date48-chat-head {
  display: grid !important;
  grid-template-columns:
    auto
    minmax(0, 1fr)
    auto !important;

  align-items: center !important;

  column-gap: 8px !important;

  width: 100% !important;
  max-width: 100% !important;

  box-sizing: border-box !important;

  overflow: hidden !important;
}

.date48-chat-head__back {
  grid-column: 1 !important;

  min-width: 0 !important;
  flex: 0 0 auto !important;
}

.date48-chat-person {
  grid-column: 2 !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;

  overflow: hidden !important;

  box-sizing: border-box !important;
}

.date48-chat-person__avatar {
  flex: 0 0 auto !important;
}

.date48-chat-person__copy {
  min-width: 0 !important;
  max-width: 100% !important;

  overflow: hidden !important;
}

.date48-chat-person__copy strong {
  display: block !important;

  max-width: 100% !important;

  overflow: hidden !important;

  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.date48-chat-person__copy small {
  display: block !important;

  max-width: 100% !important;

  overflow: hidden !important;

  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.date48-chat-head__date.date48-chat-head__date--propose {
  grid-column: 3 !important;

  justify-self: end !important;

  flex: 0 0 auto !important;

  width: auto !important;
  min-width: 0 !important;
  max-width: 96px !important;

  height: 40px !important;
  min-height: 40px !important;

  padding:
    0 10px !important;

  box-sizing: border-box !important;

  overflow: hidden !important;

  border-radius:
    999px !important;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size:
    10.5px !important;

  line-height:
    1 !important;

  font-weight:
    700 !important;

  letter-spacing:
    -.015em !important;

  text-overflow:
    ellipsis !important;

  white-space:
    nowrap !important;

  -webkit-tap-highlight-color:
    transparent;
}

.date48-chat-head__date--propose[data-meeting-state="plan"] {
  min-width: 62px !important;

  border-color:
    rgba(147,64,93,.17) !important;

  background:
    rgba(147,64,93,.095) !important;

  color:
    #8f3f5b !important;
}

.date48-chat-head__date--propose[data-meeting-state="waiting"] {
  min-width: 84px !important;

  background:
    rgba(112,88,96,.065) !important;

  color:
    #76646a !important;
}

.date48-chat-head__date--propose[data-meeting-state="incoming"] {
  min-width: 68px !important;

  border-color:
    rgba(147,64,93,.18) !important;

  background:
    rgba(147,64,93,.10) !important;

  color:
    #8e3e59 !important;
}

.date48-chat-head__date--propose[data-meeting-state="empty"] {
  min-width: 86px !important;
}

@media (max-width: 390px) {

  .date48-chat-head {
    column-gap:
      5px !important;
  }

  .date48-chat-head__date.date48-chat-head__date--propose {
    max-width:
      84px !important;

    height:
      38px !important;

    min-height:
      38px !important;

    padding:
      0 8px !important;

    font-size:
      9.5px !important;
  }

  .date48-chat-head__date--propose[data-meeting-state="empty"] {
    min-width:
      78px !important;
  }

  .date48-chat-head__date--propose[data-meeting-state="waiting"] {
    min-width:
      78px !important;
  }

  .date48-chat-head__date--propose[data-meeting-state="incoming"] {
    min-width:
      64px !important;
  }

  .date48-chat-head__date--propose[data-meeting-state="plan"] {
    min-width:
      58px !important;
  }
}


/* DATE48 CSS SOURCE 56: /assets/profile-ui-v3-wave1-20260923_132010.css */
/* date48_profile_ui_v3_wave1 */

#date48-profile-v3-card {
  position: relative;
  overflow: hidden;
  margin: 18px 0 20px;
  padding: 22px;
  border-radius: 28px;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(156, 137, 255, 0.28),
      transparent 38%
    ),
    radial-gradient(
      circle at 0% 100%,
      rgba(99, 194, 255, 0.13),
      transparent 42%
    ),
    linear-gradient(
      145deg,
      #17181c 0%,
      #101114 58%,
      #15151b 100%
    );
  color: #fff;
  box-shadow:
    0 24px 70px rgba(20, 20, 28, 0.18),
    inset 0 0 0 1px rgba(255,255,255,0.08);
  isolation: isolate;
}

#date48-profile-v3-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,0.07),
      transparent 28%,
      transparent 70%,
      rgba(255,255,255,0.025)
    );
  z-index: -1;
}

.date48-pv3-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.date48-pv3-kicker {
  display: block;
  margin-bottom: 9px;
  font-size: 10px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0.16em;
  color: rgba(255,255,255,0.5);
}

.date48-pv3-title {
  margin: 0;
  max-width: 330px;
  font-size: clamp(24px, 7vw, 34px);
  line-height: 0.98;
  letter-spacing: -0.045em;
  font-weight: 730;
}

.date48-pv3-edit {
  flex: 0 0 auto;
  border: 0;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.1);
  color: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.date48-pv3-copy {
  max-width: 430px;
  margin: 14px 0 18px;
  color: rgba(255,255,255,0.62);
  font-size: 14px;
  line-height: 1.45;
}

.date48-pv3-progress {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  margin: 0 0 15px;
}

.date48-pv3-progress > span {
  height: 4px;
  border-radius: 100px;
  background: rgba(255,255,255,0.12);
  overflow: hidden;
}

.date48-pv3-progress > span.is-done {
  background:
    linear-gradient(
      90deg,
      #fff,
      #d8d0ff
    );
}

.date48-pv3-progress-copy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 11px;
  color: rgba(255,255,255,0.48);
}

.date48-pv3-progress-copy b {
  color: rgba(255,255,255,0.82);
  font-size: 12px;
}

.date48-pv3-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 17px;
}

.date48-pv3-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.82);
  font-size: 12px;
  line-height: 1.2;
}

.date48-pv3-empty {
  margin-top: 18px;
  padding: 14px 15px;
  border-radius: 18px;
  background: rgba(255,255,255,0.055);
  color: rgba(255,255,255,0.62);
  font-size: 13px;
  line-height: 1.4;
}

.date48-pv3-card-notice {
  margin-top: 12px;
  color: #d9d1ff;
  font-size: 12px;
}


/* editor */

.date48-pv3-editor {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  background: rgba(5, 6, 8, 0.48);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  animation: date48Pv3Fade 180ms ease-out;
}

.date48-pv3-editor[hidden] {
  display: none;
}

.date48-pv3-sheet {
  position: relative;
  width: min(100%, 560px);
  max-height: min(92dvh, 900px);
  overflow-y: auto;
  overscroll-behavior: contain;
  border-radius: 32px 32px 0 0;
  background: #f7f7f9;
  color: #19191d;
  box-shadow:
    0 -24px 90px rgba(0,0,0,0.28);
  animation: date48Pv3Up 240ms cubic-bezier(.2,.8,.2,1);
}

.date48-pv3-sheet::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.date48-pv3-sheet-head {
  position: sticky;
  top: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px 14px;
  background: rgba(247,247,249,0.92);
  border-bottom: 1px solid rgba(0,0,0,0.055);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}

.date48-pv3-sheet-head small {
  display: block;
  margin-bottom: 3px;
  color: #888990;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.13em;
}

.date48-pv3-sheet-head h2 {
  margin: 0;
  font-size: 20px;
  line-height: 1;
  letter-spacing: -0.025em;
}

.date48-pv3-close {
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #e9e9ed;
  color: #38383d;
  font-size: 21px;
  line-height: 1;
  cursor: pointer;
}

.date48-pv3-form {
  padding:
    10px
    14px
    calc(24px + env(safe-area-inset-bottom));
}

.date48-pv3-section {
  margin: 10px 0;
  padding: 20px 18px;
  border-radius: 24px;
  background: #fff;
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,0.035);
}

.date48-pv3-section-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: #efedf9;
  color: #6555a3;
  font-size: 10px;
  font-weight: 800;
}

.date48-pv3-section h3 {
  margin: 0 0 6px;
  font-size: 22px;
  line-height: 1.05;
  letter-spacing: -0.035em;
}

.date48-pv3-section > p {
  margin: 0 0 18px;
  color: #87878e;
  font-size: 13px;
  line-height: 1.45;
}

.date48-pv3-field {
  display: grid;
  gap: 7px;
  margin-top: 14px;
}

.date48-pv3-field > span {
  color: #696970;
  font-size: 11px;
  font-weight: 700;
}

.date48-pv3-field input,
.date48-pv3-field textarea,
.date48-pv3-field select {
  width: 100%;
  box-sizing: border-box;
  min-height: 48px;
  border: 1px solid #e6e6ea;
  border-radius: 15px;
  background: #f7f7f9;
  color: #19191d;
  padding: 12px 13px;
  font: inherit;
  font-size: 16px;
  outline: none;
}

.date48-pv3-field textarea {
  min-height: 92px;
  resize: vertical;
  line-height: 1.4;
}

.date48-pv3-field input:focus,
.date48-pv3-field textarea:focus,
.date48-pv3-field select:focus {
  border-color: #aaa0d8;
  box-shadow: 0 0 0 3px rgba(142,124,210,0.1);
}

.date48-pv3-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.date48-pv3-options {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.date48-pv3-option {
  position: relative;
  cursor: pointer;
}

.date48-pv3-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.date48-pv3-option span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 11px;
  border: 1px solid #e3e3e8;
  border-radius: 999px;
  background: #f7f7f9;
  color: #57575f;
  font-size: 12px;
  line-height: 1.15;
  transition:
    background 140ms ease,
    border-color 140ms ease,
    color 140ms ease,
    transform 140ms ease;
}

.date48-pv3-option input:checked + span {
  border-color: #c9c1ea;
  background: #efedf9;
  color: #4f427d;
}

.date48-pv3-option:active span {
  transform: scale(0.97);
}

.date48-pv3-prompt {
  padding: 14px 0;
  border-top: 1px solid #eeeeF1;
}

.date48-pv3-prompt:first-of-type {
  border-top: 0;
}

.date48-pv3-prompt-num {
  margin-bottom: 7px;
  color: #9a9aa0;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.date48-pv3-private {
  background:
    linear-gradient(
      145deg,
      #f1eff9,
      #f8f7fb
    );
}

.date48-pv3-private-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 10px;
  color: #645987;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.date48-pv3-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 16px;
}

.date48-pv3-toggle-copy b {
  display: block;
  font-size: 14px;
}

.date48-pv3-toggle-copy small {
  display: block;
  margin-top: 3px;
  color: #888890;
  font-size: 11px;
}

.date48-pv3-switch {
  position: relative;
  width: 48px;
  height: 28px;
  flex: 0 0 auto;
}

.date48-pv3-switch input {
  position: absolute;
  opacity: 0;
}

.date48-pv3-switch span {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: #d9d9df;
  transition: 150ms ease;
}

.date48-pv3-switch span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  transition: 150ms ease;
}

.date48-pv3-switch input:checked + span {
  background: #7766bd;
}

.date48-pv3-switch input:checked + span::after {
  transform: translateX(20px);
}

.date48-pv3-form-error {
  display: none;
  margin: 12px 4px;
  padding: 11px 12px;
  border-radius: 13px;
  background: #fff0f0;
  color: #9a3434;
  font-size: 12px;
}

.date48-pv3-form-error.is-visible {
  display: block;
}

.date48-pv3-save {
  position: sticky;
  bottom: 8px;
  z-index: 3;
  width: 100%;
  min-height: 52px;
  border: 0;
  border-radius: 17px;
  background: #17171b;
  color: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 750;
  cursor: pointer;
  box-shadow:
    0 12px 28px rgba(20,20,25,0.22);
}

.date48-pv3-save:disabled {
  opacity: 0.62;
  cursor: default;
}

.date48-pv3-counter {
  margin-top: 7px;
  color: #929299;
  font-size: 10px;
  text-align: right;
}

@keyframes date48Pv3Fade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes date48Pv3Up {
  from {
    transform: translateY(35px);
    opacity: 0.7;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@media (min-width: 600px) {
  .date48-pv3-editor {
    align-items: center;
    padding: 28px;
  }

  .date48-pv3-sheet {
    border-radius: 32px;
    max-height: min(88vh, 900px);
  }
}

@media (max-width: 380px) {
  #date48-profile-v3-card {
    padding: 20px 17px;
    border-radius: 24px;
  }

  .date48-pv3-title {
    font-size: 26px;
  }

  .date48-pv3-row {
    grid-template-columns: 1fr;
  }
}

@media (prefers-color-scheme: dark) {
  .date48-pv3-sheet {
    background: #16171a;
    color: #f5f5f7;
  }

  .date48-pv3-sheet-head {
    background: rgba(22,23,26,0.92);
    border-bottom-color: rgba(255,255,255,0.06);
  }

  .date48-pv3-close {
    background: #28292e;
    color: #eeeef1;
  }

  .date48-pv3-section {
    background: #202126;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.045);
  }

  .date48-pv3-section > p,
  .date48-pv3-field > span,
  .date48-pv3-toggle-copy small {
    color: #97979f;
  }

  .date48-pv3-field input,
  .date48-pv3-field textarea,
  .date48-pv3-field select {
    border-color: #34353b;
    background: #18191d;
    color: #f4f4f6;
  }

  .date48-pv3-option span {
    border-color: #35363c;
    background: #191a1e;
    color: #b9b9c0;
  }

  .date48-pv3-option input:checked + span {
    border-color: #685a9d;
    background: #332d49;
    color: #ddd5ff;
  }

  .date48-pv3-prompt {
    border-top-color: rgba(255,255,255,0.065);
  }

  .date48-pv3-private {
    background:
      linear-gradient(
        145deg,
        #292637,
        #222127
      );
  }

  .date48-pv3-save {
    background: #f2f2f4;
    color: #17171b;
  }
}


/* DATE48 CSS SOURCE 57: /assets/profile-ui-v3-light-system-v1-20260923_133057.css */
/*
 * date48_profile_ui_v3_light_system_v1
 *
 * Align Profile V3 with the existing light Date48
 * editorial / warm premium design system.
 */


/* ============================================================
   PROFILE SIGNATURE CARD
   ============================================================ */

#date48-profile-v3-card {
  color: #332527 !important;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(178, 86, 108, 0.09),
      transparent 38%
    ),
    linear-gradient(
      150deg,
      #fffdfa 0%,
      #fbf6f1 58%,
      #f8f0ed 100%
    ) !important;

  border:
    1px solid
    rgba(128, 83, 91, 0.13) !important;

  box-shadow:
    0 18px 44px
      rgba(91, 57, 61, 0.07),
    inset 0 1px 0
      rgba(255,255,255,0.92) !important;
}


#date48-profile-v3-card::before {
  background:
    linear-gradient(
      125deg,
      rgba(255,255,255,0.72),
      transparent 32%,
      transparent 76%,
      rgba(169, 75, 96, 0.035)
    ) !important;
}


.date48-pv3-kicker {
  color: #9a5262 !important;
}


.date48-pv3-title {
  color: #332527 !important;

  font-family:
    ui-serif,
    Georgia,
    "Times New Roman",
    serif !important;

  font-weight: 500 !important;

  letter-spacing:
    -0.045em !important;

  line-height:
    0.98 !important;
}


.date48-pv3-copy {
  color:
    rgba(72, 56, 58, 0.62) !important;
}


.date48-pv3-edit {
  background:
    linear-gradient(
      145deg,
      #f7e8e9,
      #f3e1e5
    ) !important;

  color: #8e4355 !important;

  border:
    1px solid
    rgba(143, 71, 86, 0.09) !important;

  box-shadow:
    0 8px 20px
      rgba(126, 66, 80, 0.07) !important;
}


.date48-pv3-progress > span {
  background:
    rgba(121, 84, 90, 0.11) !important;
}


.date48-pv3-progress > span.is-done {
  background:
    linear-gradient(
      90deg,
      #a35063,
      #c78391
    ) !important;
}


.date48-pv3-progress-copy {
  color:
    rgba(76, 57, 61, 0.48) !important;
}


.date48-pv3-progress-copy b {
  color: #5e3d44 !important;
}


.date48-pv3-chip {
  background:
    rgba(163, 80, 99, 0.07) !important;

  border:
    1px solid
    rgba(151, 73, 92, 0.1) !important;

  color: #754752 !important;
}


.date48-pv3-empty {
  background:
    rgba(255,255,255,0.65) !important;

  border:
    1px solid
    rgba(133, 91, 98, 0.08) !important;

  color:
    rgba(76, 57, 60, 0.66) !important;
}


.date48-pv3-card-notice {
  color: #985064 !important;
}



/* ============================================================
   BACKDROP / SHEET
   ============================================================ */

.date48-pv3-editor {
  background:
    rgba(59, 43, 46, 0.18) !important;

  backdrop-filter:
    blur(15px) saturate(0.88) !important;

  -webkit-backdrop-filter:
    blur(15px) saturate(0.88) !important;
}


.date48-pv3-sheet {
  color: #35282a !important;

  background:
    linear-gradient(
      180deg,
      #fbf8f4 0%,
      #f8f3ef 100%
    ) !important;

  box-shadow:
    0 -26px 70px
      rgba(75, 52, 56, 0.16) !important;
}



/* ============================================================
   SHEET HEADER
   ============================================================ */

.date48-pv3-sheet-head {
  padding:
    17px 20px 15px !important;

  background:
    rgba(251, 248, 244, 0.94) !important;

  border-bottom:
    1px solid
    rgba(105, 73, 78, 0.08) !important;

  box-shadow:
    0 7px 22px
      rgba(78, 55, 59, 0.025) !important;
}


.date48-pv3-sheet-head small {
  color: #a35a6c !important;

  font-size:
    9px !important;

  letter-spacing:
    0.18em !important;
}


.date48-pv3-sheet-head h2 {
  color: #39292c !important;

  font-family:
    ui-serif,
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    26px !important;

  font-weight:
    500 !important;

  line-height:
    1 !important;

  letter-spacing:
    -0.035em !important;
}


.date48-pv3-close {
  width:
    38px !important;

  height:
    38px !important;

  background:
    #f2e8e7 !important;

  color:
    #74444f !important;

  border:
    1px solid
    rgba(126, 68, 80, 0.07) !important;

  box-shadow:
    none !important;
}



/* ============================================================
   FORM
   ============================================================ */

.date48-pv3-form {
  padding:
    12px
    14px
    calc(
      108px +
      env(safe-area-inset-bottom)
    ) !important;
}


.date48-pv3-section {
  margin:
    11px 0 !important;

  padding:
    21px 19px !important;

  border-radius:
    27px !important;

  background:
    rgba(255, 253, 250, 0.96) !important;

  border:
    1px solid
    rgba(112, 77, 83, 0.085) !important;

  box-shadow:
    0 12px 28px
      rgba(84, 59, 63, 0.045),
    inset 0 1px 0
      rgba(255,255,255,0.96) !important;
}


.date48-pv3-section-index {
  background:
    #f5e7ea !important;

  color:
    #965165 !important;

  box-shadow:
    none !important;
}


.date48-pv3-section h3 {
  color:
    #3d2c2f !important;

  font-family:
    ui-serif,
    Georgia,
    "Times New Roman",
    serif !important;

  font-size:
    25px !important;

  line-height:
    1.02 !important;

  font-weight:
    500 !important;

  letter-spacing:
    -0.035em !important;
}


.date48-pv3-section > p {
  color:
    rgba(72, 56, 59, 0.57) !important;

  font-size:
    13px !important;

  line-height:
    1.46 !important;
}


.date48-pv3-field > span {
  color:
    rgba(74, 56, 60, 0.65) !important;
}



/* ============================================================
   INPUTS
   ============================================================ */

.date48-pv3-field input,
.date48-pv3-field textarea,
.date48-pv3-field select {
  background:
    #fffdfb !important;

  color:
    #3c2d2f !important;

  border:
    1px solid
    rgba(100, 70, 76, 0.14) !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,0.9) !important;
}


.date48-pv3-field input::placeholder,
.date48-pv3-field textarea::placeholder {
  color:
    rgba(84, 66, 69, 0.39) !important;
}


.date48-pv3-field input:focus,
.date48-pv3-field textarea:focus,
.date48-pv3-field select:focus {
  border-color:
    rgba(157, 76, 96, 0.48) !important;

  box-shadow:
    0 0 0 3px
      rgba(164, 78, 99, 0.075) !important;
}



/* ============================================================
   CHIPS
   ============================================================ */

.date48-pv3-option span {
  background:
    #fffdfa !important;

  border:
    1px solid
    rgba(104, 73, 79, 0.16) !important;

  color:
    #665154 !important;

  box-shadow:
    none !important;
}


.date48-pv3-option input:checked + span {
  background:
    linear-gradient(
      145deg,
      #f5e6e8,
      #f4e1e5
    ) !important;

  border-color:
    rgba(151, 67, 88, 0.22) !important;

  color:
    #8d4355 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,0.65) !important;
}



/* ============================================================
   PROMPTS
   ============================================================ */

.date48-pv3-prompt {
  border-top:
    1px solid
    rgba(98, 69, 74, 0.08) !important;
}


.date48-pv3-prompt-num {
  color:
    #a15a6a !important;
}



/* ============================================================
   PRIVATE MATCHING
   ============================================================ */

.date48-pv3-private {
  background:
    linear-gradient(
      145deg,
      #faf0f1,
      #f9f3f1
    ) !important;

  border-color:
    rgba(153, 79, 96, 0.11) !important;
}


.date48-pv3-private-badge {
  color:
    #995268 !important;
}


.date48-pv3-toggle-copy b {
  color:
    #493438 !important;
}


.date48-pv3-toggle-copy small {
  color:
    rgba(75, 56, 60, 0.5) !important;
}


.date48-pv3-switch span {
  background:
    #ddcece !important;
}


.date48-pv3-switch input:checked + span {
  background:
    #a14f62 !important;
}



/* ============================================================
   SAVE
   ============================================================ */

.date48-pv3-save {
  bottom:
    max(
      12px,
      env(safe-area-inset-bottom)
    ) !important;

  min-height:
    52px !important;

  border-radius:
    18px !important;

  background:
    linear-gradient(
      135deg,
      #a75264,
      #93475a
    ) !important;

  color:
    #fff !important;

  border:
    1px solid
    rgba(113, 52, 67, 0.08) !important;

  box-shadow:
    0 14px 32px
      rgba(126, 58, 75, 0.22) !important;
}


.date48-pv3-save:disabled {
  opacity:
    0.56 !important;
}



/* ============================================================
   ERRORS
   ============================================================ */

.date48-pv3-form-error {
  background:
    #fff0f0 !important;

  color:
    #963f4d !important;

  border:
    1px solid
    rgba(150, 63, 77, 0.08) !important;
}



/* ============================================================
   IMPORTANT:
   Date48 theme controls appearance.
   Do NOT let OS dark-mode override the light app.
   ============================================================ */

@media (prefers-color-scheme: dark) {

  .date48-pv3-sheet {
    color: #35282a !important;

    background:
      linear-gradient(
        180deg,
        #fbf8f4 0%,
        #f8f3ef 100%
      ) !important;
  }


  .date48-pv3-sheet-head {
    background:
      rgba(251,248,244,0.94) !important;

    border-bottom-color:
      rgba(105,73,78,0.08) !important;
  }


  .date48-pv3-close {
    background:
      #f2e8e7 !important;

    color:
      #74444f !important;
  }


  .date48-pv3-section {
    background:
      rgba(255,253,250,0.96) !important;

    border-color:
      rgba(112,77,83,0.085) !important;
  }


  .date48-pv3-section > p,
  .date48-pv3-field > span,
  .date48-pv3-toggle-copy small {
    color:
      rgba(72,56,59,0.57) !important;
  }


  .date48-pv3-field input,
  .date48-pv3-field textarea,
  .date48-pv3-field select {
    background:
      #fffdfb !important;

    color:
      #3c2d2f !important;

    border-color:
      rgba(100,70,76,0.14) !important;
  }


  .date48-pv3-option span {
    background:
      #fffdfa !important;

    color:
      #665154 !important;

    border-color:
      rgba(104,73,79,0.16) !important;
  }


  .date48-pv3-option input:checked + span {
    background:
      linear-gradient(
        145deg,
        #f5e6e8,
        #f4e1e5
      ) !important;

    color:
      #8d4355 !important;

    border-color:
      rgba(151,67,88,0.22) !important;
  }


  .date48-pv3-private {
    background:
      linear-gradient(
        145deg,
        #faf0f1,
        #f9f3f1
      ) !important;
  }


  .date48-pv3-save {
    background:
      linear-gradient(
        135deg,
        #a75264,
        #93475a
      ) !important;

    color:
      #fff !important;
  }
}


/* mobile geometry */

@media (max-width: 599px) {

  .date48-pv3-editor {
    align-items:
      flex-end !important;
  }


  .date48-pv3-sheet {
    max-height:
      94dvh !important;

    border-radius:
      32px 32px 0 0 !important;
  }


  .date48-pv3-title {
    font-size:
      32px !important;
  }
}


/* DATE48 CSS SOURCE 58: /assets/profile-ui-v3-card-polish-v1-20260923_133541.css */
/* date48_profile_ui_v3_card_polish_v1 */


/*
 * Make the Profile V3 signature card behave like
 * the surrounding Date48 editorial cards.
 */

#date48-profile-v3-card {
  padding:
    21px 22px 22px !important;

  border-radius:
    27px !important;
}


/* Give the headline space instead of fighting the CTA */

.date48-pv3-top {
  position:
    relative !important;

  display:
    block !important;
}


.date48-pv3-kicker {
  margin-bottom:
    13px !important;
}


/*
 * Existing text stays semantic/accessibile,
 * visual title is locked to exactly two lines.
 */

.date48-pv3-title {
  max-width:
    none !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;

  font-size:
    0 !important;

  line-height:
    1 !important;
}


.date48-pv3-title::before {
  content:
    "Не только фото.\AХарактер тоже.";

  display:
    block;

  white-space:
    pre-line;

  max-width:
    330px;

  color:
    #332527;

  font-family:
    ui-serif,
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      32px,
      8.3vw,
      38px
    );

  line-height:
    0.94;

  font-weight:
    500;

  letter-spacing:
    -0.048em;
}


/*
 * Match the rest of the cabinet:
 * action = quiet editorial text, not another button.
 */

.date48-pv3-edit {
  position:
    absolute !important;

  top:
    -2px !important;

  right:
    0 !important;

  min-width:
    0 !important;

  padding:
    3px 0 !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  color:
    #975064 !important;

  font-size:
    13px !important;

  font-weight:
    750 !important;

  line-height:
    1.2 !important;
}


/* tighter editorial rhythm */

.date48-pv3-copy {
  max-width:
    355px !important;

  margin:
    16px 0 17px !important;

  font-size:
    13px !important;

  line-height:
    1.42 !important;
}


.date48-pv3-progress {
  gap:
    5px !important;

  margin-bottom:
    12px !important;
}


.date48-pv3-progress > span {
  height:
    3px !important;
}


.date48-pv3-progress-copy {
  gap:
    8px !important;

  font-size:
    10px !important;
}


.date48-pv3-progress-copy b {
  font-size:
    12px !important;
}


.date48-pv3-chips {
  gap:
    6px !important;

  margin-top:
    14px !important;
}


.date48-pv3-chip {
  min-height:
    28px !important;

  padding:
    5px 10px !important;

  font-size:
    11px !important;
}


.date48-pv3-empty {
  margin-top:
    14px !important;

  padding:
    13px 14px !important;

  border-radius:
    17px !important;
}


/*
 * Small phones:
 * preserve two lines rather than falling back to four.
 */

@media (max-width: 390px) {

  .date48-pv3-title::before {
    max-width:
      300px;

    font-size:
      32px;
  }


  .date48-pv3-copy {
    max-width:
      315px !important;
  }
}


/* DATE48 CSS SOURCE 59: /assets/profile-ui-v3-ux12-20260923_134515.css */
/* date48_profile_ui_v3_ux12 */


/* ==========================================================
   EDITOR STRUCTURE
   ========================================================== */

.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-sheet {
  overflow-x: hidden;
}


.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-form {
  padding-top: 10px !important;

  padding-bottom:
    calc(
      34px +
      env(safe-area-inset-bottom)
    ) !important;
}


/*
 * One chapter at a time.
 */

.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-form
> .date48-pv3-section {
  display: none !important;
}


.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-form
> .date48-pv3-section.is-pv3-active {
  display: block !important;

  animation:
    date48Pv3ChapterIn
    180ms
    ease-out;
}


@keyframes date48Pv3ChapterIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}



/* ==========================================================
   CHAPTER NAVIGATION
   ========================================================== */

.date48-pv3-step-nav {
  position: sticky;
  top: 76px;
  z-index: 3;

  display: flex;

  gap: 7px;

  width: 100%;

  box-sizing: border-box;

  overflow-x: auto;

  padding:
    10px
    14px
    11px;

  background:
    rgba(251, 248, 244, 0.94);

  border-bottom:
    1px solid
    rgba(105,73,78,0.065);

  backdrop-filter:
    blur(20px);

  -webkit-backdrop-filter:
    blur(20px);

  scrollbar-width: none;
}


.date48-pv3-step-nav::-webkit-scrollbar {
  display: none;
}


.date48-pv3-step-tab {
  flex: 0 0 auto;

  min-height: 34px;

  border:
    1px solid
    rgba(101,70,76,0.11);

  border-radius: 999px;

  padding:
    7px 12px;

  background:
    rgba(255,253,250,0.74);

  color:
    rgba(76,56,60,0.60);

  font: inherit;

  font-size: 11px;

  line-height: 1;

  font-weight: 650;

  white-space: nowrap;

  cursor: pointer;

  transition:
    background 140ms ease,
    border-color 140ms ease,
    color 140ms ease,
    transform 140ms ease;
}


.date48-pv3-step-tab:active {
  transform: scale(0.97);
}


.date48-pv3-step-tab.is-active {
  background:
    linear-gradient(
      145deg,
      #f5e6e8,
      #f2dfe4
    );

  color:
    #8e4356;

  border-color:
    rgba(151,67,88,0.19);
}


.date48-pv3-step-tab.is-private {
  background:
    rgba(157,76,96,0.055);
}



/* ==========================================================
   SECTION DENSITY
   ========================================================== */

.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-section {
  margin:
    4px 0 10px !important;

  padding:
    20px 18px 21px !important;
}


.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-section h3 {
  font-size:
    clamp(
      25px,
      7vw,
      31px
    ) !important;
}


.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-section > p {
  margin-bottom:
    16px !important;
}


.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-field {
  margin-top:
    12px !important;
}


.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-option span {
  min-height:
    35px !important;

  padding:
    7px 11px !important;
}



/* ==========================================================
   PROMPT CARDS
   ========================================================== */

.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-prompt {
  margin-top: 10px;

  padding:
    0 !important;

  border:
    1px solid
    rgba(100,70,76,0.11) !important;

  border-radius:
    19px;

  overflow: hidden;

  background:
    rgba(255,253,250,0.82);
}


.date48-pv3-prompt-num {
  display: none !important;
}


.date48-pv3-prompt-toggle {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  gap: 12px;

  width: 100%;

  box-sizing: border-box;

  border: 0;

  padding:
    15px 15px;

  background: transparent;

  color: inherit;

  text-align: left;

  font: inherit;

  cursor: pointer;
}


.date48-pv3-prompt-toggle-copy {
  min-width: 0;
}


.date48-pv3-prompt-toggle-copy small {
  display: block;

  margin-bottom: 4px;

  color: #9c5667;

  font-size: 9px;

  line-height: 1;

  font-weight: 800;

  letter-spacing: 0.13em;
}


.date48-pv3-prompt-toggle-copy b {
  display: block;

  overflow: hidden;

  color: #402f32;

  font-family:
    ui-serif,
    Georgia,
    "Times New Roman",
    serif;

  font-size: 18px;

  line-height: 1.1;

  font-weight: 500;

  white-space: nowrap;

  text-overflow: ellipsis;
}


.date48-pv3-prompt-toggle-copy span {
  display: block;

  overflow: hidden;

  margin-top: 5px;

  color:
    rgba(76,57,60,0.53);

  font-size: 11px;

  line-height: 1.3;

  white-space: nowrap;

  text-overflow: ellipsis;
}


.date48-pv3-prompt-toggle-icon {
  align-self: center;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 30px;

  height: 30px;

  border-radius: 50%;

  background: #f5e8ea;

  color: #955166;

  font-size: 18px;

  transition:
    transform 150ms ease;
}


.date48-pv3-prompt.is-open
.date48-pv3-prompt-toggle-icon {
  transform: rotate(45deg);
}


.date48-pv3-prompt-body {
  display: none;

  padding:
    0 15px 16px;

  border-top:
    1px solid
    rgba(102,72,77,0.075);
}


.date48-pv3-prompt.is-open
.date48-pv3-prompt-body {
  display: block;

  animation:
    date48Pv3PromptIn
    150ms
    ease-out;
}


@keyframes date48Pv3PromptIn {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}



/* ==========================================================
   PRIVATE CHAPTER
   ========================================================== */

.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-private {
  background:
    linear-gradient(
      145deg,
      #faf0f1,
      #f9f3f1
    ) !important;
}


.date48-pv3-private-intro {
  display: flex;

  align-items: center;

  gap: 8px;

  margin-bottom: 12px;

  color:
    rgba(120,67,80,0.75);

  font-size: 11px;

  line-height: 1.3;
}



/* ==========================================================
   SAVE ONLY WHEN DIRTY
   ========================================================== */

.date48-pv3-editor.date48-pv3-ux12
.date48-pv3-save {
  position: sticky !important;

  bottom:
    max(
      12px,
      env(safe-area-inset-bottom)
    ) !important;

  width:
    min(
      calc(100% - 20px),
      390px
    ) !important;

  min-height:
    48px !important;

  margin:
    12px auto 0 !important;

  opacity: 0;

  pointer-events: none;

  transform:
    translateY(16px);

  transition:
    opacity 160ms ease,
    transform 160ms ease;

  box-shadow:
    0 12px 26px
      rgba(126,58,75,0.19) !important;
}


.date48-pv3-editor.date48-pv3-ux12.is-pv3-dirty
.date48-pv3-save {
  opacity: 1;

  pointer-events: auto;

  transform:
    translateY(0);
}



/* ==========================================================
   UNSAVED CHANGES CONFIRM
   ========================================================== */

.date48-pv3-discard {
  position: fixed;

  inset: 0;

  z-index: 1000001;

  display: flex;

  align-items: flex-end;

  justify-content: center;

  padding:
    16px
    16px
    calc(
      16px +
      env(safe-area-inset-bottom)
    );

  background:
    rgba(66,46,51,0.18);

  backdrop-filter:
    blur(12px);

  -webkit-backdrop-filter:
    blur(12px);
}


.date48-pv3-discard-card {
  width:
    min(
      100%,
      480px
    );

  padding: 20px;

  border:
    1px solid
    rgba(112,77,83,0.10);

  border-radius: 26px;

  background:
    #fffaf7;

  box-shadow:
    0 24px 70px
      rgba(79,53,59,0.16);
}


.date48-pv3-discard-card h4 {
  margin:
    0 0 7px;

  color: #3e2d30;

  font-family:
    ui-serif,
    Georgia,
    "Times New Roman",
    serif;

  font-size: 24px;

  line-height: 1;

  font-weight: 500;
}


.date48-pv3-discard-card p {
  margin:
    0 0 17px;

  color:
    rgba(75,56,60,0.58);

  font-size: 13px;

  line-height: 1.4;
}


.date48-pv3-discard-actions {
  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 8px;
}


.date48-pv3-discard-actions button {
  min-height: 46px;

  border-radius: 15px;

  font: inherit;

  font-size: 13px;

  font-weight: 750;

  cursor: pointer;
}


.date48-pv3-discard-cancel {
  border:
    1px solid
    rgba(103,72,78,0.12);

  background: #fffdfb;

  color: #5f484d;
}


.date48-pv3-discard-confirm {
  border: 0;

  background: #a64f63;

  color: #fff;
}



/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 599px) {

  .date48-pv3-step-nav {
    top: 77px;
  }


  .date48-pv3-editor.date48-pv3-ux12
  .date48-pv3-sheet {
    max-height:
      94dvh !important;
  }


  .date48-pv3-discard {
    align-items: flex-end;
  }
}


/* DATE48 CSS SOURCE 60: /assets/password-auth-ui-v1-20260930_100922.css */
/* date48_password_auth_ui_css_v1 */

.d48-password-login-launcher {
  position: fixed;
  left: 18px;
  right: 18px;
  bottom:
    max(
      22px,
      env(safe-area-inset-bottom)
    );
  z-index: 9000;
  display: flex;
  justify-content: center;
  pointer-events: none;
}

.d48-password-login-open {
  width: min(430px, 100%);
  min-height: 54px;
  padding: 13px 20px;
  border: 1px solid rgba(136, 68, 91, .18);
  border-radius: 22px;
  background:
    rgba(255, 250, 248, .94);
  box-shadow:
    0 18px 50px rgba(63, 31, 41, .14);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  color: #863b57;
  font: inherit;
  font-size: 16px;
  font-weight: 700;
  pointer-events: auto;
}

.d48-password-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 12000;
  padding:
    max(24px, env(safe-area-inset-top))
    18px
    max(24px, env(safe-area-inset-bottom));
  display: grid;
  place-items: center;
  background:
    rgba(34, 24, 26, .30);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.d48-password-modal-backdrop[hidden] {
  display: none !important;
}

.d48-password-modal-open {
  overflow: hidden;
}

.d48-password-modal {
  width: min(460px, 100%);
  max-height: 90vh;
  overflow: auto;
  padding: 26px;
  border: 1px solid rgba(70, 47, 52, .09);
  border-radius: 30px;
  background: #fffaf7;
  box-shadow:
    0 28px 90px rgba(45, 24, 30, .22);
}

.d48-password-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}

.d48-password-kicker {
  margin-bottom: 5px;
  color: #a74664;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.d48-password-modal h2 {
  margin: 0;
  color: #231c1b;
  font-family: Georgia, serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.05;
}

.d48-password-close {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(70, 47, 52, .10);
  border-radius: 50%;
  background: rgba(255,255,255,.75);
  color: #54484a;
  font-size: 27px;
  line-height: 1;
}

.d48-password-login-form,
.d48-password-security-form {
  display: grid;
  gap: 15px;
}

.d48-password-login-form label,
.d48-password-security-form label {
  display: grid;
  gap: 7px;
}

.d48-password-login-form label span,
.d48-password-security-form label span {
  color: #776e6c;
  font-size: 13px;
  font-weight: 600;
}

.d48-password-login-form input,
.d48-password-security-form input {
  width: 100%;
  box-sizing: border-box;
  min-height: 52px;
  padding: 0 15px;
  border: 1px solid rgba(83, 60, 65, .13);
  border-radius: 17px;
  outline: none;
  background: rgba(255,255,255,.86);
  color: #251d1d;
  font: inherit;
  font-size: 16px;
}

.d48-password-login-form input:focus,
.d48-password-security-form input:focus {
  border-color: rgba(166, 62, 95, .42);
  box-shadow:
    0 0 0 4px rgba(166, 62, 95, .07);
}

.d48-password-primary {
  min-height: 52px;
  margin-top: 2px;
  padding: 0 18px;
  border: 0;
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      #ae5572,
      #943d5b
    );
  color: white;
  font: inherit;
  font-size: 15px;
  font-weight: 700;
  box-shadow:
    0 12px 28px rgba(148, 61, 91, .20);
}

.d48-password-primary:disabled {
  opacity: .55;
}

.d48-password-form-error {
  min-height: 18px;
  color: #a2415e;
  font-size: 13px;
  line-height: 1.4;
}

.d48-password-forgot {
  margin-top: 18px;
  color: #827776;
  font-size: 13px;
  line-height: 1.55;
}

.d48-password-other,
.d48-password-forgot-action {
  margin-top: 12px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #98415f;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
}

.d48-password-row {
  position: relative;
}

.d48-password-action,
.d48-provider-unlink {
  flex: 0 0 auto;
}

.d48-provider-unlink.is-protected {
  opacity: .52;
}

.d48-password-security-panel {
  margin: -1px 0 10px;
  padding:
    17px 0
    19px;
  border-bottom:
    1px solid rgba(36, 16, 24, .08);
}

.d48-password-rule {
  margin: -2px 0 0;
  color: rgba(37,31,29,.55);
  font-size: 12px;
  line-height: 1.5;
}

.d48-password-message {
  margin: 0 0 14px;
  padding: 12px 14px;
  border-radius: 15px;
  background: rgba(48, 128, 78, .08);
  color: #34734e;
  font-size: 13px;
  line-height: 1.45;
}

.d48-password-message.is-error {
  background: rgba(164, 65, 95, .08);
  color: #a4415f;
}

.d48-password-message.is-success {
  background: rgba(48, 128, 78, .08);
  color: #34734e;
}

/*
 * Old session list is intentionally hidden.
 * Session backend remains active for security.
 */
.date48-security-sessions-card,
[data-date48-security-controls] {
  display: none !important;
}

@media (max-width: 520px) {
  .d48-password-modal {
    padding: 22px 20px;
    border-radius: 26px;
  }

  .d48-password-modal h2 {
    font-size: 29px;
  }

  .d48-password-row
  .date48-security-provider-state {
    gap: 7px;
  }
}

/* /date48_password_auth_ui_css_v1 */


/* DATE48 CSS SOURCE 61: /assets/phone-trusted-login-v1-20260930_102914.css */
/* date48_trusted_phone_ui_css_v1 */

.d48-phone-claim-panel {
  margin: -1px 0 10px;
  padding:
    17px 0
    20px;
  border-bottom:
    1px solid rgba(36, 16, 24, .08);
}

.d48-phone-claim-form {
  display: grid;
  gap: 14px;
}

.d48-phone-claim-form label {
  display: grid;
  gap: 7px;
}

.d48-phone-claim-form label span {
  color: #776e6c;
  font-size: 13px;
  font-weight: 600;
}

.d48-phone-claim-form input {
  width: 100%;
  box-sizing: border-box;
  min-height: 52px;
  padding: 0 15px;
  border:
    1px solid
    rgba(83, 60, 65, .13);
  border-radius: 17px;
  outline: none;
  background:
    rgba(255,255,255,.86);
  color: #251d1d;
  font: inherit;
  font-size: 16px;
}

.d48-phone-claim-form input:focus {
  border-color:
    rgba(166, 62, 95, .42);
  box-shadow:
    0 0 0 4px
    rgba(166, 62, 95, .07);
}

.d48-phone-claim-note {
  margin: 0;
  color:
    rgba(37, 31, 29, .56);
  font-size: 12px;
  line-height: 1.55;
}

.d48-phone-claim-error {
  min-height: 18px;
  color: #a2415e;
  font-size: 13px;
  line-height: 1.4;
}

.d48-phone-claim-primary {
  min-height: 50px;
  border: 0;
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      #ae5572,
      #943d5b
    );
  color: #fff;
  font: inherit;
  font-size: 15px;
  font-weight: 700;
  box-shadow:
    0 12px 28px
    rgba(148,61,91,.18);
}

.d48-phone-claim-primary:disabled {
  opacity: .55;
}

/* /date48_trusted_phone_ui_css_v1 */


/* DATE48 CSS SOURCE 62: /assets/moderation-lk-v1-20261001_002240.css */
/* date48_moderation_lk_v1_20261001 */

.date48-account-moderation-v1 {
  position: relative;
  overflow: hidden;
  border:
    1px solid
    rgba(135,111,152,.16) !important;
  background:
    linear-gradient(
      145deg,
      rgba(118,85,143,.085),
      rgba(255,255,255,.60)
    ) !important;
}

.date48-account-moderation-v1::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: -75px;
  top: -95px;
  border-radius: 999px;
  background:
    radial-gradient(
      circle,
      rgba(137,101,164,.16),
      transparent 70%
    );
  pointer-events: none;
}

.date48-account-moderation-v1__copy {
  position: relative;
  z-index: 1;
}

.date48-account-moderation-v1__kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 7px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: rgba(72,52,88,.68);
}

.date48-account-moderation-v1__copy h2 {
  margin: 0;
}

.date48-account-moderation-v1__copy p {
  margin:
    7px 0 0;
}

.date48-account-moderation-v1__button {
  position: relative;
  z-index: 2;
  text-decoration: none;
  white-space: nowrap;
}

/* /date48_moderation_lk_v1_20261001 */


/* DATE48 CSS SOURCE 63: /assets/date48-dark-wine-v1-20261001_034749.css */
/*
============================================================
DATE48 — DARK WINE V1

Additive dark-only layer.
Light mode remains controlled entirely
by the existing production CSS.
============================================================
*/

html[data-date48-theme="dark"] {
  color-scheme: dark;

  --dw-bg: #0d090b;
  --dw-bg-deep: #090709;

  --dw-surface: #181215;
  --dw-surface-soft: #21181c;
  --dw-surface-raised: #291d22;

  --dw-text: #f7efec;
  --dw-muted: #b4a5a8;
  --dw-muted-2: #887b7e;

  --dw-line: rgba(255,255,255,.085);
  --dw-line-strong: rgba(255,255,255,.13);

  --dw-wine: #b94163;
  --dw-wine-bright: #cf5677;
  --dw-wine-deep: #922f4e;
  --dw-wine-soft: rgba(185,65,99,.17);

  --dw-shadow:
    0 18px 46px rgba(0,0,0,.28);

  /*
    Current V4 semantic layer
  */

  --d48-v4-bg:
    var(--dw-bg);

  --d48-v4-surface:
    var(--dw-surface);

  --d48-v4-surface-soft:
    var(--dw-surface-soft);

  --d48-v4-ink:
    var(--dw-text);

  --d48-v4-muted:
    var(--dw-muted);

  --d48-v4-muted-2:
    var(--dw-muted-2);

  --d48-v4-line:
    var(--dw-line);

  --d48-v4-shadow:
    var(--dw-shadow);

  --d48-v4-wine:
    var(--dw-wine);

  --d48-v4-wine-deep:
    #e5a0b2;

  --d48-v4-wine-soft:
    var(--dw-wine-soft);

  /*
    Utility semantic layer
  */

  --d48-u-bg:
    var(--dw-bg);

  --d48-u-bg-soft:
    #130e11;

  --d48-u-surface:
    var(--dw-surface);

  --d48-u-surface-strong:
    var(--dw-surface-raised);

  --d48-u-soft:
    var(--dw-surface-soft);

  --d48-u-ink:
    var(--dw-text);

  --d48-u-muted:
    var(--dw-muted);

  --d48-u-line:
    var(--dw-line);

  --d48-u-shadow:
    var(--dw-shadow);

  --d48-u-rose:
    var(--dw-wine);

  --d48-u-rose-deep:
    #e5a0b2;

  --d48-u-rose-dark:
    #7f2944;

  --d48-u-rose-soft:
    var(--dw-wine-soft);

  /*
    Own profile tokens
  */

  --d48-profile-bg:
    var(--dw-bg);

  --d48-profile-surface:
    var(--dw-surface);

  --d48-profile-surface-strong:
    var(--dw-surface-raised);

  --d48-profile-text:
    var(--dw-text);

  --d48-profile-ink:
    var(--dw-text);

  --d48-profile-muted:
    var(--dw-muted);

  --d48-profile-line:
    var(--dw-line);

  --d48-profile-shadow:
    var(--dw-shadow);

  --d48-profile-rose:
    var(--dw-wine);

  --d48-profile-rose-deep:
    #e5a0b2;

  --d48-profile-pink:
    var(--dw-wine);

  --d48-profile-pink-soft:
    var(--dw-wine-soft);

  --d48-profile-paper:
    rgba(24,18,21,.96);

  --d48-profile-champagne:
    #d9c6c0;

  /*
    Chat tokens
  */

  --d48-chat-bg:
    var(--dw-bg);

  --d48-chat-surface:
    var(--dw-surface);

  --d48-chat-soft:
    var(--dw-surface-soft);

  --d48-chat-ink:
    var(--dw-text);

  --d48-chat-muted:
    var(--dw-muted);

  --d48-chat-line:
    var(--dw-line);

  --d48-chat-wine:
    var(--dw-wine);

  --d48-chat-wine-deep:
    #e5a0b2;

  --d48-chat-wine-soft:
    var(--dw-wine-soft);

  /*
    Security tokens
  */

  --d48-security-text:
    var(--dw-text);

  --d48-security-surface:
    var(--dw-surface);

  --d48-security-muted:
    var(--dw-muted);

  --d48-security-line:
    var(--dw-line);

  --d48-security-rose:
    var(--dw-wine);

  --d48-security-rose-soft:
    var(--dw-wine-soft);

  /*
    Shared / older tokens
  */

  --d48-ink:
    var(--dw-text);

  --d48-muted:
    var(--dw-muted);

  --d48-milk:
    var(--dw-surface);

  --d48-card:
    var(--dw-surface);

  --d48-pink:
    var(--dw-wine);

  --d48-pink-soft:
    var(--dw-wine-soft);

  --date48-red:
    var(--dw-wine);

  --primary:
    var(--dw-wine);

  scrollbar-color:
    #54303a
    #120d0f;
}


/* =========================================================
   CANVAS
   ========================================================= */

html[data-date48-theme="dark"],
html[data-date48-theme="dark"] body,
html[data-date48-theme="dark"] #root {
  background-color:
    var(--dw-bg) !important;
}

html[data-date48-theme="dark"] body {
  color:
    var(--dw-text) !important;

  background:
    radial-gradient(
      circle at 14% 8%,
      rgba(126,36,64,.17),
      transparent 29%
    ),
    radial-gradient(
      circle at 92% 28%,
      rgba(79,26,46,.11),
      transparent 26%
    ),
    linear-gradient(
      180deg,
      #0d090b 0%,
      #100b0e 55%,
      #090709 100%
    ) !important;
}

html[data-date48-theme="dark"]
.app-shell {
  color:
    var(--dw-text);
}


/* =========================================================
   TOP BAR
   ========================================================= */

html[data-date48-theme="dark"]
.topbar,

html[data-date48-theme="dark"]
.brand {
  background:
    transparent !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.icon-btn {
  color:
    var(--dw-text) !important;

  background:
    rgba(31,23,27,.90) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   GENERIC CARD SURFACES
   ========================================================= */

html[data-date48-theme="dark"]
.section-card,

html[data-date48-theme="dark"]
.profile-card,

html[data-date48-theme="dark"]
.date48-feed-message,

html[data-date48-theme="dark"]
.date48-real-feed__empty {
  color:
    var(--dw-text) !important;

  background:
    rgba(24,18,21,.95) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.section-card--accent {
  background:
    linear-gradient(
      135deg,
      rgba(74,26,43,.58),
      rgba(29,20,24,.95)
    ) !important;
}


/* =========================================================
   BOTTOM NAV
   ========================================================= */

html[data-date48-theme="dark"]
.bottom-nav {
  background:
    rgba(24,18,21,.96) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    0 -12px 38px
    rgba(0,0,0,.30) !important;

  backdrop-filter:
    blur(22px)
    saturate(125%);
}

html[data-date48-theme="dark"]
.bottom-nav__item {
  color:
    var(--dw-muted) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item.is-active {
  color:
    var(--dw-text) !important;

  background:
    rgba(255,255,255,.055) !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item--primary {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #c34a6c 0%,
      #982f51 100%
    ) !important;

  box-shadow:
    0 11px 28px
    rgba(151,43,78,.35) !important;
}


/* =========================================================
   HOME / FEED
   ========================================================= */

html[data-date48-theme="dark"]
.date48-feed-title,

html[data-date48-theme="dark"]
.date48-feed-title h1,

html[data-date48-theme="dark"]
.date48-feed-title h2,

html[data-date48-theme="dark"]
.date48-real-post__body,

html[data-date48-theme="dark"]
.date48-classic-card__body,

html[data-date48-theme="dark"]
.date48-real-post__person,

html[data-date48-theme="dark"]
.date48-real-post__caption-wrap {
  color:
    var(--dw-text) !important;
}

html[data-date48-theme="dark"]
.date48-feed-title p,

html[data-date48-theme="dark"]
.date48-real-post__hint,

html[data-date48-theme="dark"]
.date48-classic-card__meta {
  color:
    var(--dw-muted) !important;
}

html[data-date48-theme="dark"]
.date48-inline-filters button {
  color:
    var(--dw-muted) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-inline-filters
button.is-active {
  color:
    #fff !important;

  background:
    var(--dw-wine) !important;

  border-color:
    var(--dw-wine) !important;
}

html[data-date48-theme="dark"]
.date48-classic-card,

html[data-date48-theme="dark"]
.date48-real-post,

html[data-date48-theme="dark"]
.date48-real-post__body,

html[data-date48-theme="dark"]
.date48-classic-card__body {
  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;
}


/* =========================================================
   PEOPLE
   ========================================================= */

html[data-date48-theme="dark"]
.date48-people-page,

html[data-date48-theme="dark"]
.date48-people-page--v3 {
  color:
    var(--dw-text) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-people-kicker {
  color:
    var(--dw-wine-bright) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__filter {
  color:
    var(--dw-muted) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__filter.is-active {
  color:
    #fff !important;

  background:
    var(--dw-wine) !important;

  border-color:
    var(--dw-wine) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__compass,

html[data-date48-theme="dark"]
.date48-people-v3__card {
  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__badge {
  color:
    #f8e8ed !important;

  background:
    rgba(17,11,14,.72) !important;

  border-color:
    rgba(255,255,255,.12) !important;

  backdrop-filter:
    blur(14px);
}

html[data-date48-theme="dark"]
.date48-people-v3__identity {
  color:
    var(--dw-text) !important;
}


/* =========================================================
   48 HOURS
   ========================================================= */

html[data-date48-theme="dark"]
.date48-page {
  color:
    var(--dw-text) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-muted,

html[data-date48-theme="dark"]
.date48-geo-card__text p,

html[data-date48-theme="dark"]
.date48-map-note,

html[data-date48-theme="dark"]
.date48-map-hint {
  color:
    var(--dw-muted) !important;
}

html[data-date48-theme="dark"]
.date48-mode-card,

html[data-date48-theme="dark"]
.date48-preferences-card,

html[data-date48-theme="dark"]
.date48-geo-card,

html[data-date48-theme="dark"]
.date48-places-entry,

html[data-date48-theme="dark"]
.date48-empty {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-chip {
  color:
    #c6b9bc !important;

  background:
    var(--dw-surface-soft) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-chip.is-active {
  color:
    #f6dce4 !important;

  background:
    var(--dw-wine-soft) !important;

  border-color:
    rgba(207,86,119,.28) !important;
}


/* =========================================================
   PLACES
   ========================================================= */

html[data-date48-theme="dark"]
.date48-places-page,

html[data-date48-theme="dark"]
.date48-place-detail-page,

html[data-date48-theme="dark"]
.date48-plan-page {
  color:
    var(--dw-text) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-places-filters button {
  color:
    var(--dw-muted) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-places-filters
button.is-active {
  color:
    #fff !important;

  background:
    var(--dw-wine) !important;

  border-color:
    var(--dw-wine) !important;
}

html[data-date48-theme="dark"]
.date48-place-card,

html[data-date48-theme="dark"]
.date48-place-detail-sheet,

html[data-date48-theme="dark"]
.date48-plan-page section,

html[data-date48-theme="dark"]
.date48-plan-page article,

html[data-date48-theme="dark"]
.date48-place-live-info,

html[data-date48-theme="dark"]
.date48-place-why,

html[data-date48-theme="dark"]
.date48-place-budget-compact,

html[data-date48-theme="dark"]
.date48-place-price-scenario {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-place-card__description,

html[data-date48-theme="dark"]
.date48-place-detail-address,

html[data-date48-theme="dark"]
.date48-place-live-info__source,

html[data-date48-theme="dark"]
.date48-place-price-scenario__description {
  color:
    var(--dw-muted) !important;
}

html[data-date48-theme="dark"]
.date48-place-card__tags span,

html[data-date48-theme="dark"]
.date48-place-card__scenarios span,

html[data-date48-theme="dark"]
.date48-place-detail-tags span {
  color:
    #c9bcc0 !important;

  background:
    var(--dw-surface-soft) !important;

  border-color:
    var(--dw-line) !important;
}

html[data-date48-theme="dark"]
.date48-place-detail-sticky {
  color:
    var(--dw-text) !important;

  background:
    rgba(20,14,17,.96) !important;

  border-color:
    var(--dw-line) !important;

  backdrop-filter:
    blur(20px);
}


/* =========================================================
   OWN PROFILE
   ========================================================= */

html[data-date48-theme="dark"]
.date48-account-page {
  color:
    var(--dw-text) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-account-panel,

html[data-date48-theme="dark"]
.date48-seeking-card,

html[data-date48-theme="dark"]
.date48-account-interests,

html[data-date48-theme="dark"]
.date48-account-posts,

html[data-date48-theme="dark"]
.date48-account-security-teaser,

html[data-date48-theme="dark"]
.date48-theme-card,

html[data-date48-theme="dark"]
.date48-account-param {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-account-kicker,

html[data-date48-theme="dark"]
.date48-account-section-kicker,

html[data-date48-theme="dark"]
.date48-eyebrow {
  color:
    var(--dw-wine-bright) !important;
}

html[data-date48-theme="dark"]
.date48-account-about,

html[data-date48-theme="dark"]
.date48-seeking-card__lead,

html[data-date48-theme="dark"]
.date48-seeking-card__note,

html[data-date48-theme="dark"]
.date48-account-posts__notice,

html[data-date48-theme="dark"]
.date48-theme-card__body p,

html[data-date48-theme="dark"]
.date48-account-security-teaser__body p {
  color:
    var(--dw-muted) !important;
}

html[data-date48-theme="dark"]
.date48-account-interest-chip,

html[data-date48-theme="dark"]
.date48-interest-editor__chip {
  color:
    #d3c5c8 !important;

  background:
    var(--dw-surface-soft) !important;

  border-color:
    var(--dw-line) !important;
}

html[data-date48-theme="dark"]
.date48-theme-card__icon,

html[data-date48-theme="dark"]
.date48-account-security-teaser__icon {
  color:
    #f2ccd7 !important;

  background:
    var(--dw-wine-soft) !important;
}

html[data-date48-theme="dark"]
.date48-account-main-action {
  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #c44b6c,
      #962e50
    ) !important;

  box-shadow:
    0 12px 26px
    rgba(151,43,78,.28) !important;
}

html[data-date48-theme="dark"]
.date48-account-logout {
  color:
    #df9bad !important;

  background:
    transparent !important;

  border-color:
    rgba(207,86,119,.26) !important;
}


/* =========================================================
   THEME SWITCH
   ========================================================= */

html[data-date48-theme="dark"]
.date48-theme-switch__track {
  background:
    #48212d !important;

  border-color:
    rgba(207,86,119,.26) !important;
}

html[data-date48-theme="dark"]
.date48-theme-switch
input:checked
+
.date48-theme-switch__track {
  background:
    var(--dw-wine) !important;
}

html[data-date48-theme="dark"]
.date48-theme-switch__thumb {
  background:
    #fff8f5 !important;

  box-shadow:
    0 3px 10px
    rgba(0,0,0,.30) !important;
}


/* =========================================================
   PUBLIC PERSON PROFILE
   ========================================================= */

html[data-date48-theme="dark"]
.person-page,

html[data-date48-theme="dark"]
.d48-premium-person {
  --d48-profile-ink:
    var(--dw-text);

  --d48-profile-muted:
    var(--dw-muted);

  --d48-profile-paper:
    rgba(24,18,21,.96);

  color:
    var(--dw-text) !important;

  background:
    linear-gradient(
      180deg,
      #0e0a0c 0%,
      #130d10 100%
    ) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__gallery,

html[data-date48-theme="dark"]
.d48-premium-person__signal-card,

html[data-date48-theme="dark"]
.d48-premium-person__about,

html[data-date48-theme="dark"]
.d48-premium-person__actions,

html[data-date48-theme="dark"]
.d48-profile-actions {
  color:
    var(--dw-text) !important;

  background:
    rgba(24,18,21,.96) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__about-copy,

html[data-date48-theme="dark"]
.d48-premium-person__section-head,

html[data-date48-theme="dark"]
.d48-premium-person__identity {
  color:
    var(--dw-text) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__section-head p,

html[data-date48-theme="dark"]
.d48-premium-person__location,

html[data-date48-theme="dark"]
.d48-premium-person__actions-caption {
  color:
    var(--dw-muted) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__match-pill {
  color:
    #fae8ed !important;

  background:
    rgba(78,28,45,.78) !important;

  border-color:
    rgba(255,255,255,.12) !important;
}


/* =========================================================
   MATCHES
   ========================================================= */

html[data-date48-theme="dark"]
.date48-matches-page {
  color:
    var(--dw-text) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-match-row,

html[data-date48-theme="dark"]
.date48-matches-status,

html[data-date48-theme="dark"]
.date48-matches-empty {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-match-row__body small,

html[data-date48-theme="dark"]
.date48-match-row__meta small {
  color:
    var(--dw-muted) !important;
}


/* =========================================================
   CHAT
   ========================================================= */

html[data-date48-theme="dark"]
.date48-chat-page {
  color:
    var(--dw-text) !important;

  background:
    linear-gradient(
      180deg,
      #0d090b 0%,
      #120c0f 100%
    ) !important;
}

html[data-date48-theme="dark"]
.date48-chat-head {
  color:
    var(--dw-text) !important;

  background:
    rgba(16,11,14,.92) !important;

  border-color:
    var(--dw-line) !important;

  backdrop-filter:
    blur(22px);
}

html[data-date48-theme="dark"]
.date48-chat-head__back {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface-soft) !important;

  border-color:
    var(--dw-line) !important;
}

html[data-date48-theme="dark"]
.date48-chat-head__date,

html[data-date48-theme="dark"]
.date48-chat-person__copy small,

html[data-date48-theme="dark"]
.date48-chat-intro {
  color:
    var(--dw-muted) !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer,

html[data-date48-theme="dark"]
.date48-chat-composer--v2,

html[data-date48-theme="dark"]
.date48-chat-emoji-panel,

html[data-date48-theme="dark"]
.date48-chat-photo-preview,

html[data-date48-theme="dark"]
.date48-chat-state {
  color:
    var(--dw-text) !important;

  background:
    rgba(25,18,22,.97) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    0 -12px 38px
    rgba(0,0,0,.22) !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__field {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface-soft) !important;

  border-color:
    var(--dw-line) !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__field::placeholder {
  color:
    var(--dw-muted-2) !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__send {
  color:
    #fff !important;

  background:
    var(--dw-wine) !important;

  border-color:
    var(--dw-wine) !important;
}


/* =========================================================
   AUTH / ONBOARDING
   ========================================================= */

html[data-date48-theme="dark"]
.date48-auth-page {
  color:
    var(--dw-text) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-onboarding-card,

html[data-date48-theme="dark"]
.date48-auth-card {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    var(--dw-shadow) !important;
}


/* =========================================================
   INPUTS
   ========================================================= */

html[data-date48-theme="dark"]
:is(
  .date48-account-page,
  .date48-auth-page,
  .date48-chat-page,
  .date48-page
)
:is(
  input,
  textarea,
  select
) {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface-soft) !important;

  border-color:
    var(--dw-line) !important;

  caret-color:
    var(--dw-wine-bright);
}

html[data-date48-theme="dark"]
:is(
  .date48-account-page,
  .date48-auth-page,
  .date48-chat-page,
  .date48-page
)
:is(
  input,
  textarea
)::placeholder {
  color:
    var(--dw-muted-2) !important;
}


/* =========================================================
   SHEETS / MODALS
   ========================================================= */

html[data-date48-theme="dark"]
.date48-interest-editor__sheet,

html[data-date48-theme="dark"]
.date48-post-composer__sheet,

html[data-date48-theme="dark"]
.date48-avatar-crop-sheet,

html[data-date48-theme="dark"]
.date48-map-sheet__panel,

html[data-date48-theme="dark"]
.date48-story-compose__sheet {
  color:
    var(--dw-text) !important;

  background:
    var(--dw-surface-raised) !important;

  border-color:
    var(--dw-line) !important;

  box-shadow:
    0 -18px 58px
    rgba(0,0,0,.40) !important;
}

html[data-date48-theme="dark"]
.date48-post-composer__backdrop,

html[data-date48-theme="dark"]
.date48-avatar-crop-backdrop,

html[data-date48-theme="dark"]
.date48-map-sheet__backdrop {
  background:
    rgba(4,3,4,.70) !important;
}


/* =========================================================
   MAP FRAME
   Keep Yandex geography untouched.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-map-preview,

html[data-date48-theme="dark"]
.date48-map-shell {
  background:
    #171316 !important;

  border-color:
    var(--dw-line) !important;

  overflow:
    hidden;
}


/* =========================================================
   USER / VENUE MEDIA
   Never tint photos.
   ========================================================= */

html[data-date48-theme="dark"] img,
html[data-date48-theme="dark"] video {
  filter:
    none !important;
}


/* =========================================================
   SELECTION
   ========================================================= */

html[data-date48-theme="dark"] ::selection {
  color:
    #fff;

  background:
    rgba(185,65,99,.72);
}


/* DATE48 CSS SOURCE 64: /assets/date48-dark-wine-v1-1-polish-20261001_040041.css */
/*
============================================================
DATE48 DARK WINE V1.1
SYSTEM POLISH

Loaded after Dark Wine V1.
All rules are DARK ONLY.
============================================================
*/

html[data-date48-theme="dark"] {
  --dw11-bg: #0b0809;
  --dw11-bg-soft: #100b0d;

  --dw11-surface: #171113;
  --dw11-surface-2: #1d1518;
  --dw11-surface-3: #251a1e;

  --dw11-text: #f7efec;
  --dw11-text-soft: #ded3d2;
  --dw11-muted: #b9adaf;
  --dw11-muted-2: #93868a;

  --dw11-line: rgba(255,255,255,.10);
  --dw11-line-strong: rgba(255,255,255,.16);

  --dw11-wine: #be4265;
  --dw11-wine-hot: #d45578;
  --dw11-wine-deep: #8c2b49;

  --dw11-wine-soft: rgba(190,66,101,.16);
  --dw11-wine-soft-2: rgba(190,66,101,.24);

  --dw11-shadow:
    0 16px 38px rgba(0,0,0,.28);

  /*
    Rebind every existing semantic family.
  */

  --dw-bg: var(--dw11-bg);
  --dw-bg-deep: #070506;
  --dw-surface: var(--dw11-surface);
  --dw-surface-soft: var(--dw11-surface-2);
  --dw-surface-raised: var(--dw11-surface-3);
  --dw-text: var(--dw11-text);
  --dw-muted: var(--dw11-muted);
  --dw-muted-2: var(--dw11-muted-2);
  --dw-line: var(--dw11-line);
  --dw-line-strong: var(--dw11-line-strong);
  --dw-wine: var(--dw11-wine);
  --dw-wine-bright: var(--dw11-wine-hot);
  --dw-wine-deep: var(--dw11-wine-deep);
  --dw-wine-soft: var(--dw11-wine-soft);
  --dw-shadow: var(--dw11-shadow);

  --d48-v4-bg: var(--dw11-bg);
  --d48-v4-surface: var(--dw11-surface);
  --d48-v4-surface-soft: var(--dw11-surface-2);
  --d48-v4-ink: var(--dw11-text);
  --d48-v4-muted: var(--dw11-muted);
  --d48-v4-muted-2: var(--dw11-muted-2);
  --d48-v4-line: var(--dw11-line);
  --d48-v4-shadow: var(--dw11-shadow);
  --d48-v4-wine: var(--dw11-wine);
  --d48-v4-wine-deep: #e9a9bb;
  --d48-v4-wine-soft: var(--dw11-wine-soft);

  --d48-u-bg: var(--dw11-bg);
  --d48-u-bg-soft: var(--dw11-bg-soft);
  --d48-u-surface: var(--dw11-surface);
  --d48-u-surface-strong: var(--dw11-surface-3);
  --d48-u-soft: var(--dw11-surface-2);
  --d48-u-ink: var(--dw11-text);
  --d48-u-muted: var(--dw11-muted);
  --d48-u-line: var(--dw11-line);
  --d48-u-shadow: var(--dw11-shadow);
  --d48-u-rose: var(--dw11-wine);
  --d48-u-rose-deep: #e9a9bb;
  --d48-u-rose-dark: #7c2742;
  --d48-u-rose-soft: var(--dw11-wine-soft);

  --d48-profile-bg: var(--dw11-bg);
  --d48-profile-surface: var(--dw11-surface);
  --d48-profile-surface-strong: var(--dw11-surface-3);
  --d48-profile-text: var(--dw11-text);
  --d48-profile-ink: var(--dw11-text);
  --d48-profile-muted: var(--dw11-muted);
  --d48-profile-line: var(--dw11-line);
  --d48-profile-shadow: var(--dw11-shadow);
  --d48-profile-rose: var(--dw11-wine);
  --d48-profile-rose-deep: #e9a9bb;
  --d48-profile-pink: var(--dw11-wine);
  --d48-profile-pink-soft: var(--dw11-wine-soft);
  --d48-profile-paper: rgba(23,17,19,.97);

  --d48-chat-bg: var(--dw11-bg);
  --d48-chat-surface: var(--dw11-surface);
  --d48-chat-soft: var(--dw11-surface-2);
  --d48-chat-ink: var(--dw11-text);
  --d48-chat-muted: var(--dw11-muted);
  --d48-chat-line: var(--dw11-line);
  --d48-chat-wine: var(--dw11-wine);
  --d48-chat-wine-deep: #e9a9bb;
  --d48-chat-wine-soft: var(--dw11-wine-soft);

  --d48-security-text: var(--dw11-text);
  --d48-security-surface: var(--dw11-surface);
  --d48-security-muted: var(--dw11-muted);
  --d48-security-line: var(--dw11-line);
  --d48-security-rose: var(--dw11-wine);
  --d48-security-rose-soft: var(--dw11-wine-soft);
}


/* =========================================================
   GLOBAL DARK CANVAS
   ========================================================= */

html[data-date48-theme="dark"],
html[data-date48-theme="dark"] body,
html[data-date48-theme="dark"] #root {
  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"] body {
  color:
    var(--dw11-text) !important;

  background:
    radial-gradient(
      circle at 18% 6%,
      rgba(116,31,58,.14),
      transparent 25%
    ),
    linear-gradient(
      180deg,
      #0b0809 0%,
      #0d090b 52%,
      #080607 100%
    ) !important;
}


/* =========================================================
   UNIVERSAL TEXT CONTRAST
   ========================================================= */

html[data-date48-theme="dark"]
:is(
  .date48-account-page,
  .date48-page,
  .date48-mode,
  .date48-people-page,
  .date48-matches-page,
  .date48-chat-page,
  .date48-places-page,
  .date48-place-detail-page,
  .d48-premium-person
)
:is(
  h1,
  h2,
  h3,
  h4,
  strong
) {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
:is(
  .date48-account-page,
  .date48-page,
  .date48-mode,
  .date48-people-page,
  .date48-matches-page,
  .date48-chat-page,
  .date48-places-page,
  .date48-place-detail-page,
  .d48-premium-person
)
:is(
  p,
  small
) {
  color:
    var(--dw11-muted) !important;
}


/* =========================================================
   TOP BAR
   Kill remaining white square controls.
   ========================================================= */

html[data-date48-theme="dark"]
.topbar button,

html[data-date48-theme="dark"]
.topbar .icon-btn,

html[data-date48-theme="dark"]
[class*="topbar"] button {
  color:
    var(--dw11-text) !important;

  background:
    rgba(29,21,24,.94) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   BOTTOM NAV
   Force one consistent wine system.
   ========================================================= */

html[data-date48-theme="dark"]
.bottom-nav {
  background:
    rgba(20,14,17,.97) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    0 18px 50px rgba(0,0,0,.46) !important;

  backdrop-filter:
    blur(24px)
    saturate(120%);
}

html[data-date48-theme="dark"]
.bottom-nav__item {
  color:
    #c6bbbd !important;

  background:
    transparent !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item.is-active {
  color:
    #fff !important;

  background:
    rgba(255,255,255,.055) !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item:nth-child(3),

html[data-date48-theme="dark"]
.bottom-nav__item--primary {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #cb4b70,
      #9d3152
    ) !important;

  border-color:
    rgba(255,255,255,.70) !important;

  box-shadow:
    0 10px 30px
    rgba(173,50,87,.30) !important;
}


/* =========================================================
   OWN PROFILE
   Turn random light cards into coherent dark surfaces.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-account-page > section:not(.date48-account-hero),

html[data-date48-theme="dark"]
.date48-account-panel,

html[data-date48-theme="dark"]
.date48-seeking-card,

html[data-date48-theme="dark"]
.date48-account-interests,

html[data-date48-theme="dark"]
.date48-account-posts,

html[data-date48-theme="dark"]
.date48-account-security-teaser,

html[data-date48-theme="dark"]
.date48-theme-card {
  color:
    var(--dw11-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #151012
    ) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    var(--dw11-shadow) !important;
}


/* direct section typography catches added profile modules */

html[data-date48-theme="dark"]
.date48-account-page > section:not(.date48-account-hero)
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-account-page > section:not(.date48-account-hero)
:is(
  p,
  small,
  label
) {
  color:
    var(--dw11-muted) !important;
}


/* profile grid cells */

html[data-date48-theme="dark"]
.date48-account-param,

html[data-date48-theme="dark"]
.date48-seeking-card__item {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-account-param *,

html[data-date48-theme="dark"]
.date48-seeking-card__item * {
  color:
    inherit !important;
}


/* section buttons / status pills / saved controls */

html[data-date48-theme="dark"]
.date48-account-page > section:not(.date48-account-hero)
button:not(.date48-account-main-action) {
  color:
    var(--dw11-text-soft) !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-account-page > section:not(.date48-account-hero)
button[aria-pressed="true"],

html[data-date48-theme="dark"]
.date48-account-page > section:not(.date48-account-hero)
button.is-active {
  color:
    #fff !important;

  background:
    var(--dw11-wine) !important;

  border-color:
    var(--dw11-wine) !important;
}


/* interest chips */

html[data-date48-theme="dark"]
.date48-account-interest-chip,

html[data-date48-theme="dark"]
.date48-interest-editor__chip {
  color:
    #e4d8d9 !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    var(--dw11-line) !important;
}


/* photo / moments surfaces */

html[data-date48-theme="dark"]
.date48-account-posts__empty {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-account-post__make-main {
  color:
    #fff !important;

  background:
    rgba(15,10,12,.76) !important;

  border-color:
    rgba(255,255,255,.24) !important;

  backdrop-filter:
    blur(12px);
}


/* profile safety and theme readable */

html[data-date48-theme="dark"]
.date48-account-security-teaser__body h2,

html[data-date48-theme="dark"]
.date48-theme-card__body h2 {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-account-security-teaser__body p,

html[data-date48-theme="dark"]
.date48-theme-card__body p {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.date48-account-security-teaser__link {
  color:
    #e19aae !important;
}


/* owner moderation / safety patched modules */

html[data-date48-theme="dark"]
.date48-account-page
[class*="moderation"],

html[data-date48-theme="dark"]
.date48-account-page
[class*="safety"] {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-account-page
[class*="moderation"]
button,

html[data-date48-theme="dark"]
.date48-account-page
[class*="safety"]
button {
  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #a93457,
      #73233d
    ) !important;

  border-color:
    rgba(255,255,255,.12) !important;
}


/* =========================================================
   HOME / FEED
   Remove white utility islands.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-feed-title h1 {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-feed-title p {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.date48-inline-filters button {
  color:
    var(--dw11-text-soft) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-inline-filters button.is-active {
  color:
    #fff !important;

  background:
    var(--dw11-wine) !important;
}


/* injected feed composer / status / saved modules */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
[class*="feed-composer"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
[class*="moment-entry"] {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
[class*="feed-composer"]
button,

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
[class*="moment-entry"]
button {
  color:
    var(--dw11-text-soft) !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    var(--dw11-line) !important;
}


/* feed cards */

html[data-date48-theme="dark"]
.date48-classic-card,

html[data-date48-theme="dark"]
.date48-real-post,

html[data-date48-theme="dark"]
.date48-real-feed__empty {
  background:
    var(--dw11-surface) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    var(--dw11-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-classic-card__body,

html[data-date48-theme="dark"]
.date48-real-post__body {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface) !important;
}

html[data-date48-theme="dark"]
.date48-classic-card__meta,

html[data-date48-theme="dark"]
.date48-real-post__hint {
  color:
    var(--dw11-muted) !important;
}


/* story add */

html[data-date48-theme="dark"]
.date48-inline-story--add
.date48-inline-story__thumb {
  color:
    #f2dfe5 !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    rgba(212,85,120,.34) !important;
}


/* =========================================================
   48 HOURS
   Main screen was still largely white.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-page {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-mode-card,

html[data-date48-theme="dark"]
.date48-benefits,

html[data-date48-theme="dark"]
.date48-preferences-card,

html[data-date48-theme="dark"]
.date48-geo-card,

html[data-date48-theme="dark"]
.date48-places-entry,

html[data-date48-theme="dark"]
.date48-feed-list,

html[data-date48-theme="dark"]
.date48-profile-card,

html[data-date48-theme="dark"]
.date48-empty {
  color:
    var(--dw11-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #151012
    ) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    var(--dw11-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-mode-card
:is(h1,h2,h3,strong),

html[data-date48-theme="dark"]
.date48-benefits
:is(h1,h2,h3,strong),

html[data-date48-theme="dark"]
.date48-preferences-card
:is(h1,h2,h3,strong),

html[data-date48-theme="dark"]
.date48-geo-card
:is(h1,h2,h3,strong),

html[data-date48-theme="dark"]
.date48-feed-list
:is(h1,h2,h3,strong),

html[data-date48-theme="dark"]
.date48-profile-card
:is(h1,h2,h3,strong) {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-mode-card
:is(p,small),

html[data-date48-theme="dark"]
.date48-benefits
:is(p,small),

html[data-date48-theme="dark"]
.date48-preferences-card
:is(p,small),

html[data-date48-theme="dark"]
.date48-geo-card
:is(p,small),

html[data-date48-theme="dark"]
.date48-feed-list
:is(p,small),

html[data-date48-theme="dark"]
.date48-profile-card
:is(p,small) {
  color:
    var(--dw11-muted) !important;
}


/* 48 intent chips */

html[data-date48-theme="dark"]
.date48-chip,

html[data-date48-theme="dark"]
.date48-chips button,

html[data-date48-theme="dark"]
.date48-mode-chips button {
  color:
    var(--dw11-text-soft) !important;

  background:
    var(--dw11-surface-3) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-chip.is-active,

html[data-date48-theme="dark"]
.date48-chips button.is-active {
  color:
    #fff !important;

  background:
    var(--dw11-wine) !important;

  border-color:
    var(--dw11-wine) !important;
}


/* readiness toggle */

html[data-date48-theme="dark"]
.date48-toggle {
  background:
    #3b3034 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.06) !important;
}

html[data-date48-theme="dark"]
.date48-toggle.is-on {
  background:
    var(--dw11-wine) !important;
}


/* nearby people */

html[data-date48-theme="dark"]
.date48-feed-head {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-ready-badge {
  color:
    #ecdce0 !important;

  background:
    var(--dw11-wine-soft) !important;
}


/* place suggestion entry */

html[data-date48-theme="dark"]
.date48-places-entry {
  background:
    linear-gradient(
      135deg,
      rgba(145,39,71,.82),
      rgba(60,25,38,.96)
    ) !important;
}

html[data-date48-theme="dark"]
.date48-places-entry * {
  color:
    #fff !important;
}


/* =========================================================
   48 MAP
   Shell dark; map geography itself stays untouched.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-map-sheet__panel {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-map-sheet__head,

html[data-date48-theme="dark"]
.date48-map-sheet__label {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-map-note,

html[data-date48-theme="dark"]
.date48-map-hint {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.date48-location-button,

html[data-date48-theme="dark"]
.date48-map-apply {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-map-shell,

html[data-date48-theme="dark"]
.date48-map-preview {
  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   MODE 48
   ========================================================= */

html[data-date48-theme="dark"]
.date48-mode {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-mode-panel,

html[data-date48-theme="dark"]
.date48-mode-notice,

html[data-date48-theme="dark"]
.date48-mode-person {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface) !important;

  border-color:
    var(--dw11-line) !important;

  box-shadow:
    var(--dw11-shadow) !important;
}


/* =========================================================
   PEOPLE
   ========================================================= */

html[data-date48-theme="dark"]
.date48-people-page {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__compass,

html[data-date48-theme="dark"]
.date48-people-v3__empty {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface) !important;

  border-color:
    var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__compass
:is(h1,h2,h3,strong),

html[data-date48-theme="dark"]
.date48-people-v3__identity {
  color:
    var(--dw11-text) !important;
}


/* =========================================================
   MATCHES / CHATS LIST
   ========================================================= */

html[data-date48-theme="dark"]
.date48-matches-page {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-matches-head h1,

html[data-date48-theme="dark"]
.date48-match-row__body strong {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-matches-head p,

html[data-date48-theme="dark"]
.date48-match-row__body small,

html[data-date48-theme="dark"]
.date48-match-row__meta {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.date48-match-row,

html[data-date48-theme="dark"]
.date48-matches-status,

html[data-date48-theme="dark"]
.date48-matches-empty {
  color:
    var(--dw11-text) !important;

  background:
    linear-gradient(
      180deg,
      #1a1316,
      #151012
    ) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    0 12px 30px rgba(0,0,0,.22) !important;
}


/* =========================================================
   CHAT
   ========================================================= */

html[data-date48-theme="dark"]
.date48-chat-page {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-chat-head {
  color:
    var(--dw11-text) !important;

  background:
    rgba(18,12,15,.94) !important;

  border:
    1px solid var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-chat-person__copy,

html[data-date48-theme="dark"]
.date48-chat-person__copy strong {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-chat-person__copy small,

html[data-date48-theme="dark"]
.date48-chat-head__date,

html[data-date48-theme="dark"]
.date48-chat-intro {
  color:
    var(--dw11-muted) !important;
}


/* all known media message types */

html[data-date48-theme="dark"]
.date48-chat-voice-message,

html[data-date48-theme="dark"]
.date48-chat-circle-message,

html[data-date48-theme="dark"]
.date48-chat-photo-bubble {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border:
    1px solid var(--dw11-line) !important;
}


/* patched meeting/message classes from runtime layers */

html[data-date48-theme="dark"]
.date48-chat-thread
[class*="message"],

html[data-date48-theme="dark"]
.date48-chat-thread
[class*="bubble"],

html[data-date48-theme="dark"]
.date48-chat-thread
[class*="meeting"],

html[data-date48-theme="dark"]
.date48-chat-thread
[class*="proposal"] {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;
}


/* inline-styled old text bubbles */

html[data-date48-theme="dark"]
.date48-chat-thread
> div[style*="background"] {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-chat-thread
:is(
  time,
  small
) {
  color:
    var(--dw11-muted-2) !important;
}


/* meeting cards */

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"] {
  color:
    var(--dw11-text) !important;

  background:
    linear-gradient(
      135deg,
      #25171d,
      #1a1215
    ) !important;

  border-color:
    rgba(212,85,120,.20) !important;
}

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"]
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"]
:is(
  p,
  small
) {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"]
button {
  color:
    #f5e8ec !important;

  background:
    var(--dw11-wine-soft) !important;

  border-color:
    rgba(212,85,120,.20) !important;
}


/* composer */

html[data-date48-theme="dark"]
.date48-chat-composer {
  background:
    rgba(22,15,18,.98) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    0 -8px 32px rgba(0,0,0,.22) !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__field {
  color:
    var(--dw11-text) !important;

  background:
    transparent !important;

  border-color:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__field::placeholder {
  color:
    var(--dw11-muted-2) !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__attachment,

html[data-date48-theme="dark"]
.date48-chat-composer__voice,

html[data-date48-theme="dark"]
.date48-chat-composer__circle {
  color:
    #c893a2 !important;
}

html[data-date48-theme="dark"]
.date48-chat-composer__send {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #c94a6f,
      #96304f
    ) !important;
}


/* =========================================================
   PUBLIC PERSON PROFILE
   ========================================================= */

html[data-date48-theme="dark"]
.d48-premium-person {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__gallery,

html[data-date48-theme="dark"]
.d48-premium-person__signal-card,

html[data-date48-theme="dark"]
.d48-premium-person__about,

html[data-date48-theme="dark"]
.d48-premium-person__actions,

html[data-date48-theme="dark"]
.d48-profile-actions {
  color:
    var(--dw11-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #151012
    ) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    var(--dw11-shadow) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__section-head,

html[data-date48-theme="dark"]
.d48-premium-person__about-copy {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__section-head p,

html[data-date48-theme="dark"]
.d48-premium-person__location,

html[data-date48-theme="dark"]
.d48-premium-person__actions-caption {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.d48-premium-person__action--secondary {
  color:
    var(--dw11-text-soft) !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    var(--dw11-line) !important;
}


/* =========================================================
   PLACES
   ========================================================= */

html[data-date48-theme="dark"]
.date48-places-page,

html[data-date48-theme="dark"]
.date48-place-detail-page {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-bg) !important;
}

html[data-date48-theme="dark"]
.date48-place-card,

html[data-date48-theme="dark"]
.date48-place-detail-sheet,

html[data-date48-theme="dark"]
.date48-place-live-info,

html[data-date48-theme="dark"]
.date48-place-why,

html[data-date48-theme="dark"]
.date48-place-budget-compact,

html[data-date48-theme="dark"]
.date48-place-price-scenario {
  color:
    var(--dw11-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #151012
    ) !important;

  border:
    1px solid var(--dw11-line) !important;

  box-shadow:
    var(--dw11-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-place-card
:is(
  h1,
  h2,
  h3,
  strong
),

html[data-date48-theme="dark"]
.date48-place-detail-sheet
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--dw11-text) !important;
}

html[data-date48-theme="dark"]
.date48-place-card__description,

html[data-date48-theme="dark"]
.date48-place-card__meta,

html[data-date48-theme="dark"]
.date48-place-detail-address,

html[data-date48-theme="dark"]
.date48-place-live-info__source,

html[data-date48-theme="dark"]
.date48-place-price-scenario__description {
  color:
    var(--dw11-muted) !important;
}

html[data-date48-theme="dark"]
.date48-place-card__tags span,

html[data-date48-theme="dark"]
.date48-place-card__scenarios span,

html[data-date48-theme="dark"]
.date48-place-detail-tags span {
  color:
    #e0d3d6 !important;

  background:
    var(--dw11-surface-3) !important;

  border-color:
    var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-places-filters button {
  color:
    var(--dw11-text-soft) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;
}

html[data-date48-theme="dark"]
.date48-places-filters button.is-active {
  color:
    #fff !important;

  background:
    var(--dw11-wine) !important;
}


/* =========================================================
   MODALS / SHEETS
   ========================================================= */

html[data-date48-theme="dark"]
.date48-interest-editor__sheet,

html[data-date48-theme="dark"]
.date48-post-composer__sheet,

html[data-date48-theme="dark"]
.date48-avatar-crop-sheet,

html[data-date48-theme="dark"]
.date48-story-compose__sheet,

html[data-date48-theme="dark"]
.date48-chat-emoji-panel {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-3) !important;

  border:
    1px solid var(--dw11-line) !important;
}


/* =========================================================
   FORMS
   ========================================================= */

html[data-date48-theme="dark"]
:is(
  .date48-account-page,
  .date48-page,
  .date48-chat-page,
  .date48-auth-page
)
:is(
  input,
  textarea,
  select
) {
  color:
    var(--dw11-text) !important;

  background:
    var(--dw11-surface-2) !important;

  border-color:
    var(--dw11-line) !important;

  caret-color:
    var(--dw11-wine-hot);
}

html[data-date48-theme="dark"]
:is(
  .date48-account-page,
  .date48-page,
  .date48-chat-page,
  .date48-auth-page
)
:is(
  input,
  textarea
)::placeholder {
  color:
    var(--dw11-muted-2) !important;
}


/* =========================================================
   MEDIA SAFETY
   ========================================================= */

html[data-date48-theme="dark"] img,
html[data-date48-theme="dark"] video {
  filter:
    none !important;
}


/* DATE48 CSS SOURCE 65: /assets/date48-dark-wine-v1-2-complete-20261001_042356.css */
/*
============================================================
DATE48 DARK WINE V1.2
COMPLETE DARK PASS

Purpose:
- remove remaining accidental light surfaces
- finish profile / feed / 48 / people / person profile
- correct chat bubbles
- correct topbar action
- preserve Yandex map readability

DARK ONLY.
============================================================
*/

html[data-date48-theme="dark"] {
  --dw12-bg: #090708;
  --dw12-bg-soft: #0f0a0c;

  --dw12-surface: #171113;
  --dw12-surface-2: #1e1619;
  --dw12-surface-3: #271b20;

  --dw12-text: #f7f0ed;
  --dw12-text-soft: #ddd2d3;
  --dw12-muted: #b4a8aa;
  --dw12-muted-2: #8f8386;

  --dw12-line: rgba(255,255,255,.10);
  --dw12-line-strong: rgba(255,255,255,.17);

  --dw12-wine: #c3476b;
  --dw12-wine-hot: #d65b7d;
  --dw12-wine-soft: rgba(195,71,107,.17);

  --dw12-shadow:
    0 18px 42px rgba(0,0,0,.30);
}


/* =========================================================
   COMPLETE APP SHELL
   ========================================================= */

html[data-date48-theme="dark"],
html[data-date48-theme="dark"] body,
html[data-date48-theme="dark"] #root,
html[data-date48-theme="dark"] .app-shell,
html[data-date48-theme="dark"] main {
  background:
    var(--dw12-bg) !important;

  color:
    var(--dw12-text) !important;
}


/* =========================================================
   TOPBAR
   Fix remaining white square / profile action.
   ========================================================= */

html[data-date48-theme="dark"] .topbar {
  background:
    var(--dw12-bg) !important;
}

html[data-date48-theme="dark"]
.topbar
a:not(.brand),

html[data-date48-theme="dark"]
.topbar
button,

html[data-date48-theme="dark"]
.topbar
> :last-child:not(.brand) {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface-2) !important;

  border-color:
    var(--dw12-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.topbar
a:not(.brand)
img {
  background:
    transparent !important;
}


/* =========================================================
   OWN PROFILE
   All content modules dark — no white islands.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-account-page {
  background:
    var(--dw12-bg) !important;
}

html[data-date48-theme="dark"]
.date48-account-page
section:not(.date48-account-hero),

html[data-date48-theme="dark"]
.date48-account-panel,

html[data-date48-theme="dark"]
.date48-seeking-card,

html[data-date48-theme="dark"]
.date48-account-interests,

html[data-date48-theme="dark"]
.date48-account-posts,

html[data-date48-theme="dark"]
.date48-account-security-teaser,

html[data-date48-theme="dark"]
.date48-theme-card {
  color:
    var(--dw12-text) !important;

  background:
    linear-gradient(
      180deg,
      #181214,
      #141012
    ) !important;

  border:
    1px solid var(--dw12-line) !important;

  box-shadow:
    var(--dw12-shadow) !important;
}


/*
 Runtime-added profile sections:
 saved / status / moments.
*/

html[data-date48-theme="dark"]
.date48-account-page
:is(section,article,div)[class*="saved"],

html[data-date48-theme="dark"]
.date48-account-page
:is(section,article,div)[class*="status"],

html[data-date48-theme="dark"]
.date48-account-page
:is(section,article,div)[class*="moment"] {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface) !important;

  border-color:
    var(--dw12-line) !important;
}


/* headings */

html[data-date48-theme="dark"]
.date48-account-page
section:not(.date48-account-hero)
:is(h1,h2,h3,h4,strong),

html[data-date48-theme="dark"]
.date48-account-page
:is(
  [class*="saved"],
  [class*="status"],
  [class*="moment"]
)
:is(h1,h2,h3,h4,strong) {
  color:
    var(--dw12-text) !important;
}


/* supporting text */

html[data-date48-theme="dark"]
.date48-account-page
section:not(.date48-account-hero)
:is(p,small),

html[data-date48-theme="dark"]
.date48-account-page
:is(
  [class*="saved"],
  [class*="status"],
  [class*="moment"]
)
:is(p,small) {
  color:
    var(--dw12-muted) !important;
}


/* profile status buttons */

html[data-date48-theme="dark"]
.date48-account-page
:is(
  [class*="status"],
  [class*="saved"],
  [class*="moment"]
)
button {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-3) !important;

  border:
    1px solid var(--dw12-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.date48-account-page
:is(
  [class*="status"],
  [class*="saved"],
  [class*="moment"]
)
button:is(
  .is-active,
  [aria-pressed="true"]
) {
  color:
    #fff !important;

  background:
    var(--dw12-wine) !important;

  border-color:
    var(--dw12-wine) !important;
}


/* photo grids remain photo-first */

html[data-date48-theme="dark"]
.date48-account-post,

html[data-date48-theme="dark"]
.date48-account-post__main {
  background:
    transparent !important;
}


/* =========================================================
   HOME / FEED
   Remove remaining white composer/status controls.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-feed-title {
  background:
    transparent !important;
}

html[data-date48-theme="dark"]
.date48-feed-title h1 {
  color:
    var(--dw12-text) !important;
}

html[data-date48-theme="dark"]
.date48-feed-title p {
  color:
    var(--dw12-muted) !important;
}


/* runtime feed composer modules */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
:is(section,article,div)[class*="composer"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
:is(section,article,div)[class*="moment-entry"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
:is(section,article,div)[class*="feed-status"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
:is(section,article,div)[class*="feed-saved"] {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface-2) !important;

  border-color:
    var(--dw12-line) !important;

  box-shadow:
    none !important;
}


/* composer controls */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
:is(
  [class*="composer"],
  [class*="moment-entry"],
  [class*="feed-status"],
  [class*="feed-saved"]
)
button {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-3) !important;

  border-color:
    var(--dw12-line) !important;
}


/* inline feed intent chips */

html[data-date48-theme="dark"]
.date48-inline-filters button {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-2) !important;

  border:
    1px solid var(--dw12-line) !important;
}

html[data-date48-theme="dark"]
.date48-inline-filters button.is-active {
  color:
    #fff !important;

  background:
    var(--dw12-wine) !important;

  border-color:
    var(--dw12-wine) !important;
}


/* any feed utility pill left by older runtime layers */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[class*="filter"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[class*="saved"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[class*="status"] {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-2) !important;

  border-color:
    var(--dw12-line) !important;
}


/* =========================================================
   /48 PAGE
   Dark everything below cinematic hero.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-page {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-bg) !important;
}


/*
 Sections below hero.
 Do not touch Yandex map renderer itself.
*/

html[data-date48-theme="dark"]
.date48-page
section:not([class*="hero"]),

html[data-date48-theme="dark"]
.date48-page
article {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface) !important;

  border-color:
    var(--dw12-line) !important;
}


/* explicit existing /48 blocks */

html[data-date48-theme="dark"]
.date48-mode-card,

html[data-date48-theme="dark"]
.date48-benefits,

html[data-date48-theme="dark"]
.date48-preferences-card,

html[data-date48-theme="dark"]
.date48-geo-card,

html[data-date48-theme="dark"]
.date48-feed-list,

html[data-date48-theme="dark"]
.date48-profile-card,

html[data-date48-theme="dark"]
.date48-empty {
  color:
    var(--dw12-text) !important;

  background:
    linear-gradient(
      180deg,
      #181214,
      #141012
    ) !important;

  border:
    1px solid var(--dw12-line) !important;

  box-shadow:
    var(--dw12-shadow) !important;
}


/* runtime /48 blocks */

html[data-date48-theme="dark"]
.date48-page
:is(section,article,div)[class*="nearby"],

html[data-date48-theme="dark"]
.date48-page
:is(section,article,div)[class*="popular"],

html[data-date48-theme="dark"]
.date48-page
:is(section,article,div)[class*="ready"] {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface) !important;
}


/* 48 headings/text */

html[data-date48-theme="dark"]
.date48-page
:is(h1,h2,h3,h4,strong) {
  color:
    var(--dw12-text) !important;
}

html[data-date48-theme="dark"]
.date48-page
:is(p,small) {
  color:
    var(--dw12-muted) !important;
}


/* 48 intent/category buttons */

html[data-date48-theme="dark"]
.date48-page
button:not(.date48-map-apply) {
  color:
    var(--dw12-text-soft);
}

html[data-date48-theme="dark"]
.date48-chips button,

html[data-date48-theme="dark"]
.date48-chip {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-3) !important;

  border:
    1px solid var(--dw12-line) !important;
}

html[data-date48-theme="dark"]
.date48-chip.is-active,

html[data-date48-theme="dark"]
.date48-chips button.is-active {
  color:
    #fff !important;

  background:
    var(--dw12-wine) !important;
}


/* map remains readable/light */

html[data-date48-theme="dark"]
.date48-map-preview,

html[data-date48-theme="dark"]
.date48-map-shell {
  background:
    #f4f0ec !important;

  border:
    1px solid rgba(255,255,255,.14) !important;
}

html[data-date48-theme="dark"]
.date48-map-preview
:is(canvas,iframe),

html[data-date48-theme="dark"]
.date48-map-shell
:is(canvas,iframe) {
  filter:
    none !important;
}


/* =========================================================
   PEOPLE
   Remove outer light frame.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-people-page,

html[data-date48-theme="dark"]
.date48-people-page--v3,

html[data-date48-theme="dark"]
.date48-people-v3__head,

html[data-date48-theme="dark"]
.date48-people-v3__filters,

html[data-date48-theme="dark"]
.date48-people-v3__masonry {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-bg) !important;
}

html[data-date48-theme="dark"]
.date48-people-page::before,

html[data-date48-theme="dark"]
.date48-people-page::after {
  background:
    transparent !important;
}


/* compass */

html[data-date48-theme="dark"]
.date48-people-v3__compass {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface) !important;

  border:
    1px solid var(--dw12-line) !important;

  box-shadow:
    var(--dw12-shadow) !important;
}

html[data-date48-theme="dark"]
.date48-people-v3__compass-action {
  color:
    #fff !important;

  background:
    var(--dw12-wine) !important;

  border-color:
    var(--dw12-wine) !important;
}


/* =========================================================
   PUBLIC PERSON PROFILE
   The largest remaining light surface.
   ========================================================= */

html[data-date48-theme="dark"]
.person-page,

html[data-date48-theme="dark"]
.person-page--real {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-bg) !important;
}


/*
 Current public profile has several older layout wrappers.
 Catch the content sections, not the media itself.
*/

html[data-date48-theme="dark"]
.person-page--real
section,

html[data-date48-theme="dark"]
.person-page--real
article,

html[data-date48-theme="dark"]
.person-page--real
div[class*="section"],

html[data-date48-theme="dark"]
.person-page--real
div[class*="card"],

html[data-date48-theme="dark"]
.person-page--real
div[class*="panel"] {
  color:
    var(--dw12-text) !important;

  background-color:
    var(--dw12-surface) !important;

  border-color:
    var(--dw12-line) !important;
}


/* known premium content */

html[data-date48-theme="dark"]
.d48-premium-person__gallery,

html[data-date48-theme="dark"]
.d48-premium-person__signals,

html[data-date48-theme="dark"]
.d48-premium-person__signal-card,

html[data-date48-theme="dark"]
.d48-premium-person__about,

html[data-date48-theme="dark"]
.d48-premium-person__actions {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface) !important;

  border-color:
    var(--dw12-line) !important;
}


/* public profile typography */

html[data-date48-theme="dark"]
.person-page--real
:is(h1,h2,h3,h4,strong) {
  color:
    var(--dw12-text) !important;
}

html[data-date48-theme="dark"]
.person-page--real
:is(p,small) {
  color:
    var(--dw12-muted) !important;
}


/* profile pills / tags */

html[data-date48-theme="dark"]
.person-page--real
:is(
  [class*="chip"],
  [class*="tag"],
  [class*="pill"]
) {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-3) !important;

  border-color:
    var(--dw12-line) !important;
}


/* Public profile CTAs */

html[data-date48-theme="dark"]
.person-page--real
button,

html[data-date48-theme="dark"]
.person-page--real
a[class*="action"] {
  color:
    var(--dw12-text-soft) !important;

  background:
    var(--dw12-surface-3) !important;

  border-color:
    var(--dw12-line) !important;
}

html[data-date48-theme="dark"]
.person-page--real
:is(
  button,
  a
)[class*="primary"] {
  color:
    #fff !important;

  background:
    linear-gradient(
      135deg,
      #c3476b,
      #8f2c4a
    ) !important;
}


/* =========================================================
   CHAT
   Remove white outgoing bubble and full-width strips.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-chat-thread {
  background:
    transparent !important;
}


/*
 Any runtime old light bubble.
*/

html[data-date48-theme="dark"]
.date48-chat-thread
:is(div,article)[class*="bubble"],

html[data-date48-theme="dark"]
.date48-chat-thread
:is(div,article)[class*="message"],

html[data-date48-theme="dark"]
.date48-chat-thread
:is(div,article)[class*="proposal"] {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface-2) !important;

  border:
    1px solid var(--dw12-line) !important;
}


/*
 Inline-style legacy bubbles.
 This is deliberately scoped only to chat thread.
*/

html[data-date48-theme="dark"]
.date48-chat-thread
div[style*="background"] {
  color:
    var(--dw12-text) !important;

  background:
    var(--dw12-surface-2) !important;

  border-color:
    var(--dw12-line) !important;
}


/* bubble timestamps */

html[data-date48-theme="dark"]
.date48-chat-thread
:is(time,small) {
  color:
    var(--dw12-muted-2) !important;
}


/* meeting card */

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"] {
  color:
    var(--dw12-text) !important;

  background:
    linear-gradient(
      135deg,
      #26181e,
      #181114
    ) !important;

  border:
    1px solid rgba(195,71,107,.22) !important;
}

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"]
:is(h1,h2,h3,strong) {
  color:
    var(--dw12-text) !important;
}

html[data-date48-theme="dark"]
.date48-chat-page
[class*="meeting"]
:is(p,small) {
  color:
    var(--dw12-muted) !important;
}


/* composer */

html[data-date48-theme="dark"]
.date48-chat-composer {
  background:
    #171013 !important;

  border:
    1px solid var(--dw12-line) !important;

  box-shadow:
    0 -8px 30px rgba(0,0,0,.24) !important;
}


/* =========================================================
   MATCHES
   Slight contrast lift.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-match-row {
  background:
    linear-gradient(
      180deg,
      #1a1316,
      #141012
    ) !important;

  border:
    1px solid var(--dw12-line) !important;
}

html[data-date48-theme="dark"]
.date48-match-row__body strong {
  color:
    var(--dw12-text) !important;
}

html[data-date48-theme="dark"]
.date48-match-row__body small,

html[data-date48-theme="dark"]
.date48-match-row__meta {
  color:
    var(--dw12-muted) !important;
}


/* =========================================================
   BOTTOM NAV FINAL CONSISTENCY
   ========================================================= */

html[data-date48-theme="dark"]
.bottom-nav {
  background:
    rgba(19,13,16,.98) !important;

  border:
    1px solid var(--dw12-line) !important;

  box-shadow:
    0 14px 44px rgba(0,0,0,.48) !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item {
  color:
    #c8bdc0 !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item.is-active {
  color:
    #fff !important;

  background:
    rgba(195,71,107,.10) !important;
}

html[data-date48-theme="dark"]
.bottom-nav__item--primary,

html[data-date48-theme="dark"]
.bottom-nav__item:nth-child(3) {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #ce4e73,
      #9f3153
    ) !important;

  border:
    1px solid rgba(255,255,255,.72) !important;
}


/* =========================================================
   MEDIA SAFETY
   ========================================================= */

html[data-date48-theme="dark"] img,
html[data-date48-theme="dark"] video {
  filter:
    none !important;
}


/* DATE48 CSS SOURCE 66: /assets/date48-dark-wine-v1-3-final-polish-20261001_091901.css */
/*
============================================================
DATE48 DARK WINE V1.3
Targeted component completion.
============================================================
*/

html[data-date48-theme="dark"] {
  --v13-bg: #090708;
  --v13-card: #171113;
  --v13-card-2: #201619;
  --v13-card-3: #291b20;

  --v13-text: #f7f0ed;
  --v13-soft: #ddd2d3;
  --v13-muted: #b5a9ab;
  --v13-muted-2: #918589;

  --v13-wine: #c5486d;
  --v13-wine-2: #9b3051;

  --v13-line:
    rgba(255,255,255,.105);

  --v13-shadow:
    0 16px 38px rgba(0,0,0,.28);
}


/* =========================================================
   SEMANTIC RUNTIME CARDS
   ========================================================= */

html[data-date48-theme="dark"]
.d48-v13-force-card {
  color:
    var(--v13-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #141012
    ) !important;

  background-color:
    var(--v13-card) !important;

  border:
    1px solid var(--v13-line) !important;

  box-shadow:
    var(--v13-shadow) !important;
}

html[data-date48-theme="dark"]
.d48-v13-force-card::before,

html[data-date48-theme="dark"]
.d48-v13-force-card::after {
  background-color:
    transparent !important;
}

html[data-date48-theme="dark"]
.d48-v13-force-card
:is(
  h1,
  h2,
  h3,
  h4,
  strong
) {
  color:
    var(--v13-text) !important;
}

html[data-date48-theme="dark"]
.d48-v13-force-card
:is(
  p,
  small,
  label,
  span
) {
  color:
    var(--v13-muted) !important;
}

html[data-date48-theme="dark"]
.d48-v13-force-card
:is(
  button,
  [role="button"]
) {
  color:
    var(--v13-soft) !important;

  background:
    var(--v13-card-3) !important;

  border-color:
    var(--v13-line) !important;
}


/* =========================================================
   RUNTIME CONTROLS
   ========================================================= */

html[data-date48-theme="dark"]
.d48-v13-force-control {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-card-2) !important;

  background-color:
    var(--v13-card-2) !important;

  border:
    1px solid var(--v13-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
.d48-v13-force-control
* {
  color:
    inherit !important;
}


/* =========================================================
   OWN PROFILE — KNOWN CLASSES
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-posts {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-card) !important;

  background-color:
    var(--v13-card) !important;

  border-color:
    var(--v13-line) !important;

  box-shadow:
    var(--v13-shadow) !important;
}

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-posts::before,

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-posts::after {
  background:
    transparent !important;
}

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-posts__head
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--v13-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-posts__notice {
  color:
    var(--v13-muted) !important;
}


/* =========================================================
   HOME / FEED
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-feed-title
p {
  color:
    var(--v13-muted) !important;
}

html[data-date48-theme="dark"]
body
.date48-inline-filters
button {
  color:
    var(--v13-soft) !important;

  background:
    var(--v13-card-2) !important;

  border-color:
    var(--v13-line) !important;
}

html[data-date48-theme="dark"]
body
.date48-inline-filters
button.is-active {
  color:
    #fff !important;

  background:
    var(--v13-wine) !important;

  border-color:
    var(--v13-wine) !important;
}


/* remaining large pale feed controls */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button {
  border-color:
    var(--v13-line);
}

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[class*="filter"] {
  color:
    var(--v13-soft) !important;

  background:
    var(--v13-card-2) !important;
}


/* =========================================================
   48 — FORCE EXACT SOURCE COMPONENTS
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-page
.date48-mode-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-benefits,

html[data-date48-theme="dark"]
body
.date48-page
.date48-preferences-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-geo-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-feed-list,

html[data-date48-theme="dark"]
body
.date48-page
.date48-profile-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-empty {
  color:
    var(--v13-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #141012
    ) !important;

  background-color:
    var(--v13-card) !important;

  border:
    1px solid var(--v13-line) !important;

  box-shadow:
    var(--v13-shadow) !important;
}

html[data-date48-theme="dark"]
body
.date48-page
:is(
  .date48-mode-card,
  .date48-benefits,
  .date48-preferences-card,
  .date48-geo-card,
  .date48-feed-list,
  .date48-profile-card
)::before,

html[data-date48-theme="dark"]
body
.date48-page
:is(
  .date48-mode-card,
  .date48-benefits,
  .date48-preferences-card,
  .date48-geo-card,
  .date48-feed-list,
  .date48-profile-card
)::after {
  background:
    transparent !important;
}


/* 48 typography */

html[data-date48-theme="dark"]
body
.date48-page
:is(
  .date48-mode-card,
  .date48-benefits,
  .date48-feed-list,
  .date48-profile-card
)
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--v13-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-page
:is(
  .date48-mode-card,
  .date48-benefits,
  .date48-feed-list,
  .date48-profile-card
)
:is(
  p,
  small,
  span
) {
  color:
    var(--v13-muted) !important;
}


/* 48 chips */

html[data-date48-theme="dark"]
body
.date48-page
.date48-chips
button {
  color:
    var(--v13-soft) !important;

  background:
    var(--v13-card-3) !important;

  border:
    1px solid var(--v13-line) !important;
}


/* 48 map itself stays light */

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-preview,

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-shell {
  background:
    #f4f0ec !important;

  background-color:
    #f4f0ec !important;
}


/* but controls around map become dark */

html[data-date48-theme="dark"]
body
.date48-page
.date48-location-button,

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-apply {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-card-2) !important;

  border:
    1px solid var(--v13-line) !important;
}


/* =========================================================
   PUBLIC PROFILE
   ========================================================= */

html[data-date48-theme="dark"]
body
.person-page--real {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-bg) !important;
}


/* native premium sections */

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__gallery,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__signals,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__signal-card,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__about,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__actions {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-card) !important;

  background-color:
    var(--v13-card) !important;

  border-color:
    var(--v13-line) !important;
}


/* everything textual must remain readable */

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  h1,
  h2,
  h3,
  h4,
  strong
) {
  color:
    var(--v13-text) !important;
}

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  p,
  small
) {
  color:
    var(--v13-muted) !important;
}


/* public profile chips */

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  [class*="chip"],
  [class*="tag"],
  [class*="pill"]
) {
  color:
    var(--v13-soft) !important;

  background:
    var(--v13-card-3) !important;

  border-color:
    var(--v13-line) !important;
}


/* =========================================================
   CHAT
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
:is(
  [class*="message"],
  [class*="bubble"],
  [class*="proposal"]
) {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-card-2) !important;

  background-color:
    var(--v13-card-2) !important;

  border:
    1px solid var(--v13-line) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
div[style*="background"] {
  color:
    var(--v13-text) !important;

  background:
    var(--v13-card-2) !important;

  background-color:
    var(--v13-card-2) !important;

  border-color:
    var(--v13-line) !important;
}


/* meeting plan */

html[data-date48-theme="dark"]
body
.date48-chat-page
[class*="meeting"] {
  color:
    var(--v13-text) !important;

  background:
    linear-gradient(
      135deg,
      #27181e,
      #181114
    ) !important;

  background-color:
    var(--v13-card) !important;

  border:
    1px solid
    rgba(197,72,109,.23) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-page
[class*="meeting"]
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--v13-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-page
[class*="meeting"]
:is(
  p,
  small
) {
  color:
    var(--v13-muted) !important;
}


/* =========================================================
   PEOPLE / MATCHES
   Already good — only lock current dark state.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-people-page,

html[data-date48-theme="dark"]
body
.date48-matches-page {
  background:
    var(--v13-bg) !important;
}


/* =========================================================
   MEDIA SAFETY
   ========================================================= */

html[data-date48-theme="dark"]
img,

html[data-date48-theme="dark"]
video {
  filter:
    none !important;
}


/* DATE48 CSS SOURCE 67: /assets/date48-dark-wine-v1-4-finalize-20261001_093223.css */
/*
============================================================
DATE48 DARK WINE V1.4 — FINALIZE
Target:
- remove runtime tagger rectangles
- complete /48 dark surfaces
- complete public person profile
- complete chat
- complete feed top controls
============================================================
*/

html[data-date48-theme="dark"] {
  --v14-bg: #090708;

  --v14-card:
    #171113;

  --v14-card-2:
    #1e1619;

  --v14-card-3:
    #291c21;

  --v14-text:
    #f7f0ed;

  --v14-soft:
    #ded3d4;

  --v14-muted:
    #b6aaac;

  --v14-muted-2:
    #91868a;

  --v14-wine:
    #c6496e;

  --v14-wine-deep:
    #96304f;

  --v14-wine-soft:
    rgba(198,73,110,.16);

  --v14-line:
    rgba(255,255,255,.105);

  --v14-shadow:
    0 18px 44px rgba(0,0,0,.30);
}


/* =========================================================
   V1.3 TAGGER CLEANUP
   Remove the ugly rectangular diagnostic-looking borders.
   Keep its useful semantic dark background.
   ========================================================= */

html[data-date48-theme="dark"]
body
.d48-v13-force-card {
  outline:
    0 !important;

  box-shadow:
    none !important;

  border:
    0 !important;
}

html[data-date48-theme="dark"]
body
.d48-v13-force-card::before,

html[data-date48-theme="dark"]
body
.d48-v13-force-card::after {
  border:
    0 !important;

  outline:
    0 !important;
}


/* tagger controls must not remain white */

html[data-date48-theme="dark"]
body
.d48-v13-force-control {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card-2) !important;

  background-color:
    var(--v14-card-2) !important;

  border:
    1px solid var(--v14-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.d48-v13-force-control
* {
  color:
    inherit !important;
}


/* =========================================================
   OWN PROFILE
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-account-page {
  background:
    var(--v14-bg) !important;
}


/* tagged legacy editorial sections */

html[data-date48-theme="dark"]
body
.date48-account-page
.d48-v13-force-card {
  color:
    var(--v14-text) !important;

  background:
    linear-gradient(
      180deg,
      #191214,
      #141012
    ) !important;

  background-color:
    var(--v14-card) !important;
}


/* ensure headings remain bright */

html[data-date48-theme="dark"]
body
.date48-account-page
.d48-v13-force-card
:is(
  h1,
  h2,
  h3,
  h4,
  strong
) {
  color:
    var(--v14-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-account-page
.d48-v13-force-card
:is(
  p,
  span,
  small
) {
  color:
    var(--v14-muted) !important;
}


/* moments */

html[data-date48-theme="dark"]
body
.date48-account-posts {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card) !important;

  border-color:
    var(--v14-line) !important;
}

html[data-date48-theme="dark"]
body
.date48-account-posts__head
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--v14-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-account-posts__notice {
  color:
    var(--v14-muted) !important;
}


/* =========================================================
   HOME / FEED
   ========================================================= */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
.d48-v13-force-control {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card-2) !important;

  border:
    1px solid var(--v14-line) !important;
}


/* selected/filter buttons */

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[aria-pressed="false"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[aria-selected="false"] {
  color:
    var(--v14-soft) !important;

  background:
    var(--v14-card-2) !important;

  border-color:
    var(--v14-line) !important;
}

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[aria-pressed="true"],

html[data-date48-theme="dark"]
body:has(.date48-feed-title)
button[aria-selected="true"] {
  color:
    #fff !important;

  background:
    var(--v14-wine) !important;

  border-color:
    var(--v14-wine) !important;
}


/* feed intro */

html[data-date48-theme="dark"]
body
.date48-feed-title
p {
  color:
    var(--v14-muted) !important;
}


/* =========================================================
   /48 — COMPLETE REAL SOURCE COMPONENTS
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-page {
  background:
    var(--v14-bg) !important;

  color:
    var(--v14-text) !important;
}


/* big mode card */

html[data-date48-theme="dark"]
body
.date48-page
.date48-mode-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-mode-card__main {
  color:
    var(--v14-text) !important;

  background:
    linear-gradient(
      145deg,
      #201519,
      #171113
    ) !important;

  background-color:
    var(--v14-card) !important;

  border-color:
    var(--v14-line) !important;

  box-shadow:
    var(--v14-shadow) !important;
}


/* category / benefits strip */

html[data-date48-theme="dark"]
body
.date48-page
.date48-benefits,

html[data-date48-theme="dark"]
body
.date48-page
.date48-preferences-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-quiz,

html[data-date48-theme="dark"]
body
.date48-page
.date48-quiz--separate {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card) !important;

  background-color:
    var(--v14-card) !important;

  border-color:
    var(--v14-line) !important;

  box-shadow:
    none !important;
}


/* ready / people / geo sections */

html[data-date48-theme="dark"]
body
.date48-page
.date48-geo-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-feed-list,

html[data-date48-theme="dark"]
body
.date48-page
.date48-profile-card,

html[data-date48-theme="dark"]
body
.date48-page
.date48-empty {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card) !important;

  background-color:
    var(--v14-card) !important;

  border:
    1px solid var(--v14-line) !important;

  box-shadow:
    var(--v14-shadow) !important;
}


/* /48 text */

html[data-date48-theme="dark"]
body
.date48-page
:is(
  .date48-mode-card,
  .date48-benefits,
  .date48-preferences-card,
  .date48-quiz,
  .date48-geo-card,
  .date48-feed-list,
  .date48-profile-card
)
:is(
  h1,
  h2,
  h3,
  h4,
  strong
) {
  color:
    var(--v14-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-page
:is(
  .date48-mode-card,
  .date48-benefits,
  .date48-preferences-card,
  .date48-quiz,
  .date48-geo-card,
  .date48-feed-list,
  .date48-profile-card
)
:is(
  p,
  small,
  span
) {
  color:
    var(--v14-muted) !important;
}


/* category chips */

html[data-date48-theme="dark"]
body
.date48-page
.date48-chips
button,

html[data-date48-theme="dark"]
body
.date48-page
.date48-chip {
  color:
    var(--v14-soft) !important;

  background:
    var(--v14-card-3) !important;

  border:
    1px solid var(--v14-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.date48-page
.date48-chip.is-active {
  color:
    #fff !important;

  background:
    var(--v14-wine) !important;

  border-color:
    var(--v14-wine) !important;
}


/* toggle */

html[data-date48-theme="dark"]
body
.date48-page
.date48-toggle {
  background:
    #43353a !important;
}

html[data-date48-theme="dark"]
body
.date48-page
.date48-toggle.is-on {
  background:
    var(--v14-wine) !important;
}


/* =========================================================
   MAP
   Map stays native/light.
   Surrounding controls are dark.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-preview,

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-shell {
  background:
    #f4f0ec !important;

  background-color:
    #f4f0ec !important;

  border-color:
    rgba(255,255,255,.12) !important;
}

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-preview
:is(
  canvas,
  iframe,
  img
),

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-shell
:is(
  canvas,
  iframe,
  img
) {
  filter:
    none !important;
}


/* expand/open map controls */

html[data-date48-theme="dark"]
body
.date48-page
.date48-location-button,

html[data-date48-theme="dark"]
body
.date48-page
.date48-map-apply,

html[data-date48-theme="dark"]
body
.date48-page
.date48-geo-actions
button {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card-2) !important;

  border:
    1px solid var(--v14-line) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   PUBLIC PERSON PROFILE
   ========================================================= */

html[data-date48-theme="dark"]
body
.person-page--real,

html[data-date48-theme="dark"]
body
.d48-premium-person {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-bg) !important;
}


/* root editorial blocks */

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__gallery,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__signals,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__signal-card,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__about,

html[data-date48-theme="dark"]
body
.person-page--real
.d48-premium-person__actions {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card) !important;

  background-color:
    var(--v14-card) !important;

  border-color:
    var(--v14-line) !important;

  box-shadow:
    none !important;
}


/*
 Catch patched profile fact/prompt cards
 without touching hero media.
*/

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  [class*="fact"],
  [class*="detail"],
  [class*="answer"],
  [class*="prompt"],
  [class*="question"]
) {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card-2) !important;

  background-color:
    var(--v14-card-2) !important;

  border-color:
    var(--v14-line) !important;

  box-shadow:
    none !important;
}


/* tagged public-profile cards */

html[data-date48-theme="dark"]
body
.person-page--real
.d48-v13-force-card {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card) !important;

  background-color:
    var(--v14-card) !important;

  border:
    0 !important;
}


/* public profile typography */

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  h1,
  h2,
  h3,
  h4,
  strong
) {
  color:
    var(--v14-text) !important;
}

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  p,
  small
) {
  color:
    var(--v14-muted) !important;
}


/* identity */

html[data-date48-theme="dark"]
body
.d48-premium-person__identity,

html[data-date48-theme="dark"]
body
.d48-premium-person__about-copy {
  color:
    var(--v14-text) !important;
}

html[data-date48-theme="dark"]
body
.d48-premium-person__location {
  color:
    var(--v14-muted) !important;
}


/* chips */

html[data-date48-theme="dark"]
body
.person-page--real
:is(
  [class*="chip"],
  [class*="tag"],
  [class*="pill"]
) {
  color:
    var(--v14-soft) !important;

  background:
    var(--v14-card-3) !important;

  border-color:
    var(--v14-line) !important;
}


/* =========================================================
   CHAT
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page {
  background:
    var(--v14-bg) !important;
}


/*
 First undo full-width tagger rectangles.
*/

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
.d48-v13-force-card {
  color:
    var(--v14-text) !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  border:
    0 !important;

  outline:
    0 !important;

  box-shadow:
    none !important;
}


/*
 Then darken actual bubble/card living inside tagged wrapper.
*/

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
.d48-v13-force-card
> :is(
  div,
  article,
  section
) {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card-2) !important;

  background-color:
    var(--v14-card-2) !important;

  border-color:
    var(--v14-line) !important;

  box-shadow:
    none !important;
}


/* known message/bubble classes */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
:is(
  [class*="message"],
  [class*="bubble"],
  [class*="proposal"]
) {
  color:
    var(--v14-text) !important;

  background:
    var(--v14-card-2) !important;

  background-color:
    var(--v14-card-2) !important;

  border:
    1px solid var(--v14-line) !important;
}


/* meeting plan/card */

html[data-date48-theme="dark"]
body
.date48-chat-page
:is(
  [class*="meeting"],
  [class*="proposal"],
  [class*="planned"]
) {
  color:
    var(--v14-text) !important;

  background:
    linear-gradient(
      135deg,
      #28191f,
      #181114
    ) !important;

  background-color:
    var(--v14-card) !important;

  border-color:
    rgba(198,73,110,.20) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-page
:is(
  [class*="meeting"],
  [class*="proposal"],
  [class*="planned"]
)
:is(
  h1,
  h2,
  h3,
  strong
) {
  color:
    var(--v14-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-page
:is(
  [class*="meeting"],
  [class*="proposal"],
  [class*="planned"]
)
:is(
  p,
  small,
  span
) {
  color:
    var(--v14-muted) !important;
}


/* meeting buttons */

html[data-date48-theme="dark"]
body
.date48-chat-page
:is(
  [class*="meeting"],
  [class*="proposal"],
  [class*="planned"]
)
button {
  color:
    #f7e9ee !important;

  background:
    var(--v14-wine-soft) !important;

  border-color:
    rgba(198,73,110,.22) !important;
}


/* =========================================================
   BOTTOM NAV LOCK
   ========================================================= */

html[data-date48-theme="dark"]
body
.bottom-nav {
  background:
    rgba(19,13,16,.98) !important;

  border:
    1px solid var(--v14-line) !important;

  box-shadow:
    0 16px 46px rgba(0,0,0,.46) !important;
}

html[data-date48-theme="dark"]
body
.bottom-nav__item--primary,

html[data-date48-theme="dark"]
body
.bottom-nav__item:nth-child(3) {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #ce4f74,
      #9d3152
    ) !important;

  border-color:
    rgba(255,255,255,.70) !important;
}


/* =========================================================
   MEDIA SAFETY
   ========================================================= */

html[data-date48-theme="dark"]
img,

html[data-date48-theme="dark"]
video {
  filter:
    none !important;
}


/* DATE48 CSS SOURCE 68: /assets/date48-dark-wine-v1-5-exact-20261001_094349.css */
/*
============================================================
DATE48 DARK WINE V1.5
Exact live component pass
No JS / no runtime tagging
============================================================
*/

html[data-date48-theme="dark"] {
  --dw15-bg: #090708;
  --dw15-card: #171214;
  --dw15-card-2: #1d1518;
  --dw15-card-3: #271a1f;

  --dw15-text: #f6efec;
  --dw15-soft: #ddd2d3;
  --dw15-muted: #b5a9ab;
  --dw15-muted-2: #8e8286;

  --dw15-wine: #c5486d;
  --dw15-wine-deep: #93304d;
  --dw15-wine-soft: rgba(197,72,109,.14);

  --dw15-line: rgba(255,255,255,.10);
  --dw15-line-strong: rgba(255,255,255,.16);

  --dw15-shadow:
    0 18px 46px rgba(0,0,0,.28);
}


/* =========================================================
   1. REMOVE REMAINING V1.3 TAGGER RECTANGLES
   ========================================================= */

html[data-date48-theme="dark"]
body
.d48-v13-force-card {
  outline: 0 !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-thread
.d48-v13-force-card,

html[data-date48-theme="dark"]
body
.date48-chat-message.d48-v13-force-card {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}


/* =========================================================
   2. OWN PROFILE — SAVED
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-social-library {
  color: var(--dw15-text) !important;

  background:
    linear-gradient(
      180deg,
      #191315,
      #141012
    ) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    var(--dw15-shadow) !important;
}

html[data-date48-theme="dark"]
body
.date48-social-library__head,

html[data-date48-theme="dark"]
body
.date48-social-library__head > div {
  background:
    transparent !important;

  border:
    0 !important;

  outline:
    0 !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.date48-social-library__head h2 {
  color:
    var(--dw15-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-social-library__head p {
  color:
    var(--dw15-muted) !important;
}

html[data-date48-theme="dark"]
body
.date48-social-library__count {
  color:
    #f3d8e0 !important;

  background:
    var(--dw15-wine-soft) !important;

  border:
    1px solid rgba(197,72,109,.22) !important;
}


/* =========================================================
   3. HOME FEED
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-feed-title h1 {
  color:
    var(--dw15-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-feed-title p {
  color:
    var(--dw15-muted) !important;
}

html[data-date48-theme="dark"]
body
.date48-feed-title > button {
  color:
    var(--dw15-soft) !important;

  background:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    none !important;
}


html[data-date48-theme="dark"]
body
.date48-feed-create-bar {
  background:
    transparent !important;
}

html[data-date48-theme="dark"]
body
.date48-feed-create {
  color:
    var(--dw15-text) !important;

  background:
    linear-gradient(
      135deg,
      #21171b,
      #171214
    ) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    0 12px 34px rgba(0,0,0,.22) !important;
}

html[data-date48-theme="dark"]
body
.date48-feed-create::after {
  color:
    var(--dw15-soft) !important;
}

html[data-date48-theme="dark"]
body
.date48-feed-create > span {
  color:
    var(--dw15-wine) !important;

  background:
    var(--dw15-wine-soft) !important;
}


html[data-date48-theme="dark"]
body
.date48-feed-social-tool {
  color:
    var(--dw15-soft) !important;

  background:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;
}

html[data-date48-theme="dark"]
body
.date48-feed-social-tool small {
  color:
    var(--dw15-muted-2) !important;
}


html[data-date48-theme="dark"]
body
.date48-inline-filters button {
  color:
    var(--dw15-soft) !important;

  background:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;
}

html[data-date48-theme="dark"]
body
.date48-inline-filters button.is-active {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #d15277,
      #a53557
    ) !important;

  border-color:
    rgba(255,255,255,.18) !important;
}


/* =========================================================
   4. /48 — REAL d48v3 COMPONENTS
   ========================================================= */

html[data-date48-theme="dark"]
body
.d48v3-page {
  color:
    var(--dw15-text) !important;

  background:
    var(--dw15-bg) !important;
}


/* MODE */

html[data-date48-theme="dark"]
body
.d48v3-mode {
  color:
    var(--dw15-text) !important;

  background:
    linear-gradient(
      140deg,
      rgba(40,25,31,.98),
      rgba(23,18,20,.98)
    ) !important;

  border:
    1px solid var(--dw15-line-strong) !important;

  box-shadow:
    0 18px 42px rgba(0,0,0,.30) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-mode-copy strong {
  color:
    var(--dw15-text) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-mode-copy span {
  color:
    var(--dw15-muted) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-mode-icon {
  color:
    #f0a0b8 !important;

  background:
    rgba(197,72,109,.16) !important;

  box-shadow:
    inset 0 0 0 1px rgba(197,72,109,.16) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-toggle {
  background:
    #393034 !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.05) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-toggle.is-on {
  background:
    linear-gradient(
      180deg,
      #d04d73,
      #a33253
    ) !important;
}


/* ACTIVITIES */

html[data-date48-theme="dark"]
body
.d48v3-activities {
  background:
    linear-gradient(
      180deg,
      #181315,
      #141012
    ) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.d48v3-activity {
  color:
    var(--dw15-soft) !important;

  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.d48v3-activity-icon {
  background:
    var(--dw15-wine-soft) !important;

  color:
    #efc0ce !important;
}

html[data-date48-theme="dark"]
body
.d48v3-activity-label {
  color:
    var(--dw15-soft) !important;
}


/* READY NOW */

html[data-date48-theme="dark"]
body
.d48v3-section.d48v3-stories {
  color:
    var(--dw15-text) !important;

  background:
    linear-gradient(
      180deg,
      #181315,
      #141012
    ) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    var(--dw15-shadow) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-stories
.d48v3-section-head h2 {
  color:
    var(--dw15-text) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-stories
.d48v3-section-meta {
  color:
    var(--dw15-muted) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-story {
  color:
    var(--dw15-soft) !important;

  background:
    transparent !important;
}

html[data-date48-theme="dark"]
body
.d48v3-story small {
  color:
    var(--dw15-soft) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-story-ring.is-own-empty {
  background:
    var(--dw15-card-2) !important;

  border-color:
    rgba(197,72,109,.48) !important;
}

html[data-date48-theme="dark"]
body
.d48v3-story-avatar {
  color:
    var(--dw15-wine) !important;

  background:
    var(--dw15-card-3) !important;

  border-color:
    #171214 !important;
}


/* =========================================================
   5. PUBLIC PROFILE — REAL date48-profile-ref
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-profile-ref {
  color:
    var(--dw15-text) !important;

  background:
    var(--dw15-bg) !important;
}


/* identity and generic section headings */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__identity
:is(
  h1,
  h2,
  h3,
  strong
),

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__section-head h2 {
  color:
    var(--dw15-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__identity
:is(
  p,
  span,
  small
) {
  color:
    var(--dw15-muted) !important;
}


/* interests */

html[data-date48-theme="dark"]
body
.date48-profile-ref__interests span {
  color:
    var(--dw15-soft) !important;

  background:
    var(--dw15-card-3) !important;

  border:
    1px solid var(--dw15-line) !important;
}


/* BETWEEN / PROFILE / PROMPTS */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-between,

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-profile,

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-prompts {
  color:
    var(--dw15-text) !important;

  background:
    linear-gradient(
      180deg,
      #191315,
      #141012
    ) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    var(--dw15-shadow) !important;
}


/* kicker */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-kicker {
  color:
    #d96d8d !important;
}


/* descriptive copy */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-lead,

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-between p {
  color:
    var(--dw15-muted) !important;
}


/* fact grid */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-fact {
  color:
    var(--dw15-text) !important;

  background:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-fact small {
  color:
    var(--dw15-muted-2) !important;
}

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-fact strong {
  color:
    var(--dw15-text) !important;
}


/* shared values / interests */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-values span,

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-chips span {
  color:
    #e5c9d1 !important;

  background:
    rgba(197,72,109,.10) !important;

  border:
    1px solid rgba(197,72,109,.20) !important;
}


/* signal card */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-signal {
  color:
    var(--dw15-text) !important;

  background:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;
}

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-signal small {
  color:
    var(--dw15-muted) !important;
}


/* prompts */

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-prompt {
  color:
    var(--dw15-text) !important;

  background:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-prompt small {
  color:
    #c8889c !important;
}

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-prompt strong,

html[data-date48-theme="dark"]
body
.date48-profile-ref__v3-prompt p {
  color:
    var(--dw15-text) !important;
}


/* =========================================================
   6. CHAT — REAL MESSAGE/BUBBLE CLASSES
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page {
  background:
    var(--dw15-bg) !important;
}


/* wrapper must NEVER be the card */

html[data-date48-theme="dark"]
body
.date48-chat-message {
  background:
    transparent !important;

  background-color:
    transparent !important;

  border:
    0 !important;

  outline:
    0 !important;

  box-shadow:
    none !important;
}


/* actual bubble */

html[data-date48-theme="dark"]
body
.date48-chat-message
> .date48-chat-bubble {
  color:
    var(--dw15-soft) !important;

  background:
    var(--dw15-card-2) !important;

  background-color:
    var(--dw15-card-2) !important;

  border:
    1px solid var(--dw15-line) !important;

  box-shadow:
    none !important;
}


/* own messages */

html[data-date48-theme="dark"]
body
.date48-chat-message.is-mine
> .date48-chat-bubble {
  color:
    #fff !important;

  background:
    linear-gradient(
      145deg,
      #5a2035,
      #351822
    ) !important;

  background-color:
    #451c2b !important;

  border-color:
    rgba(197,72,109,.28) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-message p {
  color:
    inherit !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-message small {
  color:
    var(--dw15-muted-2) !important;
}


/* =========================================================
   MEETING CARD V54
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54 {
  background:
    transparent !important;

  border:
    0 !important;

  box-shadow:
    none !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__card {
  color:
    var(--dw15-text) !important;

  background:
    linear-gradient(
      140deg,
      #25171d,
      #171214
    ) !important;

  background-color:
    var(--dw15-card) !important;

  border:
    1px solid rgba(197,72,109,.20) !important;

  box-shadow:
    0 16px 38px rgba(0,0,0,.28) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__body {
  background:
    transparent !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__body strong {
  color:
    var(--dw15-text) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__body p {
  color:
    var(--dw15-muted) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__eyebrow {
  color:
    #dc6b8d !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__status {
  color:
    #f2cbd7 !important;

  background:
    rgba(197,72,109,.14) !important;

  border:
    1px solid rgba(197,72,109,.18) !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__primary {
  color:
    #fff !important;

  background:
    linear-gradient(
      180deg,
      #cb4b71,
      #9c3150
    ) !important;

  border:
    1px solid rgba(255,255,255,.08) !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__quiet {
  color:
    #e2c7cf !important;

  background:
    rgba(197,72,109,.09) !important;

  border:
    1px solid rgba(197,72,109,.17) !important;
}


html[data-date48-theme="dark"]
body
.d48-v12-place-link {
  color:
    #f1cfda !important;

  background:
    rgba(197,72,109,.12) !important;

  border-color:
    rgba(197,72,109,.20) !important;
}


/* =========================================================
   7. MEDIA SAFETY
   ========================================================= */

html[data-date48-theme="dark"]
body
img,

html[data-date48-theme="dark"]
body
video {
  filter:
    none !important;
}


/* DATE48 CSS SOURCE 69: /assets/date48-dark-wine-v1-6-premium-cleanup-20261001_100540.css */
/*
 * Date48 Dark Wine V1.6
 * Premium Cleanup
 *
 * Principle:
 *   depth through tone, not outlines.
 *
 * Light theme is untouched.
 * Photos/video/Yandex map content are untouched.
 */

html[data-d48-premium="dark"] {
  color-scheme: dark;

  --d48-p-bg: #090708;
  --d48-p-bg-soft: #0d0a0b;

  --d48-p-surface: #141012;
  --d48-p-surface-2: #191315;
  --d48-p-surface-3: #21171b;

  --d48-p-wine: #b43d61;
  --d48-p-wine-live: #cf496f;
  --d48-p-wine-soft: #351821;
  --d48-p-wine-muted: #241117;

  --d48-p-text: #f7efeb;
  --d48-p-text-soft: #c9bec0;
  --d48-p-text-muted: #9e9295;

  --d48-p-border: rgba(255,255,255,.065);
  --d48-p-border-soft: rgba(255,255,255,.042);

  --d48-p-shadow:
    0 18px 44px rgba(0,0,0,.25);

  background: var(--d48-p-bg) !important;
}

html[data-d48-premium="dark"] body {
  background:
    radial-gradient(
      1000px 500px at 50% -180px,
      rgba(113,34,57,.10),
      transparent 58%
    ),
    var(--d48-p-bg) !important;

  color: var(--d48-p-text) !important;
}


/* ============================================================
   TYPOGRAPHY
   ============================================================ */

html[data-d48-premium="dark"]
[data-d48-premium-text="primary"] {
  color: var(--d48-p-text) !important;
  opacity: 1 !important;
}

html[data-d48-premium="dark"]
[data-d48-premium-text="secondary"] {
  color: var(--d48-p-text-soft) !important;
  opacity: 1 !important;
}

html[data-d48-premium="dark"]
[data-d48-premium-text="accent"] {
  color: #df6687 !important;
  opacity: 1 !important;
}

html[data-d48-premium="dark"]
[data-d48-premium-opacity="fix"] {
  opacity: 1 !important;
}


/* Headings should never disappear into wine-black surfaces */

html[data-d48-premium="dark"]
:where(h1,h2,h3,h4) {
  color: var(--d48-p-text);
}


/* ============================================================
   LIGHT SURFACES LEFT BY OLD COMPONENTS
   ============================================================ */

html[data-d48-premium="dark"]
[data-d48-premium-surface="panel"] {
  background:
    linear-gradient(
      180deg,
      rgba(27,20,23,.98) 0%,
      rgba(18,14,16,.99) 100%
    ) !important;

  color: var(--d48-p-text) !important;

  border-color: var(--d48-p-border-soft) !important;

  box-shadow:
    var(--d48-p-shadow),
    inset 0 1px 0 rgba(255,255,255,.018) !important;
}

html[data-d48-premium="dark"]
[data-d48-premium-surface="panel"]
:where(h1,h2,h3,h4,h5,h6) {
  color: var(--d48-p-text) !important;
}


/* ============================================================
   WHITE / PALE BUTTONS
   ============================================================ */

html[data-d48-premium="dark"]
[data-d48-premium-surface="control"] {
  background:
    linear-gradient(
      180deg,
      rgba(48,27,34,.98) 0%,
      rgba(35,20,25,.99) 100%
    ) !important;

  color: #f4e8e8 !important;

  border-color: rgba(212,86,121,.16) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 8px 22px rgba(0,0,0,.16) !important;
}

html[data-d48-premium="dark"]
[data-d48-premium-surface="control"]
* {
  color: inherit !important;
}


/* Disabled remains visibly disabled */

html[data-d48-premium="dark"]
:where(button,input,select,textarea):disabled,
html[data-d48-premium="dark"]
[aria-disabled="true"] {
  opacity: .52 !important;
}


/* ============================================================
   BORDER CLEANUP
   ============================================================ */

/* Big square wrapper borders = visual noise */

html[data-d48-premium="dark"]
[data-d48-premium-border="remove"] {
  border-color: transparent !important;
}


/* Rounded components retain only a hairline */

html[data-d48-premium="dark"]
[data-d48-premium-border="soft"] {
  border-color: var(--d48-p-border) !important;
}


/* Old card systems often create stacked outlines */

html[data-d48-premium="dark"]
:where(
  [class*="card"],
  [class*="Card"],
  [class*="panel"],
  [class*="Panel"],
  [class*="section"],
  [class*="Section"]
) {
  outline-color: transparent !important;
}


/* ============================================================
   FORM CONTROLS
   ============================================================ */

html[data-d48-premium="dark"]
:where(
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  textarea,
  select
) {
  background: #171214 !important;
  color: var(--d48-p-text) !important;
  border-color: var(--d48-p-border) !important;
}

html[data-d48-premium="dark"]
:where(input,textarea)::placeholder {
  color: #8e8285 !important;
  opacity: 1 !important;
}


/* ============================================================
   BUTTON LANGUAGE
   ============================================================ */

html[data-d48-premium="dark"]
:where(button,[role="button"]) {
  -webkit-tap-highlight-color: transparent;
}

html[data-d48-premium="dark"]
:where(button,[role="button"]):focus-visible {
  outline:
    2px solid rgba(207,73,111,.55) !important;
  outline-offset: 2px;
}


/* ============================================================
   DARK CARDS — SOFTER, MORE EXPENSIVE DEPTH
   ============================================================ */

html[data-d48-premium="dark"]
:where(
  [class*="card"],
  [class*="Card"],
  [class*="panel"],
  [class*="Panel"]
) {
  box-shadow:
    0 14px 38px rgba(0,0,0,.18);
}


/* Avoid heavy double-frame effect */

html[data-d48-premium="dark"]
:where(
  [class*="card"],
  [class*="Card"],
  [class*="panel"],
  [class*="Panel"]
)
:where(
  [class*="card"],
  [class*="Card"],
  [class*="panel"],
  [class*="Panel"]
) {
  box-shadow: none;
}


/* ============================================================
   CHIPS / PILLS
   ============================================================ */

html[data-d48-premium="dark"]
:where(
  [class*="chip"],
  [class*="Chip"],
  [class*="pill"],
  [class*="Pill"],
  [class*="tag"],
  [class*="Tag"]
) {
  border-color: rgba(255,255,255,.07) !important;
}


/* ============================================================
   DIALOGS / SHEETS
   ============================================================ */

html[data-d48-premium="dark"]
:where(
  [role="dialog"],
  [class*="sheet"],
  [class*="Sheet"],
  [class*="modal"],
  [class*="Modal"]
) {
  color: var(--d48-p-text);
}


/* ============================================================
   BOTTOM NAV
   ============================================================ */

html[data-d48-premium="dark"]
:where(
  [class*="bottom-nav"],
  [class*="bottomNav"],
  [class*="BottomNav"]
) {
  border-color: rgba(255,255,255,.07) !important;

  box-shadow:
    0 18px 44px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(255,255,255,.025) !important;
}


/* ============================================================
   PHOTO / VIDEO SAFETY
   ============================================================ */

html[data-d48-premium="dark"]
:where(img,video,picture,canvas) {
  filter: none !important;
}


/* ============================================================
   YANDEX MAP SAFETY
   The map itself intentionally remains readable/light.
   ============================================================ */

html[data-d48-premium="dark"]
:where(
  [class^="ymaps"],
  [class*=" ymaps"],
  [class*="ymaps-"],
  [id^="ymaps"],
  [id*="ymaps-"]
) {
  filter: none !important;
}


/* ============================================================
   SCROLLBAR
   ============================================================ */

html[data-d48-premium="dark"] {
  scrollbar-color:
    rgba(172,58,90,.48)
    #090708;
}


/* ============================================================
   SELECTION
   ============================================================ */

html[data-d48-premium="dark"]
::selection {
  background: rgba(198,65,101,.34);
  color: #fff7f4;
}


/* DATE48 CSS SOURCE 70: /assets/date48-dark-wine-v1-7-reference-lock-20261001_102814.css */
/*
  DATE48 DARK WINE V1.7
  REFERENCE LOCK
  Dark theme only.
  Light theme untouched.
*/

html[data-d48-theme="dark"] {
  --d48-v17-bg: #090708;
  --d48-v17-surface: #151113;
  --d48-v17-surface-2: #1b1518;
  --d48-v17-surface-3: #21181c;

  --d48-v17-wine: #b43d63;
  --d48-v17-wine-strong: #cb4b73;
  --d48-v17-wine-soft: #4a1e2b;

  --d48-v17-text: #f5efec;
  --d48-v17-text-2: #c7bdc0;
  --d48-v17-text-3: #9d9295;

  --d48-v17-line: rgba(255,255,255,.055);

  --d48-v17-shadow:
    0 18px 54px rgba(0,0,0,.26);
}


/* =========================================================
   BASE
   ========================================================= */

html[data-d48-theme="dark"],
html[data-d48-theme="dark"] body,
html[data-d48-theme="dark"] #root,
html[data-d48-theme="dark"] .app-shell,
html[data-d48-theme="dark"] .screen-body {
  background: #090708 !important;
  color: var(--d48-v17-text) !important;
}


/* =========================================================
   FEED
   The two light elements marked in visual QA
   ========================================================= */

html[data-d48-theme="dark"]
.date48-inline-story--add span {
  color: #d36a8b !important;

  background:
    radial-gradient(
      circle at 34% 24%,
      rgba(203,75,115,.16),
      transparent 38%
    ),
    #171214 !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow:
    0 10px 28px rgba(0,0,0,.28),
    inset 0 0 0 1px rgba(255,255,255,.055)
    !important;
}

html[data-d48-theme="dark"]
.date48-inline-story--add b {
  color: var(--d48-v17-text-3) !important;
}


/* FILTER BUTTON */

html[data-d48-theme="dark"]
.date48-feed-title > button {
  color: var(--d48-v17-text-2) !important;

  background: #1a1517 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.045),
    0 10px 28px rgba(0,0,0,.20)
    !important;
}


/* Feed description — readable but secondary */

html[data-d48-theme="dark"]
.date48-feed-title p,

html[data-d48-theme="dark"]
.date48-feed-topline p {
  color: #aca1a4 !important;
}


/* Feed filter chips */

html[data-d48-theme="dark"]
.date48-inline-filters button,

html[data-d48-theme="dark"]
.date48-filter-row button {
  color: #c7bdc0 !important;

  background: #171214 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.045)
    !important;
}

html[data-d48-theme="dark"]
.date48-inline-filters button.is-active,

html[data-d48-theme="dark"]
.date48-filter-row button.is-active {
  color: #fff !important;

  background:
    linear-gradient(
      135deg,
      #c74770,
      #a72d54
    )
    !important;

  box-shadow:
    0 9px 24px rgba(166,45,84,.22)
    !important;
}


html[data-d48-theme="dark"]
.date48-feed-message {
  color: var(--d48-v17-text-2) !important;

  background: #151113 !important;

  border: 0 !important;

  box-shadow: none !important;
}


html[data-d48-theme="dark"]
.date48-real-post__person strong,

html[data-d48-theme="dark"]
.date48-real-post__caption {
  color: var(--d48-v17-text) !important;
}


html[data-d48-theme="dark"]
.date48-real-post__caption-more,

html[data-d48-theme="dark"]
.date48-real-post__hint {
  color: var(--d48-v17-text-3) !important;
}


/* =========================================================
   OWN PROFILE
   Tonal hierarchy instead of card outlines
   ========================================================= */

html[data-d48-theme="dark"]
.date48-account-page {
  --d48-profile-bg: #090708 !important;
  --d48-profile-surface: #151113 !important;
  --d48-profile-surface-strong: #1b1518 !important;

  --d48-profile-text: #f5efec !important;
  --d48-profile-muted: #a89da0 !important;

  --d48-profile-line:
    rgba(255,255,255,.05)
    !important;

  --d48-profile-rose: #c44a70 !important;
  --d48-profile-rose-deep: #9e3155 !important;

  background: #090708 !important;

  color: var(--d48-v17-text) !important;
}


html[data-d48-theme="dark"]
.date48-account-page .date48-account-panel,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-layer,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-about,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-params,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-interests,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-posts,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-safety,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-trust-panel,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-security-teaser {
  color: var(--d48-v17-text) !important;

  background:
    linear-gradient(
      145deg,
      #171315,
      #131012
    )
    !important;

  border: 0 !important;

  box-shadow:
    var(--d48-v17-shadow)
    !important;
}


/* parameter cells — depth without obvious borders */

html[data-d48-theme="dark"]
.date48-account-page .date48-account-param {
  background: #1b1518 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.04)
    !important;
}


html[data-d48-theme="dark"]
.date48-account-page .date48-account-param span,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-layer span,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-kicker,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-posts__head p,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-posts__notice {
  color: var(--d48-v17-text-3) !important;
}


html[data-d48-theme="dark"]
.date48-account-page .date48-account-param b,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-layer b,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-panel h1,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-panel h2,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-about h2,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-posts__head h2 {
  color: var(--d48-v17-text) !important;
}


html[data-d48-theme="dark"]
.date48-account-page .date48-account-panel p,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-layer small,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-about p {
  color: var(--d48-v17-text-2) !important;
}


/* interests */

html[data-d48-theme="dark"]
.date48-account-page .date48-account-interest-chip,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-interest-chips span {
  color: #ded5d7 !important;

  background: #21171b !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(198,72,111,.18)
    !important;
}


/* textual actions */

html[data-d48-theme="dark"]
.date48-account-page .date48-account-posts__add,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-inline-edit,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-panel-head a,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-interests__edit {
  color: #cf6687 !important;
}


/* secondary buttons must not turn white */

html[data-d48-theme="dark"]
.date48-account-page .date48-account-secondary-action,

html[data-d48-theme="dark"]
.date48-account-page .date48-account-logout {
  color: #ded5d7 !important;

  background: #181315 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.045)
    !important;
}


/* theme / security teasers */

html[data-d48-theme="dark"]
.date48-account-page [class*="security-teaser"],

html[data-d48-theme="dark"]
.date48-account-page [class*="theme"] {
  border-color: transparent !important;
}


/* =========================================================
   PUBLIC PROFILE
   Prevent legacy pale reference cards leaking into dark mode
   ========================================================= */

html[data-d48-theme="dark"]
body:has(.date48-profile-ref) {
  background: #090708 !important;
}


html[data-d48-theme="dark"]
.date48-profile-ref {
  --ref-bg: #090708 !important;
  --ref-paper: #151113 !important;

  --ref-ink: #f5efec !important;
  --ref-text: #d1c8ca !important;
  --ref-muted: #9f9497 !important;

  --ref-wine: #c44a70 !important;
  --ref-deep: #35141f !important;
  --ref-pink: #2b171f !important;

  --ref-line:
    rgba(255,255,255,.055)
    !important;

  color: #d1c8ca !important;
}


html[data-d48-theme="dark"]
.date48-profile-ref__identity,

html[data-d48-theme="dark"]
.date48-profile-ref__section {
  border-color:
    rgba(255,255,255,.045)
    !important;
}


html[data-d48-theme="dark"]
.date48-profile-ref__identity h1,

html[data-d48-theme="dark"]
.date48-profile-ref__section-head h2,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-lead,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-prompt strong,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-fact strong,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-signal strong {
  color: var(--d48-v17-text) !important;
}


html[data-d48-theme="dark"]
.date48-profile-ref__city,

html[data-d48-theme="dark"]
.date48-profile-ref__bio,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-prompt small,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-fact small,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-signal small {
  color: var(--d48-v17-text-3) !important;
}


/* public profile surfaces */

html[data-d48-theme="dark"]
.date48-profile-ref__v3-prompt,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-fact,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-signal,

html[data-d48-theme="dark"]
.date48-profile-ref__idea,

html[data-d48-theme="dark"]
.date48-profile-ref__geo,

html[data-d48-theme="dark"]
.date48-profile-ref__meeting-facts {
  background: #171214 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.045)
    !important;
}


html[data-d48-theme="dark"]
.date48-profile-ref__interests span,

html[data-d48-theme="dark"]
.date48-profile-ref__v3-chips > span {
  color: #ddd3d6 !important;

  background: #21171b !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(196,74,112,.17)
    !important;
}


html[data-d48-theme="dark"]
.date48-profile-ref__action--date {
  color: #f4dbe3 !important;

  background: #351722 !important;

  border: 0 !important;
}


html[data-d48-theme="dark"]
body:has(.date48-profile-ref)
.topbar__settings {
  color: var(--d48-v17-text) !important;

  background: #171214 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.055),
    0 10px 28px rgba(0,0,0,.22)
    !important;
}


/* =========================================================
   PEOPLE / COMPASS
   ========================================================= */

html[data-d48-theme="dark"]
.date48-people-page,

html[data-d48-theme="dark"]
.date48-compass-page {
  color: var(--d48-v17-text) !important;
}


html[data-d48-theme="dark"]
.date48-people-head p,

html[data-d48-theme="dark"]
.date48-people-personal p,

html[data-d48-theme="dark"]
.date48-compass-entry p,

html[data-d48-theme="dark"]
.date48-compass-result > p {
  color: #aaa0a3 !important;
}


html[data-d48-theme="dark"]
.date48-compass-entry,

html[data-d48-theme="dark"]
.date48-compass-result__symbol {
  background: #151113 !important;

  border: 0 !important;

  box-shadow:
    var(--d48-v17-shadow)
    !important;
}


html[data-d48-theme="dark"]
.date48-compass-entry__facts span,

html[data-d48-theme="dark"]
.date48-compass-entry__status {
  color: #d4c9cc !important;

  background: #21171b !important;
}


/* =========================================================
   48 + MAP
   Dark shell; Yandex map itself remains native/readable.
   ========================================================= */

html[data-d48-theme="dark"]
.date48-map-note,

html[data-d48-theme="dark"]
.date48-map-hint,

html[data-d48-theme="dark"]
.date48-location-button,

html[data-d48-theme="dark"]
.date48-geo-actions button + button,

html[data-d48-theme="dark"]
.date48-radius-row button,

html[data-d48-theme="dark"]
.date48-district-row button,

html[data-d48-theme="dark"]
.date48-map-points button {
  color: #d7cdd0 !important;

  background: #191416 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.045)
    !important;
}


html[data-d48-theme="dark"]
.date48-map-sheet__panel {
  color: var(--d48-v17-text) !important;

  background: #100d0f !important;
}


html[data-d48-theme="dark"]
.date48-map-sheet__head button {
  color: var(--d48-v17-text) !important;

  background: #1a1517 !important;

  border: 0 !important;

  box-shadow: none !important;
}


html[data-d48-theme="dark"]
.date48-map-shell {
  background: #151113 !important;

  box-shadow:
    0 16px 44px
    rgba(0,0,0,.26)
    !important;
}


html[data-d48-theme="dark"]
.date48-map-shell:after {
  color: #f0d9e1 !important;

  background:
    rgba(27,18,22,.90)
    !important;

  box-shadow: none !important;
}


/* Yandex map must never be inverted */

html[data-d48-theme="dark"]
.date48-yandex-map,

html[data-d48-theme="dark"]
.date48-yandex-map * {
  filter: none !important;
}


/* =========================================================
   SECONDARY BUTTONS
   Prevent accidental white utility controls
   ========================================================= */

html[data-d48-theme="dark"]
.date48-provider-button.is-email,

html[data-d48-theme="dark"]
.date48-auth-secondary-link,

html[data-d48-theme="dark"]
.date48-auth-secondary,

html[data-d48-theme="dark"]
.date48-plan-secondary,

html[data-d48-theme="dark"]
.date48-places-more-button {
  color: #ded5d7 !important;

  background: #181315 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.045)
    !important;
}


/* =========================================================
   BOTTOM NAV
   Restrained wine, no bright white chrome
   ========================================================= */

html[data-d48-theme="dark"]
.bottom-nav {
  background:
    rgba(15,11,13,.94)
    !important;

  border: 0 !important;

  box-shadow:
    0 -12px 44px
      rgba(0,0,0,.34),
    inset 0 1px
      rgba(255,255,255,.04)
    !important;
}


html[data-d48-theme="dark"]
.bottom-nav__item--primary,

html[data-d48-theme="dark"]
.bottom-nav__item--primary.is-active {
  color: #f8edf1 !important;

  background:
    linear-gradient(
      145deg,
      #cf4d75,
      #a93058
    )
    !important;

  border: 0 !important;

  box-shadow:
    0 10px 30px
      rgba(177,48,89,.24)
    !important;
}


html[data-d48-theme="dark"]
.bottom-nav__item--primary
.bottom-nav__icon,

html[data-d48-theme="dark"]
.bottom-nav__item--primary
.bottom-nav__label,

html[data-d48-theme="dark"]
.bottom-nav__item--primary.is-active
.bottom-nav__icon,

html[data-d48-theme="dark"]
.bottom-nav__item--primary.is-active
.bottom-nav__label {
  color: #fff !important;
}


/* =========================================================
   READABILITY FLOOR
   ========================================================= */

html[data-d48-theme="dark"]
:is(
  .date48-muted,
  .date48-place-detail-address,
  .date48-place-detail-subtitle,
  .date48-place-detail-description
) {
  color: #aaa0a3 !important;
}



/* DATE48 CSS SOURCE 71: /assets/date48-dark-wine-v1-7-1-selector-fix-20261001_103959.css */
/*
============================================================
DATE48 DARK WINE V1.7.1 — SELECTOR FIX
Source design: V1.7 Reference Lock
Correction:
data-d48-theme -> data-date48-theme
============================================================
*/

/*
  DATE48 DARK WINE V1.7
  REFERENCE LOCK
  Dark theme only.
  Light theme untouched.
*/

html[data-date48-theme="dark"] {
  --d48-v17-bg: #090708;
  --d48-v17-surface: #151113;
  --d48-v17-surface-2: #1b1518;
  --d48-v17-surface-3: #21181c;

  --d48-v17-wine: #b43d63;
  --d48-v17-wine-strong: #cb4b73;
  --d48-v17-wine-soft: #4a1e2b;

  --d48-v17-text: #f5efec;
  --d48-v17-text-2: #c7bdc0;
  --d48-v17-text-3: #9d9295;

  --d48-v17-line: rgba(255,255,255,.055);

  --d48-v17-shadow:
    0 18px 54px rgba(0,0,0,.26);
}


/* =========================================================
   BASE
   ========================================================= */

html[data-date48-theme="dark"],
html[data-date48-theme="dark"] body,
html[data-date48-theme="dark"] #root,
html[data-date48-theme="dark"] .app-shell,
html[data-date48-theme="dark"] .screen-body {
  background: #090708 !important;
  color: var(--d48-v17-text) !important;
}


/* =========================================================
   FEED
   The two light elements marked in visual QA
   ========================================================= */

html[data-date48-theme="dark"]
.date48-inline-story--add span {
  color: #d36a8b !important;

  background:
    radial-gradient(
      circle at 34% 24%,
      rgba(203,75,115,.16),
      transparent 38%
    ),
    #171214 !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow:
    0 10px 28px rgba(0,0,0,.28),
    inset 0 0 0 1px rgba(255,255,255,.055)
    !important;
}

html[data-date48-theme="dark"]
.date48-inline-story--add b {
  color: var(--d48-v17-text-3) !important;
}


/* FILTER BUTTON */

html[data-date48-theme="dark"]
.date48-feed-title > button {
  color: var(--d48-v17-text-2) !important;

  background: #1a1517 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.045),
    0 10px 28px rgba(0,0,0,.20)
    !important;
}


/* Feed description — readable but secondary */

html[data-date48-theme="dark"]
.date48-feed-title p,

html[data-date48-theme="dark"]
.date48-feed-topline p {
  color: #aca1a4 !important;
}


/* Feed filter chips */

html[data-date48-theme="dark"]
.date48-inline-filters button,

html[data-date48-theme="dark"]
.date48-filter-row button {
  color: #c7bdc0 !important;

  background: #171214 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.045)
    !important;
}

html[data-date48-theme="dark"]
.date48-inline-filters button.is-active,

html[data-date48-theme="dark"]
.date48-filter-row button.is-active {
  color: #fff !important;

  background:
    linear-gradient(
      135deg,
      #c74770,
      #a72d54
    )
    !important;

  box-shadow:
    0 9px 24px rgba(166,45,84,.22)
    !important;
}


html[data-date48-theme="dark"]
.date48-feed-message {
  color: var(--d48-v17-text-2) !important;

  background: #151113 !important;

  border: 0 !important;

  box-shadow: none !important;
}


html[data-date48-theme="dark"]
.date48-real-post__person strong,

html[data-date48-theme="dark"]
.date48-real-post__caption {
  color: var(--d48-v17-text) !important;
}


html[data-date48-theme="dark"]
.date48-real-post__caption-more,

html[data-date48-theme="dark"]
.date48-real-post__hint {
  color: var(--d48-v17-text-3) !important;
}


/* =========================================================
   OWN PROFILE
   Tonal hierarchy instead of card outlines
   ========================================================= */

html[data-date48-theme="dark"]
.date48-account-page {
  --d48-profile-bg: #090708 !important;
  --d48-profile-surface: #151113 !important;
  --d48-profile-surface-strong: #1b1518 !important;

  --d48-profile-text: #f5efec !important;
  --d48-profile-muted: #a89da0 !important;

  --d48-profile-line:
    rgba(255,255,255,.05)
    !important;

  --d48-profile-rose: #c44a70 !important;
  --d48-profile-rose-deep: #9e3155 !important;

  background: #090708 !important;

  color: var(--d48-v17-text) !important;
}


html[data-date48-theme="dark"]
.date48-account-page .date48-account-panel,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-layer,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-about,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-params,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-interests,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-posts,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-safety,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-trust-panel,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-security-teaser {
  color: var(--d48-v17-text) !important;

  background:
    linear-gradient(
      145deg,
      #171315,
      #131012
    )
    !important;

  border: 0 !important;

  box-shadow:
    var(--d48-v17-shadow)
    !important;
}


/* parameter cells — depth without obvious borders */

html[data-date48-theme="dark"]
.date48-account-page .date48-account-param {
  background: #1b1518 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.04)
    !important;
}


html[data-date48-theme="dark"]
.date48-account-page .date48-account-param span,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-layer span,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-kicker,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-posts__head p,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-posts__notice {
  color: var(--d48-v17-text-3) !important;
}


html[data-date48-theme="dark"]
.date48-account-page .date48-account-param b,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-layer b,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-panel h1,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-panel h2,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-about h2,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-posts__head h2 {
  color: var(--d48-v17-text) !important;
}


html[data-date48-theme="dark"]
.date48-account-page .date48-account-panel p,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-layer small,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-about p {
  color: var(--d48-v17-text-2) !important;
}


/* interests */

html[data-date48-theme="dark"]
.date48-account-page .date48-account-interest-chip,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-interest-chips span {
  color: #ded5d7 !important;

  background: #21171b !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(198,72,111,.18)
    !important;
}


/* textual actions */

html[data-date48-theme="dark"]
.date48-account-page .date48-account-posts__add,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-inline-edit,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-panel-head a,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-interests__edit {
  color: #cf6687 !important;
}


/* secondary buttons must not turn white */

html[data-date48-theme="dark"]
.date48-account-page .date48-account-secondary-action,

html[data-date48-theme="dark"]
.date48-account-page .date48-account-logout {
  color: #ded5d7 !important;

  background: #181315 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.045)
    !important;
}


/* theme / security teasers */

html[data-date48-theme="dark"]
.date48-account-page [class*="security-teaser"],

html[data-date48-theme="dark"]
.date48-account-page [class*="theme"] {
  border-color: transparent !important;
}


/* =========================================================
   PUBLIC PROFILE
   Prevent legacy pale reference cards leaking into dark mode
   ========================================================= */

html[data-date48-theme="dark"]
body:has(.date48-profile-ref) {
  background: #090708 !important;
}


html[data-date48-theme="dark"]
.date48-profile-ref {
  --ref-bg: #090708 !important;
  --ref-paper: #151113 !important;

  --ref-ink: #f5efec !important;
  --ref-text: #d1c8ca !important;
  --ref-muted: #9f9497 !important;

  --ref-wine: #c44a70 !important;
  --ref-deep: #35141f !important;
  --ref-pink: #2b171f !important;

  --ref-line:
    rgba(255,255,255,.055)
    !important;

  color: #d1c8ca !important;
}


html[data-date48-theme="dark"]
.date48-profile-ref__identity,

html[data-date48-theme="dark"]
.date48-profile-ref__section {
  border-color:
    rgba(255,255,255,.045)
    !important;
}


html[data-date48-theme="dark"]
.date48-profile-ref__identity h1,

html[data-date48-theme="dark"]
.date48-profile-ref__section-head h2,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-lead,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-prompt strong,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-fact strong,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-signal strong {
  color: var(--d48-v17-text) !important;
}


html[data-date48-theme="dark"]
.date48-profile-ref__city,

html[data-date48-theme="dark"]
.date48-profile-ref__bio,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-prompt small,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-fact small,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-signal small {
  color: var(--d48-v17-text-3) !important;
}


/* public profile surfaces */

html[data-date48-theme="dark"]
.date48-profile-ref__v3-prompt,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-fact,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-signal,

html[data-date48-theme="dark"]
.date48-profile-ref__idea,

html[data-date48-theme="dark"]
.date48-profile-ref__geo,

html[data-date48-theme="dark"]
.date48-profile-ref__meeting-facts {
  background: #171214 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.045)
    !important;
}


html[data-date48-theme="dark"]
.date48-profile-ref__interests span,

html[data-date48-theme="dark"]
.date48-profile-ref__v3-chips > span {
  color: #ddd3d6 !important;

  background: #21171b !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(196,74,112,.17)
    !important;
}


html[data-date48-theme="dark"]
.date48-profile-ref__action--date {
  color: #f4dbe3 !important;

  background: #351722 !important;

  border: 0 !important;
}


html[data-date48-theme="dark"]
body:has(.date48-profile-ref)
.topbar__settings {
  color: var(--d48-v17-text) !important;

  background: #171214 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.055),
    0 10px 28px rgba(0,0,0,.22)
    !important;
}


/* =========================================================
   PEOPLE / COMPASS
   ========================================================= */

html[data-date48-theme="dark"]
.date48-people-page,

html[data-date48-theme="dark"]
.date48-compass-page {
  color: var(--d48-v17-text) !important;
}


html[data-date48-theme="dark"]
.date48-people-head p,

html[data-date48-theme="dark"]
.date48-people-personal p,

html[data-date48-theme="dark"]
.date48-compass-entry p,

html[data-date48-theme="dark"]
.date48-compass-result > p {
  color: #aaa0a3 !important;
}


html[data-date48-theme="dark"]
.date48-compass-entry,

html[data-date48-theme="dark"]
.date48-compass-result__symbol {
  background: #151113 !important;

  border: 0 !important;

  box-shadow:
    var(--d48-v17-shadow)
    !important;
}


html[data-date48-theme="dark"]
.date48-compass-entry__facts span,

html[data-date48-theme="dark"]
.date48-compass-entry__status {
  color: #d4c9cc !important;

  background: #21171b !important;
}


/* =========================================================
   48 + MAP
   Dark shell; Yandex map itself remains native/readable.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-map-note,

html[data-date48-theme="dark"]
.date48-map-hint,

html[data-date48-theme="dark"]
.date48-location-button,

html[data-date48-theme="dark"]
.date48-geo-actions button + button,

html[data-date48-theme="dark"]
.date48-radius-row button,

html[data-date48-theme="dark"]
.date48-district-row button,

html[data-date48-theme="dark"]
.date48-map-points button {
  color: #d7cdd0 !important;

  background: #191416 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.045)
    !important;
}


html[data-date48-theme="dark"]
.date48-map-sheet__panel {
  color: var(--d48-v17-text) !important;

  background: #100d0f !important;
}


html[data-date48-theme="dark"]
.date48-map-sheet__head button {
  color: var(--d48-v17-text) !important;

  background: #1a1517 !important;

  border: 0 !important;

  box-shadow: none !important;
}


html[data-date48-theme="dark"]
.date48-map-shell {
  background: #151113 !important;

  box-shadow:
    0 16px 44px
    rgba(0,0,0,.26)
    !important;
}


html[data-date48-theme="dark"]
.date48-map-shell:after {
  color: #f0d9e1 !important;

  background:
    rgba(27,18,22,.90)
    !important;

  box-shadow: none !important;
}


/* Yandex map must never be inverted */

html[data-date48-theme="dark"]
.date48-yandex-map,

html[data-date48-theme="dark"]
.date48-yandex-map * {
  filter: none !important;
}


/* =========================================================
   SECONDARY BUTTONS
   Prevent accidental white utility controls
   ========================================================= */

html[data-date48-theme="dark"]
.date48-provider-button.is-email,

html[data-date48-theme="dark"]
.date48-auth-secondary-link,

html[data-date48-theme="dark"]
.date48-auth-secondary,

html[data-date48-theme="dark"]
.date48-plan-secondary,

html[data-date48-theme="dark"]
.date48-places-more-button {
  color: #ded5d7 !important;

  background: #181315 !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.045)
    !important;
}


/* =========================================================
   BOTTOM NAV
   Restrained wine, no bright white chrome
   ========================================================= */

html[data-date48-theme="dark"]
.bottom-nav {
  background:
    rgba(15,11,13,.94)
    !important;

  border: 0 !important;

  box-shadow:
    0 -12px 44px
      rgba(0,0,0,.34),
    inset 0 1px
      rgba(255,255,255,.04)
    !important;
}


html[data-date48-theme="dark"]
.bottom-nav__item--primary,

html[data-date48-theme="dark"]
.bottom-nav__item--primary.is-active {
  color: #f8edf1 !important;

  background:
    linear-gradient(
      145deg,
      #cf4d75,
      #a93058
    )
    !important;

  border: 0 !important;

  box-shadow:
    0 10px 30px
      rgba(177,48,89,.24)
    !important;
}


html[data-date48-theme="dark"]
.bottom-nav__item--primary
.bottom-nav__icon,

html[data-date48-theme="dark"]
.bottom-nav__item--primary
.bottom-nav__label,

html[data-date48-theme="dark"]
.bottom-nav__item--primary.is-active
.bottom-nav__icon,

html[data-date48-theme="dark"]
.bottom-nav__item--primary.is-active
.bottom-nav__label {
  color: #fff !important;
}


/* =========================================================
   READABILITY FLOOR
   ========================================================= */

html[data-date48-theme="dark"]
:is(
  .date48-muted,
  .date48-place-detail-address,
  .date48-place-detail-subtitle,
  .date48-place-detail-description
) {
  color: #aaa0a3 !important;
}



/* DATE48 CSS SOURCE 72: /assets/date48-dark-wine-v1-7-2-residual-fix-20261001_112326.css */
/*
  Date48 Dark Wine V1.7.2
  Narrow residual correction only.
*/


/* =========================================================
   FEED — FILTER BUTTON
   ========================================================= */

html[data-date48-theme="dark"]
body
button[data-d48-v172="feed-filter"] {
  color: #d8cfd1 !important;

  background:
    linear-gradient(
      180deg,
      #1d1719,
      #171214
    )
    !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.055),
    0 9px 24px
      rgba(0,0,0,.22)
    !important;
}


/* create moment + square */

html[data-date48-theme="dark"]
body
[data-d48-v172="moment-create"]
> span:first-child {
  color: #d45b80 !important;

  background:
    radial-gradient(
      circle at 34% 24%,
      rgba(207,73,111,.14),
      transparent 48%
    ),
    #191416
    !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.055),
    0 8px 22px
      rgba(0,0,0,.20)
    !important;
}


/* =========================================================
   FILTER SHEET
   ========================================================= */

html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"] {
  color: #f5efec !important;

  background:
    linear-gradient(
      180deg,
      #181315 0%,
      #100d0f 100%
    )
    !important;

  border-color:
    rgba(255,255,255,.055)
    !important;

  box-shadow:
    0 -24px 70px
      rgba(0,0,0,.48)
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
:is(
  h1,h2,h3,h4,
  strong,label
) {
  color: #f5efec !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
:is(
  p,small,span
) {
  color: #b6aaad !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
:is(
  section,
  article,
  fieldset,
  [class*="group"],
  [class*="block"]
) {
  background: #151113 !important;

  border-color:
    rgba(255,255,255,.045)
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
:is(
  input,
  select,
  textarea
) {
  color: #f5efec !important;
  background: #1b1518 !important;

  border-color:
    rgba(255,255,255,.06)
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
button {
  color: #ddd3d6 !important;

  background: #21171b !important;

  border-color:
    rgba(255,255,255,.055)
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
button.is-active,

html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
button[aria-pressed="true"] {
  color: #fff !important;

  background:
    linear-gradient(
      135deg,
      #cb4b73,
      #a93258
    )
    !important;

  border-color: transparent !important;
}


/* Most likely primary "Показать" action */
html[data-date48-theme="dark"]
body
[data-d48-v172="filter-sheet"]
button:last-child {
  color: #fff !important;

  background:
    linear-gradient(
      135deg,
      #c74770,
      #a82e55
    )
    !important;
}


/* =========================================================
   FEED REACTION RAIL
   Premium floating circles, not rectangular blocks.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-reference-post__rail {
  gap: 16px !important;
}


html[data-date48-theme="dark"]
body
.date48-reference-post__action {
  position: relative !important;

  width: 54px !important;
  min-width: 54px !important;
  height: 54px !important;
  min-height: 54px !important;

  padding: 0 !important;

  border-radius: 999px !important;

  color: #f2e8eb !important;

  background:
    rgba(24,18,21,.86)
    !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow:
    0 9px 24px
      rgba(0,0,0,.28),
    inset 0 0 0 1px
      rgba(255,255,255,.07)
    !important;

  display: grid !important;
  place-items: center !important;
}


html[data-date48-theme="dark"]
body
.date48-reference-post__action--like.is-active {
  color: #fff !important;

  background:
    linear-gradient(
      145deg,
      #c84870,
      #a72f55
    )
    !important;

  box-shadow:
    0 10px 28px
      rgba(177,48,89,.26),
    inset 0 1px
      rgba(255,255,255,.10)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-reference-post__action-icon {
  font-size: 25px !important;
  line-height: 1 !important;
}


html[data-date48-theme="dark"]
body
.date48-reference-post__action
.date48-social-count {
  position: absolute !important;

  top: calc(100% + 3px) !important;
  left: 50% !important;

  transform:
    translateX(-50%) !important;

  min-width: 0 !important;
  padding: 0 !important;

  color:
    rgba(255,255,255,.82)
    !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  font-size: 12px !important;
}


/* =========================================================
   CHAT
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-message,

html[data-date48-theme="dark"]
body
[data-d48-v172-chat-row="1"] {
  background: transparent !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v172="chat-bright-bubble"] {
  color: #f7edef !important;

  background:
    linear-gradient(
      145deg,
      #54202f,
      #361820
    )
    !important;

  border:
    1px solid
    rgba(211,80,118,.15)
    !important;

  box-shadow:
    0 10px 26px
      rgba(0,0,0,.16)
    !important;
}


/* known own-message variants */

html[data-date48-theme="dark"]
body
.date48-chat-message.is-mine
.date48-chat-bubble,

html[data-date48-theme="dark"]
body
.date48-chat-bubble.is-mine {
  color: #f7edef !important;

  background:
    linear-gradient(
      145deg,
      #54202f,
      #361820
    )
    !important;

  border-color:
    rgba(211,80,118,.15)
    !important;
}


/* =========================================================
   PUBLIC PROFILE LOW-CONTRAST MICRO LABELS
   ========================================================= */

html[data-date48-theme="dark"]
body
[data-d48-v172="profile-label"] {
  color: #968b8e !important;
  opacity: 1 !important;
}



/* DATE48 CSS SOURCE 73: /assets/date48-dark-wine-v1-7-3-feed-filter-fix-20261001_113128.css */
/*
 * DATE48 V1.7.3
 * Feed filter page only.
 */


/* ============================================================
   1. FILTER TRIGGER — WINE, NOT GREY
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-feed-title
button[data-d48-v173="filter-trigger"],

html[data-date48-theme="dark"]
body
.date48-feed-title
button[data-d48-v173="filter-trigger"]
[data-d48-premium-surface="control"] {
  color: #fff4f7 !important;

  background:
    linear-gradient(
      135deg,
      #b93f66 0%,
      #94304e 100%
    )
    !important;

  border: 0 !important;
  outline: 0 !important;

  opacity: 1 !important;

  box-shadow:
    0 10px 26px
      rgba(151,42,76,.23),
    inset 0 1px 0
      rgba(255,255,255,.10),
    inset 0 0 0 1px
      rgba(255,255,255,.055)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-feed-title
button[data-d48-v173="filter-trigger"]
* {
  color: inherit !important;
}


/* ============================================================
   2. FILTER SHEET BASE
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"] {
  color: #f7efec !important;

  background:
    linear-gradient(
      180deg,
      #171214 0%,
      #0e0b0c 100%
    )
    !important;

  border-color:
    rgba(255,255,255,.055)
    !important;

  overflow: hidden !important;

  box-shadow:
    0 -28px 72px
      rgba(0,0,0,.50)
    !important;
}


/* ============================================================
   3. REMOVE THE WHITE STRIP / LIGHT SAFE-AREA WRAPPER
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v173-bright="1"] {
  background:
    #100d0f
    !important;

  background-color:
    #100d0f
    !important;

  color:
    #f5efec
    !important;

  border-color:
    rgba(255,255,255,.04)
    !important;

  box-shadow:
    none
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v173-bright="1"]::before,

html[data-date48-theme="dark"]
body
[data-d48-v173-bright="1"]::after {
  background:
    #100d0f
    !important;

  background-color:
    #100d0f
    !important;
}


/* ============================================================
   4. ACTION AREA
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-actions"] {
  background:
    #100d0f
    !important;

  background-color:
    #100d0f
    !important;

  border: 0 !important;

  box-shadow:
    none
    !important;

  padding-bottom:
    max(
      0px,
      env(safe-area-inset-bottom)
    )
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v173="filter-actions"]::before,

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-actions"]::after {
  background:
    #100d0f
    !important;
}


/* RESET */

html[data-date48-theme="dark"]
body
button[data-d48-v173="filter-reset"] {
  color:
    #eee4e7
    !important;

  background:
    linear-gradient(
      180deg,
      #2b1b21,
      #211519
    )
    !important;

  border:
    1px solid
    rgba(255,255,255,.055)
    !important;

  box-shadow:
    none
    !important;
}


/* SHOW */

html[data-date48-theme="dark"]
body
button[data-d48-v173="filter-show"] {
  color:
    #fff
    !important;

  background:
    linear-gradient(
      135deg,
      #cf4b73,
      #a72f55
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    0 10px 28px
      rgba(171,45,83,.23),
    inset 0 1px 0
      rgba(255,255,255,.08)
    !important;
}


/* ============================================================
   5. FILTER GROUPS
   Keep the current look, just remove cheap outlines.
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
:is(
  fieldset,
  section,
  [class*="group"],
  [class*="section"]
) {
  border-color:
    rgba(255,255,255,.045)
    !important;
}


/* Selected pills */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
button.is-active,

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
button[aria-pressed="true"] {
  color:
    #fff
    !important;

  background:
    linear-gradient(
      135deg,
      #ca456e,
      #a82f55
    )
    !important;

  border-color:
    transparent
    !important;
}


/* Non-selected filter pills */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
button:not(
  [data-d48-v173="filter-reset"]
):not(
  [data-d48-v173="filter-show"]
):not(
  .is-active
):not(
  [aria-pressed="true"]
) {
  color:
    #ded5d7
    !important;

  background:
    #21171b
    !important;

  border-color:
    rgba(255,255,255,.05)
    !important;
}


/* Age fields */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
:is(
  input,
  select
) {
  color:
    #f7efec
    !important;

  background:
    #171214
    !important;

  border-color:
    rgba(255,255,255,.055)
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.018)
    !important;
}


/* Text hierarchy */

html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
:is(
  h1,h2,h3,strong,label
) {
  color:
    #f7efec
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v173="filter-sheet"]
:is(
  p,small
) {
  color:
    #afa4a7
    !important;
}


/* DATE48 CSS SOURCE 74: /assets/date48-dark-wine-v1-7-4-saved-clean-20261001_113852.css */
/*
 * Date48 Dark Wine V1.7.4
 * Feed / Saved only
 * Remove decorative backplate and stripes.
 */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head {
  background: transparent !important;
  background-color: transparent !important;

  border: 0 !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;

  outline: 0 !important;
  box-shadow: none !important;

  border-radius: 0 !important;

  padding-left: 0 !important;
  padding-right: 0 !important;
}


/* remove any old inner plate */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head > div {
  background: transparent !important;
  background-color: transparent !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}


/* remove decorative horizontal strips */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head::before,

html[data-date48-theme="dark"]
body
.date48-feed-saved-head::after,

html[data-date48-theme="dark"]
body
.date48-feed-saved-head > div::before,

html[data-date48-theme="dark"]
body
.date48-feed-saved-head > div::after {
  content: none !important;
  display: none !important;

  background: transparent !important;

  border: 0 !important;
  box-shadow: none !important;
}


/* eyebrow */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head > div > span {
  color: #c95a7d !important;

  background: transparent !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;

  letter-spacing: .16em !important;
}


/* "Только для тебя" */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head > div > strong {
  color: #f3ece9 !important;

  background: transparent !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}


/* Keep "Все моменты" as a standalone quiet action */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head > button {
  color: #e3d9dc !important;

  background:
    linear-gradient(
      180deg,
      #21171b,
      #191315
    )
    !important;

  border: 0 !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.055)
    !important;
}


/* empty technical message must not produce a strip */

html[data-date48-theme="dark"]
body
.date48-feed-saved-head
+ .date48-feed-message:empty {
  display: none !important;

  margin: 0 !important;
  padding: 0 !important;

  min-height: 0 !important;
  height: 0 !important;

  background: transparent !important;

  border: 0 !important;
  box-shadow: none !important;
}


/* DATE48 CSS SOURCE 75: /assets/date48-dark-wine-v1-7-6-person-profile-polish-20261001_114709.css */
/*
 * Date48 Dark Wine V1.7.6
 * Public Person Profile polish.
 *
 * Goal:
 * less container chrome,
 * more tonal depth,
 * clearer hierarchy.
 */


/* ============================================================
   PUBLIC PROFILE ONLY
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref {
  --d48-person-bg: #090708;
  --d48-person-surface: #151113;
  --d48-person-surface-raised: #1b1518;
  --d48-person-surface-wine: #24151a;

  --d48-person-text: #f6efec;
  --d48-person-text-2: #c4b9bc;
  --d48-person-text-3: #9f9497;

  --d48-person-wine: #c54b72;
  --d48-person-wine-soft: #d16a89;

  --d48-person-hairline:
    rgba(255,255,255,.045);

  background:
    #090708
    !important;

  color:
    var(--d48-person-text)
    !important;
}


/* ============================================================
   SECTION WRAPPERS
   Remove the big technical rectangles visible on screenshots.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-between,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-profile,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompts {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* old pseudo decoration */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-between::before,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-between::after,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-profile::before,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-profile::after,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompts::before,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompts::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* ============================================================
   SECTION SEPARATION
   Use whitespace / a near-invisible line instead of boxes.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-profile {
  padding-top:
    4px
    !important;

  padding-bottom:
    20px
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompts {
  margin-top:
    2px
    !important;

  padding-top:
    20px
    !important;

  border-top:
    1px solid
    rgba(255,255,255,.035)
    !important;
}


/* ============================================================
   KICKERS / MICRO LABELS
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-kicker {
  color:
    #cb5d7f
    !important;

  opacity:
    1
    !important;

  letter-spacing:
    .12em
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
:is(
  .date48-profile-ref__v3-profile,
  .date48-profile-ref__v3-values,
  .date48-profile-ref__v3-prompts
)
:is(
  small,
  .date48-profile-ref__v3-label
) {
  color:
    #a89da0
    !important;

  opacity:
    1
    !important;
}


/* Labels like "ЧТО ВАЖНО / ОБЩИЙ ЯЗЫК" */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-values
> :first-child,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-profile
> :is(span,small) {
  color:
    #9f9497
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   SECTION TITLES
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-lead,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-profile
h2,

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompts
h2 {
  color:
    #f6efec
    !important;
}


/* ============================================================
   FACT GRID
   Keep cards, remove obvious grey outlines.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-facts {
  background:
    transparent
    !important;

  border:
    0
    !important;

  box-shadow:
    none
    !important;

  gap:
    12px
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-fact {
  background:
    linear-gradient(
      145deg,
      #1b1518 0%,
      #171214 100%
    )
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.035),
    0 10px 28px
      rgba(0,0,0,.11)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-fact
small {
  color:
    #9e9396
    !important;

  opacity:
    1
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-fact
strong {
  color:
    #f5efec
    !important;
}


/* ============================================================
   VALUES / CHIPS
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-values {
  background:
    transparent
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-chips {
  background:
    transparent
    !important;

  border:
    0
    !important;

  box-shadow:
    none
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-chips
> span {
  color:
    #ddd3d6
    !important;

  background:
    linear-gradient(
      180deg,
      #26171d,
      #201419
    )
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(197,75,114,.14)
    !important;
}


/* ============================================================
   SIMILAR RHYTHM
   Make it intentional, not another outlined card.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-signal {
  color:
    #f4eaed
    !important;

  background:
    radial-gradient(
      360px 130px at 0% 0%,
      rgba(197,75,114,.12),
      transparent 68%
    ),
    linear-gradient(
      145deg,
      #24171c,
      #191215
    )
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.04),
    0 12px 32px
      rgba(0,0,0,.14)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-signal
strong {
  color:
    #f5efec
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-signal
small {
  color:
    #afa4a7
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   PROMPTS — "Чуть ближе"
   Cards stay editorial, but outlines almost disappear.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompt {
  background:
    linear-gradient(
      145deg,
      #1d1418,
      #171113
    )
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.035),
    0 11px 30px
      rgba(0,0,0,.12)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompt
small {
  color:
    #c36a84
    !important;

  opacity:
    1
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__v3-prompt
strong {
  color:
    #f5efec
    !important;
}


/* ============================================================
   INTERESTS
   Keep them slightly lighter than values.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__interests
span {
  color:
    #ddd4d6
    !important;

  background:
    #21171b
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.04)
    !important;
}


/* ============================================================
   BOTTOM CTA HIERARCHY
   "Написать" = secondary
   "Спланировать встречу" = primary wine.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
[class*="date48-profile-ref__action"] {
  border:
    0
    !important;

  outline:
    0
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__action--message {
  color:
    #f2e8eb
    !important;

  background:
    linear-gradient(
      145deg,
      #351820,
      #281319
    )
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.04)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-profile-ref
.date48-profile-ref__action--date {
  color:
    #fff4f7
    !important;

  background:
    linear-gradient(
      135deg,
      #b84065,
      #8f2b48
    )
    !important;

  box-shadow:
    0 12px 30px
      rgba(152,41,72,.20),
    inset 0 1px 0
      rgba(255,255,255,.08)
    !important;
}


/* ============================================================
   FINAL BORDER CLEANUP INSIDE V3 PROFILE ONLY
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-profile-ref
:is(
  .date48-profile-ref__v3-profile,
  .date48-profile-ref__v3-prompts
)
[data-d48-premium-border] {
  border-color:
    transparent
    !important;

  outline:
    0
    !important;
}


/* DATE48 CSS SOURCE 76: /assets/date48-dark-wine-v1-7-7-budget-readability-20261001_115306.css */
/*
 * Date48 Dark Wine V1.7.7
 * Budget card readability only.
 */


/* ============================================================
   CARD BASE
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"] {
  color: #f5efec !important;

  background:
    linear-gradient(
      180deg,
      #171214 0%,
      #120e10 100%
    )
    !important;
}


/* ============================================================
   TITLES
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
:is(h1,h2,h3,h4,h5,strong) {
  color:
    #f6efec
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   DESCRIPTION COPY
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
p {
  color:
    #bdb2b5
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   THE MAIN BUG:
   scenario bullet text was nearly black on black
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
li,

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
li *,

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
[data-d48-v177="budget-list-item"] {
  color:
    #cfc5c8
    !important;

  opacity:
    1
    !important;

  text-shadow:
    none
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
li::marker {
  color:
    #b94368
    !important;
}


/* ============================================================
   PRICES
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
[data-d48-v177-price="1"] {
  color:
    #f3e8eb
    !important;

  opacity:
    1
    !important;
}


/* Price controls / pills that are buttons */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
button[data-d48-v177-price="1"] {
  color:
    #f7eef1
    !important;

  background:
    linear-gradient(
      180deg,
      #2a1820,
      #201419
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(199,72,111,.15)
    !important;
}


/* ============================================================
   COLLAPSE CONTROL
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
[data-d48-v177-action="1"] {
  color:
    #d06484
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   SECONDARY TEXT FLOOR
   Prevent old light-theme dark ink leaking through.
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
:is(
  small,
  label
) {
  color:
    #a99da1
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   SCENARIO SEPARATION
   No extra borders; whitespace does the job.
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v177="budget-card"]
:is(
  ul,
  ol
) {
  border:
    0
    !important;

  outline:
    0
    !important;

  background:
    transparent
    !important;

  box-shadow:
    none
    !important;
}


/* DATE48 CSS SOURCE 77: /assets/date48-dark-wine-v1-7-10-chat-residual-20261001_121118.css */
/*
 * Date48 Dark Wine V1.7.10
 * Chat residual cleanup only.
 */


/* ============================================================
   MESSAGE ROW / WRAPPER CLEANUP
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="chat-row"],

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="technical-wrapper"] {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="chat-row"]::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="chat-row"]::after,

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="technical-wrapper"]::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="technical-wrapper"]::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* ============================================================
   MEETING EVENT BUBBLES
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v1710="meeting-bubble"] {
  color:
    #f5edef
    !important;

  background:
    linear-gradient(
      145deg,
      #351820 0%,
      #241318 100%
    )
    !important;

  background-color:
    #2d161d
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(197,75,114,.10)
    !important;
}


/* ============================================================
   PLAN OUTER SHELL
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"] {
  color:
    #f6efec
    !important;

  background:
    linear-gradient(
      180deg,
      #181214 0%,
      #0e0b0c 100%
    )
    !important;

  background-color:
    #110d0f
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    0 -28px 80px
      rgba(0,0,0,.58)
    !important;
}


/* white intermediate layers */

html[data-date48-theme="dark"]
body
[data-d48-v1710-plan-layer="dark"] {
  background:
    #110d0f
    !important;

  background-color:
    #110d0f
    !important;

  background-image:
    none
    !important;

  border-color:
    rgba(255,255,255,.04)
    !important;

  outline:
    0
    !important;
}


/* plan handle */

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"]
::before {
  border-color:
    rgba(255,255,255,.06)
    !important;
}


/* DATE48 CSS SOURCE 78: /assets/account-delete-ui-v1-20261003.css */
.date48-account-delete-row {
  margin-top: 12px;
}

.date48-account-delete-trigger {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(166, 36, 56, .20);
  border-radius: 16px;
  background: rgba(166, 36, 56, .045);
  color: #a62438;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}

.date48-account-delete-trigger:active {
  transform: scale(.99);
}

html[data-date48-theme="dark"]
.date48-account-delete-trigger {
  border-color: rgba(245, 138, 168, .22);
  background: rgba(197, 72, 109, .09);
  color: #f58aa8;
}

body.date48-account-delete-open {
  overflow: hidden;
}

.date48-account-delete-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(16, 10, 12, .50);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.date48-account-delete-dialog {
  position: relative;
  box-sizing: border-box;
  width: min(100%, 430px);
  padding: 26px 20px 20px;
  border: 1px solid rgba(33, 25, 28, .08);
  border-radius: 24px;
  background: #fff;
  color: #21191c;
  box-shadow:
    0 24px 80px
    rgba(35, 20, 25, .20);
}

html[data-date48-theme="dark"]
.date48-account-delete-dialog {
  border-color: rgba(255, 255, 255, .08);
  background: #171214;
  color: #f6efec;
}

.date48-account-delete-x {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.date48-account-delete-title {
  margin: 0 42px 10px 0;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 750;
}

.date48-account-delete-copy {
  margin: 0 0 18px;
  color: #706468;
  font-size: 14px;
  line-height: 1.5;
}

html[data-date48-theme="dark"]
.date48-account-delete-copy {
  color: #b5a9ab;
}

.date48-account-delete-instruction {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 650;
}

.date48-account-delete-input {
  box-sizing: border-box;
  width: 100%;
  height: 50px;
  padding: 0 14px;
  border: 1px solid rgba(33, 25, 28, .14);
  border-radius: 14px;
  outline: none;
  background: #faf8f8;
  color: #21191c;
  font: inherit;
  font-size: 16px;
}

.date48-account-delete-input:focus {
  border-color: #c5486d;
  box-shadow:
    0 0 0 3px
    rgba(197, 72, 109, .12);
}

html[data-date48-theme="dark"]
.date48-account-delete-input {
  border-color: rgba(255, 255, 255, .11);
  background: #0d0a0b;
  color: #f6efec;
}

.date48-account-delete-error {
  min-height: 20px;
  margin-top: 8px;
  color: #b42318;
  font-size: 13px;
  line-height: 1.35;
}

html[data-date48-theme="dark"]
.date48-account-delete-error {
  color: #ff9bb8;
}

.date48-account-delete-actions {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 10px;
  margin-top: 12px;
}

.date48-account-delete-cancel,
.date48-account-delete-confirm {
  min-height: 48px;
  padding: 0 14px;
  border-radius: 14px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.date48-account-delete-cancel {
  border: 1px solid rgba(33, 25, 28, .10);
  background: #f5f1f2;
  color: #30262a;
}

.date48-account-delete-confirm {
  border: 0;
  background: #a62438;
  color: #fff;
}

.date48-account-delete-confirm:disabled {
  cursor: default;
  opacity: .42;
}

html[data-date48-theme="dark"]
.date48-account-delete-cancel {
  border-color: rgba(255, 255, 255, .08);
  background: #21191c;
  color: #f6efec;
}

@media (max-width: 520px) {
  .date48-account-delete-modal {
    align-items: end;
    padding: 12px;
  }

  .date48-account-delete-dialog {
    width: 100%;
    border-radius: 24px 24px 18px 18px;
    padding-bottom:
      max(
        20px,
        env(safe-area-inset-bottom)
      );
  }
}


/* DATE48 CSS SOURCE 79: /assets/photo-verification-ui-v1-20261003.css */
body.date48-pv-open {
  overflow: hidden !important;
}

.date48-pv-profile-inline {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid rgba(72, 39, 51, 0.09);
}

.date48-pv-profile-inline__copy {
  min-width: 0;
  flex: 1;
  display: grid;
  gap: 3px;
}

.date48-pv-profile-inline__copy strong {
  font-size: 14px;
  line-height: 1.2;
  font-weight: 800;
}

.date48-pv-profile-inline__copy small {
  font-size: 11px;
  line-height: 1.35;
  opacity: 0.62;
}

.date48-pv-profile-inline__button,
.date48-pv-primary,
.date48-pv-mod-entry {
  appearance: none;
  border: 0;
  cursor: pointer;
  font: inherit;
}

.date48-pv-profile-inline__button {
  flex: 0 0 auto;
  border-radius: 999px;
  min-height: 34px;
  padding: 0 13px;
  background: rgba(174, 43, 100, 0.09);
  color: #9e245b;
  font-size: 12px;
  font-weight: 800;
}

.date48-pv-profile-inline.is-verified
.date48-pv-profile-inline__button {
  background: rgba(26, 129, 86, 0.10);
  color: #167452;
}

.date48-pv-profile-inline.is-pending
.date48-pv-profile-inline__button {
  background: rgba(166, 112, 37, 0.10);
  color: #88601d;
}

.date48-pv-security-card {
  position: relative;
}

.date48-pv-security-card__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.date48-pv-security-card__head h2 {
  margin: 0;
}

.date48-pv-security-card__mark {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background:
    linear-gradient(
      145deg,
      rgba(190, 53, 113, 0.16),
      rgba(190, 53, 113, 0.05)
    );
  color: #a82861;
  font-weight: 900;
}

.date48-pv-security-card.is-verified
.date48-pv-security-card__mark {
  background: rgba(24, 139, 92, 0.11);
  color: #187a57;
}

.date48-pv-security-status {
  margin-bottom: 10px;
}

.date48-pv-primary {
  width: 100%;
  min-height: 48px;
  margin-top: 14px;
  border-radius: 16px;
  padding: 0 18px;
  background:
    linear-gradient(
      135deg,
      #aa2a61,
      #c83b77
    );
  color: white;
  font-size: 14px;
  font-weight: 850;
  box-shadow:
    0 12px 28px
    rgba(174, 43, 100, 0.18);
}

.date48-pv-primary:disabled {
  cursor: default;
  opacity: 0.56;
}

.date48-pv-modal,
.date48-pv-mod-modal {
  position: fixed;
  inset: 0;
  z-index: 2147482500;
  display: grid;
  align-items: end;
}

.date48-pv-modal__backdrop,
.date48-pv-mod-modal__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  border: 0;
  background: rgba(22, 11, 17, 0.45);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
}

.date48-pv-sheet {
  position: relative;
  z-index: 1;
  width: min(560px, 100%);
  max-height: min(88vh, 820px);
  margin: 0 auto;
  overflow: auto;
  box-sizing: border-box;
  border-radius: 30px 30px 0 0;
  padding:
    10px 20px
    calc(24px + env(safe-area-inset-bottom));
  background:
    rgba(255, 250, 252, 0.98);
  color: #2c1520;
  box-shadow:
    0 -24px 90px
    rgba(55, 18, 35, 0.22);
}

.date48-pv-sheet__handle {
  width: 40px;
  height: 4px;
  border-radius: 999px;
  margin: 0 auto 17px;
  background: rgba(48, 23, 34, 0.17);
}

.date48-pv-sheet__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.date48-pv-sheet__head h2 {
  margin: 3px 0 0;
  font-size: 24px;
  line-height: 1.08;
}

.date48-pv-kicker {
  display: block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.14em;
  color: #a52b60;
}

.date48-pv-sheet__close {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  border: 0;
  border-radius: 50%;
  background: rgba(72, 39, 51, 0.07);
  color: inherit;
  font-size: 24px;
}

.date48-pv-sheet__content {
  padding-top: 17px;
}

.date48-pv-lead {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  opacity: 0.75;
}

.date48-pv-facts {
  display: grid;
  gap: 8px;
  margin: 18px 0;
}

.date48-pv-fact {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  border-radius: 16px;
  padding: 11px 12px;
  background: rgba(129, 76, 97, 0.055);
}

.date48-pv-fact span {
  color: #a72c61;
  font-weight: 900;
}

.date48-pv-fact p {
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
}

.date48-pv-consent {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 11px;
  margin-top: 18px;
  border-radius: 18px;
  padding: 14px;
  background: rgba(120, 65, 88, 0.06);
}

.date48-pv-consent input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: #aa2a61;
}

.date48-pv-consent span {
  font-size: 12px;
  line-height: 1.5;
  opacity: 0.78;
}

.date48-pv-error {
  min-height: 18px;
  margin-top: 10px;
  color: #a42647;
  font-size: 12px;
  line-height: 1.4;
}

.date48-pv-notice,
.date48-pv-wait {
  margin-top: 16px;
  border-radius: 17px;
  padding: 14px;
  background: rgba(165, 99, 35, 0.08);
  font-size: 13px;
  line-height: 1.45;
}

.date48-pv-success {
  display: grid;
  justify-items: center;
  gap: 8px;
  text-align: center;
  padding: 16px 8px 8px;
}

.date48-pv-success__mark {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(25, 133, 88, 0.10);
  color: #177652;
  font-size: 27px;
  font-weight: 900;
}

.date48-pv-success strong {
  font-size: 20px;
}

.date48-pv-success p {
  max-width: 370px;
  margin: 0;
  opacity: 0.67;
  font-size: 13px;
  line-height: 1.5;
}

.date48-pv-challenge {
  display: grid;
  gap: 5px;
  margin: 17px 0 14px;
  border-radius: 18px;
  padding: 14px;
  background:
    linear-gradient(
      135deg,
      rgba(174, 43, 100, 0.11),
      rgba(174, 43, 100, 0.045)
    );
}

.date48-pv-challenge span {
  font-size: 9px;
  letter-spacing: 0.14em;
  font-weight: 900;
  color: #9f2b5e;
}

.date48-pv-challenge strong {
  font-size: 15px;
  line-height: 1.4;
}

.date48-pv-camera {
  position: relative;
  width: min(330px, 86vw);
  aspect-ratio: 3 / 4;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 28px;
  background: #1a1317;
  box-shadow:
    0 18px 44px
    rgba(30, 13, 22, 0.18);
}

.date48-pv-camera video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: scaleX(-1);
}

.date48-pv-camera__timer {
  position: absolute;
  top: 13px;
  right: 13px;
  border-radius: 999px;
  padding: 6px 9px;
  background: rgba(20, 11, 15, 0.62);
  color: white;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

.date48-pv-camera__hint {
  margin: 10px auto 0;
  max-width: 360px;
  text-align: center;
  font-size: 11px;
  line-height: 1.45;
  opacity: 0.56;
}

.date48-pv-mod-entry {
  min-height: 32px;
  margin-left: 8px;
  border-radius: 999px;
  padding: 0 12px;
  background: rgba(174, 43, 100, 0.10);
  color: #a1285d;
  font-size: 12px;
  font-weight: 800;
}

.date48-pv-mod-panel {
  position: relative;
  z-index: 1;
  width: min(760px, calc(100% - 24px));
  max-height: 90vh;
  margin: 0 auto 12px;
  overflow: auto;
  box-sizing: border-box;
  border-radius: 28px;
  padding: 20px;
  background: #fffafd;
  color: #2b1520;
  box-shadow:
    0 28px 100px
    rgba(38, 15, 27, 0.3);
}

.date48-pv-mod-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.date48-pv-mod-head span {
  display: block;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.14em;
  color: #a12b5f;
}

.date48-pv-mod-head h2 {
  margin: 4px 0 0;
}

.date48-pv-mod-head button {
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 26px;
}

.date48-pv-mod-content {
  display: grid;
  gap: 16px;
}

.date48-pv-mod-card {
  border-radius: 22px;
  padding: 15px;
  background: rgba(129, 74, 97, 0.055);
}

.date48-pv-mod-person {
  display: flex;
  gap: 11px;
  align-items: center;
}

.date48-pv-mod-person img {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  object-fit: cover;
}

.date48-pv-mod-person div {
  display: grid;
}

.date48-pv-mod-person small {
  opacity: 0.58;
}

.date48-pv-mod-challenge {
  display: grid;
  gap: 3px;
  margin: 13px 0;
}

.date48-pv-mod-challenge span {
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.12em;
  opacity: 0.54;
}

.date48-pv-mod-video {
  width: 100%;
  max-height: 420px;
  border-radius: 18px;
  background: #161013;
}

.date48-pv-mod-reason {
  width: 100%;
  box-sizing: border-box;
  margin-top: 11px;
  resize: vertical;
  border: 1px solid rgba(65, 31, 45, 0.12);
  border-radius: 14px;
  padding: 11px 12px;
  background: rgba(255, 255, 255, 0.72);
  color: inherit;
  font: inherit;
  font-size: 12px;
}

.date48-pv-mod-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 10px;
}

.date48-pv-mod-actions button {
  min-height: 42px;
  border: 0;
  border-radius: 14px;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
}

.date48-pv-mod-actions .is-reject {
  background: rgba(160, 43, 61, 0.09);
  color: #9b2940;
}

.date48-pv-mod-actions .is-approve {
  background: rgba(24, 129, 86, 0.11);
  color: #176f50;
}

.date48-pv-mod-message,
.date48-pv-mod-empty {
  margin-top: 9px;
  font-size: 12px;
  opacity: 0.66;
}

html[data-date48-theme="dark"]
.date48-pv-profile-inline {
  border-top-color: rgba(255, 255, 255, 0.09);
}

html[data-date48-theme="dark"]
.date48-pv-profile-inline__button,
html[data-date48-theme="dark"]
.date48-pv-mod-entry {
  background: rgba(231, 103, 160, 0.13);
  color: #f0a4c6;
}

html[data-date48-theme="dark"]
.date48-pv-sheet,
html[data-date48-theme="dark"]
.date48-pv-mod-panel {
  background:
    rgba(31, 20, 26, 0.985);
  color: #fff4f8;
  box-shadow:
    0 -24px 90px
    rgba(0, 0, 0, 0.46);
}

html[data-date48-theme="dark"]
.date48-pv-sheet__handle {
  background: rgba(255, 255, 255, 0.18);
}

html[data-date48-theme="dark"]
.date48-pv-sheet__close {
  background: rgba(255, 255, 255, 0.08);
  color: white;
}

html[data-date48-theme="dark"]
.date48-pv-fact,
html[data-date48-theme="dark"]
.date48-pv-consent,
html[data-date48-theme="dark"]
.date48-pv-mod-card {
  background: rgba(255, 255, 255, 0.055);
}

html[data-date48-theme="dark"]
.date48-pv-mod-reason {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.09);
  color: white;
}

@media (min-width: 720px) {
  .date48-pv-modal {
    align-items: center;
    padding: 22px;
  }

  .date48-pv-sheet {
    border-radius: 30px;
    padding-bottom: 24px;
  }

  .date48-pv-mod-modal {
    align-items: center;
    padding: 24px;
  }
}


/* DATE48 CSS SOURCE 80: /assets/photo-verification-admin-profile-link-v1-20261004_003752.css */
/* date48_photo_verification_ai_verdict_addon_v2_20261003 */

.date48-pv-ai-addon-v2{
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  margin:14px 0;
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(31,25,27,.10);
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,245,242,.90));
}

.date48-pv-ai-addon-v2.is-pass{
  border-color:rgba(43,132,84,.24);
  background:linear-gradient(145deg,rgba(239,249,244,.97),rgba(249,252,249,.93));
}

.date48-pv-ai-addon-v2.is-review{
  border-color:rgba(168,113,45,.24);
  background:linear-gradient(145deg,rgba(253,248,238,.98),rgba(255,252,247,.94));
}

.date48-pv-ai-addon-v2__eyebrow{
  margin-bottom:5px;
  opacity:.55;
  font-size:10px;
  font-weight:850;
  letter-spacing:.16em;
}

.date48-pv-ai-addon-v2__title{
  margin-bottom:14px;
  font-size:17px;
  font-weight:850;
  line-height:1.2;
}

.date48-pv-ai-addon-v2__metrics{
  display:grid;
  gap:8px;
}

.date48-pv-ai-addon-v2__metric{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:1px 8px;
  align-items:center;
}

.date48-pv-ai-addon-v2__mark{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
}

.date48-pv-ai-addon-v2__metric.is-pass .date48-pv-ai-addon-v2__mark{
  color:#247348;
  background:rgba(45,137,87,.14);
}

.date48-pv-ai-addon-v2__metric.is-warn .date48-pv-ai-addon-v2__mark{
  color:#8a5a20;
  background:rgba(177,122,54,.16);
}

.date48-pv-ai-addon-v2__label{
  font-size:14px;
  font-weight:780;
}

.date48-pv-ai-addon-v2__detail{
  grid-column:2;
  opacity:.62;
  font-size:12px;
  line-height:1.35;
}

.date48-pv-ai-addon-v2__reason{
  margin:14px 0 0;
  opacity:.77;
  font-size:13px;
  line-height:1.45;
}

.date48-pv-ai-addon-v2__details{
  margin-top:11px;
  opacity:.55;
  font-size:11px;
  line-height:1.4;
}

.date48-pv-ai-addon-v2__details summary{
  cursor:pointer;
  font-weight:750;
}

.date48-pv-ai-addon-v2__details>div{
  margin-top:6px;
  overflow-wrap:anywhere;
}

/* date48_photo_moderation_profile_link_v1_20261004 */

.date48-pv-mod-person--profile-link{
  cursor:pointer;
  border-radius:16px;
  transition:
    background .16s ease,
    transform .16s ease;
}

.date48-pv-mod-person--profile-link:active{
  transform:scale(.992);
  background:rgba(121,37,72,.045);
}

.date48-pv-admin-profile-link{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:44px;
  margin:10px 0 14px;
  padding:0 14px;
  border:1px solid rgba(121,37,72,.12);
  border-radius:14px;
  background:rgba(255,255,255,.68);
  color:#552337;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  letter-spacing:.01em;
  -webkit-tap-highlight-color:transparent;
}

.date48-pv-admin-profile-link:active{
  background:rgba(121,37,72,.08);
}

.date48-pv-admin-profile-link__arrow{
  margin-left:12px;
  font-size:17px;
  font-weight:700;
  opacity:.68;
}


/* DATE48 CSS SOURCE 81: /assets/date48-verified-corner-check-v1-20261004_021928.css */
/*
 * date48_verified_corner_check_v1_20261004
 *
 * Visual-only verified treatment.
 *
 * Business rule remains unchanged:
 * element exists only when ownerVerified is true.
 */


/* ==========================================================
   LARGE REFERENCE / MOMENT CARD
   ========================================================== */

.date48-reference-post__verified {
  position:
    absolute
    !important;

  top:
    18px
    !important;

  right:
    18px
    !important;

  left:
    auto
    !important;

  bottom:
    auto
    !important;

  box-sizing:
    border-box
    !important;

  display:
    grid
    !important;

  place-items:
    center
    !important;

  width:
    60px
    !important;

  min-width:
    60px
    !important;

  height:
    60px
    !important;

  min-height:
    60px
    !important;

  padding:
    0
    !important;

  margin:
    0
    !important;

  border:
    2px solid
    rgba(255,255,255,.90)
    !important;

  border-radius:
    999px
    !important;

  background:
    linear-gradient(
      145deg,
      rgba(190,87,128,.96) 0%,
      rgba(145,51,91,.98) 100%
    )
    !important;

  background-color:
    #9c3c66
    !important;

  box-shadow:
    0 12px 28px
      rgba(43,16,28,.26),
    inset 0 1px 0
      rgba(255,255,255,.28)
    !important;

  backdrop-filter:
    blur(8px)
    !important;

  -webkit-backdrop-filter:
    blur(8px)
    !important;

  color:
    transparent
    !important;

  font-size:
    0
    !important;

  line-height:
    0
    !important;

  letter-spacing:
    0
    !important;

  text-indent:
    0
    !important;

  text-transform:
    none
    !important;

  white-space:
    nowrap
    !important;

  overflow:
    hidden
    !important;

  pointer-events:
    none
    !important;

  z-index:
    8
    !important;
}


.date48-reference-post__verified::before {
  content:
    "✓";

  display:
    block;

  color:
    #ffffff;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;

  font-size:
    35px;

  font-weight:
    800;

  line-height:
    1;

  letter-spacing:
    0;

  transform:
    translateY(-1px);

  text-shadow:
    0 1px 2px
      rgba(50,10,28,.18);
}


/*
 * The existing ••• control already occupies the upper-right
 * corner. Only on verified cards move it below the check.
 */
.date48-reference-post__stage:has(
  .date48-reference-post__verified
)
.date48-reference-post__more {
  top:
    90px
    !important;

  right:
    20px
    !important;
}


/* ==========================================================
   CLASSIC FEED CARD
   ========================================================== */

.date48-classic-card__badges {
  position:
    absolute
    !important;

  top:
    16px
    !important;

  right:
    16px
    !important;

  left:
    auto
    !important;

  bottom:
    auto
    !important;

  display:
    flex
    !important;

  align-items:
    center
    !important;

  justify-content:
    center
    !important;

  z-index:
    8
    !important;

  pointer-events:
    none
    !important;
}


.date48-classic-card__badges > b {
  box-sizing:
    border-box
    !important;

  display:
    grid
    !important;

  place-items:
    center
    !important;

  width:
    56px
    !important;

  min-width:
    56px
    !important;

  height:
    56px
    !important;

  min-height:
    56px
    !important;

  padding:
    0
    !important;

  margin:
    0
    !important;

  border:
    2px solid
    rgba(255,255,255,.90)
    !important;

  border-radius:
    999px
    !important;

  background:
    linear-gradient(
      145deg,
      rgba(190,87,128,.96) 0%,
      rgba(145,51,91,.98) 100%
    )
    !important;

  box-shadow:
    0 10px 24px
      rgba(43,16,28,.24),
    inset 0 1px 0
      rgba(255,255,255,.28)
    !important;

  color:
    transparent
    !important;

  font-size:
    0
    !important;

  line-height:
    0
    !important;

  overflow:
    hidden
    !important;
}


.date48-classic-card__badges > b::before {
  content:
    "✓";

  color:
    #ffffff;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Arial,
    sans-serif;

  font-size:
    32px;

  font-weight:
    800;

  line-height:
    1;

  transform:
    translateY(-1px);

  text-shadow:
    0 1px 2px
      rgba(50,10,28,.18);
}


/* ==========================================================
   SMALL MOBILE TUNING
   ========================================================== */

@media (max-width: 430px) {

  .date48-reference-post__verified {
    top:
      14px
      !important;

    right:
      14px
      !important;

    width:
      56px
      !important;

    min-width:
      56px
      !important;

    height:
      56px
      !important;

    min-height:
      56px
      !important;
  }


  .date48-reference-post__verified::before {
    font-size:
      32px;
  }


  .date48-reference-post__stage:has(
    .date48-reference-post__verified
  )
  .date48-reference-post__more {
    top:
      82px
      !important;

    right:
      16px
      !important;
  }


  .date48-classic-card__badges {
    top:
      14px
      !important;

    right:
      14px
      !important;
  }


  .date48-classic-card__badges > b {
    width:
      52px
      !important;

    min-width:
      52px
      !important;

    height:
      52px
      !important;

    min-height:
      52px
      !important;
  }


  .date48-classic-card__badges > b::before {
    font-size:
      30px;
  }
}


/* DATE48 CSS SOURCE 82: /assets/date48-verified-corner-check-size-v2-20261004_022426.css */
/*
 * date48_verified_corner_check_size_v2_20261004
 *
 * Smaller premium verified mark.
 * Visual override only.
 */


/* ===============================
   LARGE / REFERENCE CARD
   =============================== */

.date48-reference-post__verified {
  top:
    14px
    !important;

  right:
    14px
    !important;

  width:
    48px
    !important;

  min-width:
    48px
    !important;

  height:
    48px
    !important;

  min-height:
    48px
    !important;

  border:
    1.5px solid
    rgba(255,255,255,.88)
    !important;

  box-shadow:
    0 8px 20px
      rgba(43,16,28,.20),
    inset 0 1px 0
      rgba(255,255,255,.24)
    !important;
}


.date48-reference-post__verified::before {
  font-size:
    27px
    !important;

  font-weight:
    780
    !important;

  transform:
    translateY(-1px)
    !important;
}


/*
 * Bring the ••• menu back upward
 * now that the verified mark is smaller.
 */

.date48-reference-post__stage:has(
  .date48-reference-post__verified
)
.date48-reference-post__more {
  top:
    72px
    !important;

  right:
    15px
    !important;
}


/* ===============================
   CLASSIC CARD
   =============================== */

.date48-classic-card__badges {
  top:
    14px
    !important;

  right:
    14px
    !important;
}


.date48-classic-card__badges > b {
  width:
    48px
    !important;

  min-width:
    48px
    !important;

  height:
    48px
    !important;

  min-height:
    48px
    !important;

  border:
    1.5px solid
    rgba(255,255,255,.88)
    !important;

  box-shadow:
    0 8px 20px
      rgba(43,16,28,.20),
    inset 0 1px 0
      rgba(255,255,255,.24)
    !important;
}


.date48-classic-card__badges > b::before {
  font-size:
    27px
    !important;

  font-weight:
    780
    !important;
}


/* ===============================
   MOBILE
   =============================== */

@media (max-width: 430px) {

  .date48-reference-post__verified {
    top:
      12px
      !important;

    right:
      12px
      !important;

    width:
      44px
      !important;

    min-width:
      44px
      !important;

    height:
      44px
      !important;

    min-height:
      44px
      !important;

    border-width:
      1.5px
      !important;
  }


  .date48-reference-post__verified::before {
    font-size:
      25px
      !important;
  }


  .date48-reference-post__stage:has(
    .date48-reference-post__verified
  )
  .date48-reference-post__more {
    top:
      66px
      !important;

    right:
      13px
      !important;
  }


  .date48-classic-card__badges {
    top:
      12px
      !important;

    right:
      12px
      !important;
  }


  .date48-classic-card__badges > b {
    width:
      44px
      !important;

    min-width:
      44px
      !important;

    height:
      44px
      !important;

    min-height:
      44px
      !important;
  }


  .date48-classic-card__badges > b::before {
    font-size:
      25px
      !important;
  }
}


/* DATE48 CSS SOURCE 83: /assets/video-circle-geometry-fix-v1-20261004_051714.css */
/*
 * Date48 Video Circle Geometry Fix V1B
 * Scope: recording preview + sent video-circle only.
 */

/* ===== RECORDING OVERLAY ===== */

.date48-circle-overlay {
  box-sizing: border-box !important;
  position: fixed !important;
  inset: 0 !important;

  width: 100vw !important;
  height: 100dvh !important;

  z-index: 2147482000 !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;

  gap: 22px !important;

  padding:
    calc(24px + env(safe-area-inset-top))
    20px
    calc(30px + env(safe-area-inset-bottom)) !important;

  background: rgba(20,13,17,.72) !important;

  -webkit-backdrop-filter: blur(18px) !important;
  backdrop-filter: blur(18px) !important;

  border: 0 !important;
  border-radius: 0 !important;

  transform: none !important;
}

/* close button */

.date48-circle-overlay__close {
  -webkit-appearance: none !important;
  appearance: none !important;

  position: absolute !important;

  top: calc(14px + env(safe-area-inset-top)) !important;
  right: 16px !important;

  box-sizing: border-box !important;

  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;

  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;

  padding: 0 !important;
  margin: 0 !important;

  display: grid !important;
  place-items: center !important;

  color: #fff !important;

  background: rgba(255,255,255,.11) !important;
  border: 1px solid rgba(255,255,255,.18) !important;

  border-radius: 50% !important;

  font-size: 25px !important;
  font-weight: 300 !important;
  line-height: 1 !important;

  transform: none !important;
}

/* ===== RECORD / REVIEW CIRCLE ===== */

.date48-circle-preview-shell {
  box-sizing: border-box !important;

  position: relative !important;

  flex: 0 0 auto !important;

  width: min(78vw, 330px) !important;
  min-width: 0 !important;
  max-width: 330px !important;

  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;

  aspect-ratio: 1 / 1 !important;

  padding: 0 !important;
  margin: 0 auto !important;

  overflow: hidden !important;

  border-radius: 50% !important;

  background: #171115 !important;

  border: 3px solid rgba(255,255,255,.88) !important;

  box-shadow:
    0 24px 70px rgba(0,0,0,.34),
    0 0 0 7px rgba(255,255,255,.06) !important;

  transform: none !important;
}

.date48-circle-preview-shell video {
  box-sizing: border-box !important;

  position: absolute !important;
  inset: 0 !important;

  display: block !important;

  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;

  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;

  aspect-ratio: 1 / 1 !important;

  padding: 0 !important;
  margin: 0 !important;

  object-fit: cover !important;
  object-position: center center !important;

  border: 0 !important;
  border-radius: 50% !important;

  transform: none !important;
}

.date48-circle-preview-shell.is-recording {
  border-color: rgba(255,76,117,.97) !important;

  box-shadow:
    0 24px 70px rgba(0,0,0,.34),
    0 0 0 7px rgba(215,37,96,.18) !important;
}

/* ===== SENT VIDEO CIRCLE ===== */

.date48-chat-bubble.has-circle {
  box-sizing: border-box !important;

  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;

  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  border: 0 !important;

  box-shadow: none !important;

  overflow: visible !important;
}

.date48-chat-circle-message {
  box-sizing: border-box !important;

  display: block !important;

  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;

  height: 176px !important;
  min-height: 176px !important;
  max-height: 176px !important;

  aspect-ratio: 1 / 1 !important;

  padding: 0 !important;
  margin: 0 !important;

  border-radius: 50% !important;
}

.date48-chat-circle-media {
  -webkit-appearance: none !important;
  appearance: none !important;

  box-sizing: border-box !important;

  position: relative !important;

  display: block !important;

  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;

  height: 176px !important;
  min-height: 176px !important;
  max-height: 176px !important;

  inline-size: 176px !important;
  block-size: 176px !important;

  aspect-ratio: 1 / 1 !important;

  flex: 0 0 176px !important;

  padding: 0 !important;
  margin: 0 !important;

  overflow: hidden !important;

  border-radius: 50% !important;

  border: 2px solid rgba(255,255,255,.88) !important;

  background: #171115 !important;

  line-height: 0 !important;

  transform: none !important;

  box-shadow:
    0 11px 30px rgba(55,31,40,.16) !important;
}

.date48-chat-circle-media video {
  box-sizing: border-box !important;

  position: absolute !important;
  inset: 0 !important;

  display: block !important;

  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;

  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;

  aspect-ratio: 1 / 1 !important;

  padding: 0 !important;
  margin: 0 !important;

  object-fit: cover !important;
  object-position: center center !important;

  border: 0 !important;
  border-radius: 50% !important;

  transform: none !important;
}

/* duration/play remain inside the circle */
.date48-chat-circle-play,
.date48-chat-circle-duration {
  z-index: 3 !important;
}

/* ===== NARROW IPHONES ===== */

@media (max-width: 390px) {

  .date48-circle-preview-shell {
    width: min(79vw, 300px) !important;
    max-width: 300px !important;
  }

  .date48-chat-circle-message,
  .date48-chat-circle-media {
    width: 164px !important;
    min-width: 164px !important;
    max-width: 164px !important;

    height: 164px !important;
    min-height: 164px !important;
    max-height: 164px !important;

    inline-size: 164px !important;
    block-size: 164px !important;

    flex-basis: 164px !important;
  }
}


/* DATE48 CSS SOURCE 84: /assets/message-lifecycle-dark-clean-v1-6-20261005.css */
/*
 * DATE48 MESSAGE UI — REAL DARK FLAT V1.6
 *
 * Visual-only overrides.
 * No message logic.
 * No voice mechanics.
 * No video mechanics.
 */


/* =========================================================
   1. ACTION DOTS — DOTS ONLY, NO TILE
   ========================================================= */

html[data-date48-theme="dark"]
.date48-message-life-controls {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  filter: none !important;
}

html[data-date48-theme="dark"]
.date48-message-life-controls::before,
html[data-date48-theme="dark"]
.date48-message-life-controls::after {
  content: none !important;
  display: none !important;
}

html[data-date48-theme="dark"]
.date48-message-life-trigger,
html[data-date48-theme="dark"]
.date48-message-life-trigger:hover,
html[data-date48-theme="dark"]
.date48-message-life-trigger:focus,
html[data-date48-theme="dark"]
.date48-message-life-trigger:focus-visible,
html[data-date48-theme="dark"]
.date48-message-life-trigger:active {
  -webkit-appearance: none !important;
  appearance: none !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  filter: none !important;

  color: rgba(255,255,255,.76) !important;
}

html[data-date48-theme="dark"]
.date48-message-life-trigger::before,
html[data-date48-theme="dark"]
.date48-message-life-trigger::after {
  content: none !important;
  display: none !important;
}


/* =========================================================
   2. DELETED MESSAGE — TEXT STATE, NOT A CARD
   ========================================================= */

html[data-date48-theme="dark"]
.date48-chat-bubble--deleted {
  width: auto !important;
  min-width: 0 !important;

  padding: 3px 2px !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  color: rgba(255,255,255,.62) !important;
}

html[data-date48-theme="dark"]
.date48-message-life-deleted {
  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  font-size: 13px !important;
  font-weight: 500 !important;
  font-style: normal !important;

  color: rgba(255,255,255,.62) !important;
}

html[data-date48-theme="dark"]
.date48-chat-bubble--deleted > small {
  margin-top: 2px !important;
  color: rgba(255,255,255,.34) !important;
}


/* =========================================================
   3. VOICE MESSAGE — ONE SURFACE ONLY
   Applies to incoming AND outgoing.
   ========================================================= */

html[data-date48-theme="dark"]
.date48-chat-voice-message,

html[data-date48-theme="dark"]
.date48-chat-voice-shell,

html[data-date48-theme="dark"]
.date48-chat-voice-player {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html[data-date48-theme="dark"]
.date48-chat-voice-message::before,
html[data-date48-theme="dark"]
.date48-chat-voice-message::after,
html[data-date48-theme="dark"]
.date48-chat-voice-shell::before,
html[data-date48-theme="dark"]
.date48-chat-voice-shell::after,
html[data-date48-theme="dark"]
.date48-chat-voice-player::before,
html[data-date48-theme="dark"]
.date48-chat-voice-player::after {
  content: none !important;
  display: none !important;
}

html[data-date48-theme="dark"]
.date48-chat-voice-speed {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  color: rgba(255,255,255,.52) !important;
}


/*
 * Track itself stays functional/visible,
 * but must not become a rectangular panel.
 */

html[data-date48-theme="dark"]
.date48-chat-voice-track {
  box-shadow: none !important;
  border: 0 !important;
}


/* =========================================================
   4. VIDEO CIRCLE — CIRCLE ONLY, NO WINE RECTANGLE
   ========================================================= */

html[data-date48-theme="dark"]
.date48-chat-message
> .date48-chat-bubble.has-circle {
  padding: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  overflow: visible !important;
}

html[data-date48-theme="dark"]
.date48-chat-message
> .date48-chat-bubble.has-circle
.date48-chat-circle-message {
  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html[data-date48-theme="dark"]
.date48-chat-message
> .date48-chat-bubble.has-circle::before,
html[data-date48-theme="dark"]
.date48-chat-message
> .date48-chat-bubble.has-circle::after,
html[data-date48-theme="dark"]
.date48-chat-circle-message::before,
html[data-date48-theme="dark"]
.date48-chat-circle-message::after {
  content: none !important;
  display: none !important;
}


/*
 * Keep media itself untouched:
 * circle border, play button, duration and video mechanics remain.
 */


/* /DATE48 MESSAGE UI — REAL DARK FLAT V1.6 */


/* DATE48 CSS SOURCE 85: /assets/message-surfaces-dark-final-v1-20261005.css */
/*
 * DATE48 — DARK CHAT SURFACES FINAL V1
 *
 * Scope:
 *   - dark theme only
 *   - voice message parent bubble
 *   - sent/received video-circle parent bubble
 *   - deleted message parent bubble
 *   - message action trigger
 *
 * Explicitly untouched:
 *   - ordinary text bubbles
 *   - photo bubbles
 *   - meeting cards
 *   - voice playback logic
 *   - voice recording
 *   - video-circle media
 *   - video recording / camera / flip
 *   - composer
 */


/* =========================================================
   1. VOICE
   Historical dark-wine / clean-glass layers paint the parent
   .date48-chat-bubble even after voice-shell is made transparent.
   Remove ONLY that parent surface.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-color: transparent !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* Keep the voice structure itself clean. */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-message,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-shell,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-player {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* 1× must be typography only, never a tile. */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-speed {
  -webkit-appearance: none !important;
  appearance: none !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* =========================================================
   2. VIDEO CIRCLE
   Parent/wrapper only.
   DO NOT touch .date48-chat-circle-media:
   its dark circular fill, ring, video and play UI stay intact.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.has-circle {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-color: transparent !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  overflow: visible !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle
.date48-chat-circle-message {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* =========================================================
   3. DELETED
   Status + timestamp only. No wine/graphite card.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.date48-chat-bubble--deleted,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.date48-chat-bubble--deleted {
  width: auto !important;
  min-width: 0 !important;
  max-width: max-content !important;

  padding: 3px 2px !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-color: transparent !important;
  border-radius: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* =========================================================
   4. THREE DOTS
   Invisible tap target. Glyph only.
   Neutralize all button states and inherited/global button CSS.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:hover,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:focus,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:focus-visible,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:active {
  -webkit-appearance: none !important;
  appearance: none !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-color: transparent !important;
  outline: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  filter: none !important;

  color: rgba(255,255,255,.72) !important;
  opacity: .9 !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-message-life-controls {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger::after,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-message-life-controls::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-message-life-controls::after {
  content: none !important;
  display: none !important;
}


/* DATE48 CSS SOURCE 86: /assets/message-surfaces-dark-polish-v2-20261005.css */
/*
 * DATE48 — DARK CHAT SURFACES POLISH V2
 *
 * Only:
 * 1. compact voice presentation
 * 2. deleted message text-only
 * 3. three-dots glyph-only
 *
 * Video-circle media and recording mechanics untouched.
 */


/* =========================================================
   VOICE — lighter and more compact
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  width: auto !important;
  min-width: 0 !important;
  max-width: min(310px, 82vw) !important;

  padding: 8px 10px 7px !important;

  background:
    linear-gradient(
      145deg,
      rgba(75,48,58,.78),
      rgba(49,31,38,.78)
    ) !important;

  background-color:
    rgba(49,31,38,.78) !important;

  border:
    1px solid rgba(255,255,255,.08) !important;

  border-radius:
    19px !important;

  box-shadow:
    none !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-message {
  width: min(275px, 70vw) !important;
  max-width: 100% !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-shell {
  min-height: 42px !important;

  grid-template-columns:
    38px minmax(0,1fr) auto !important;

  gap: 8px !important;

  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-speed {
  min-width: 24px !important;
  height: 22px !important;

  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  color:
    rgba(255,255,255,.48) !important;

  font-size:
    10px !important;
}


/* =========================================================
   DELETED — no box at all
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.date48-chat-bubble--deleted,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.date48-chat-bubble--deleted {
  width: auto !important;
  min-width: 0 !important;
  max-width: max-content !important;

  padding: 2px 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-message-life-deleted {
  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;

  color:
    rgba(255,255,255,.46) !important;

  font-size:
    13px !important;

  font-style:
    normal !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-message-life-deleted::before {
  opacity: .46 !important;
}


/* =========================================================
   THREE DOTS — glyph only
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-message-life-controls {
  background: none !important;
  background-color: transparent !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;

  width: auto !important;
  height: auto !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:hover,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:focus,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:focus-visible,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger:active {
  -webkit-appearance: none !important;
  appearance: none !important;

  width: 28px !important;
  height: 24px !important;

  margin: 0 !important;
  padding: 0 2px 5px !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  filter: none !important;

  color:
    rgba(255,255,255,.62) !important;

  opacity: .86 !important;
}


/* Hard neutralize pseudo-surfaces */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-message-life-controls::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-message-life-controls::after,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
button.date48-message-life-trigger::after {
  content: none !important;
  display: none !important;
}


/* DATE48 CSS SOURCE 87: /assets/message-surfaces-dark-polish-v3-20261005.css */
/*
 * Date48 Dark Chat Polish V3
 * Scope: voice geometry only.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message) {
  box-sizing: border-box !important;

  width: min(292px, 76vw) !important;
  min-width: 0 !important;
  max-width: min(292px, 76vw) !important;

  padding: 8px 10px 7px !important;

  border-radius: 18px !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-message {
  box-sizing: border-box !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;

  margin: 0 !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
> .date48-chat-bubble:has(.date48-chat-voice-message)
.date48-chat-voice-shell {
  box-sizing: border-box !important;

  width: 100% !important;
  min-width: 0 !important;
  min-height: 40px !important;

  grid-template-columns:
    38px minmax(0,1fr) 24px !important;

  gap: 8px !important;

  padding: 0 !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-track {
  min-width: 0 !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-speed {
  min-width: 24px !important;
  width: 24px !important;
  max-width: 24px !important;

  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}


/* DATE48 CSS SOURCE 88: /assets/message-dots-container-final-v1-20261005.css */
/*
 * DATE48 — DOTS CONTAINER FINAL V1
 *
 * Root cause:
 * legacy dark-wine selectors target [class*="message"].
 * .date48-message-life-controls therefore receives card chrome.
 *
 * This file neutralizes ONLY that controls container.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
.date48-chat-message
> .date48-chat-bubble
> .date48-message-life-controls {
  box-sizing: border-box !important;

  width: 27px !important;
  min-width: 27px !important;
  max-width: 27px !important;

  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  filter: none !important;

  opacity: 1 !important;

  overflow: visible !important;
}


/* Neutralize legacy pseudo-card chrome too. */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
.date48-chat-message
> .date48-chat-bubble
> .date48-message-life-controls::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
.date48-chat-message
> .date48-chat-bubble
> .date48-message-life-controls::after {
  content: none !important;
  display: none !important;

  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}


/* Trigger remains glyph-only. */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread
.date48-chat-message
> .date48-chat-bubble
> .date48-message-life-controls
> button.date48-message-life-trigger {
  width: 27px !important;
  height: 24px !important;

  margin: 0 !important;
  padding: 0 2px 4px !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;

  box-shadow: none !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* DATE48 CSS SOURCE 89: /assets/message-readability-polish-v2-20261005.css */
/*
 * DATE48 — MESSAGE READABILITY POLISH V2
 *
 * Exact selectors only.
 *
 * Voice:
 *   .date48-chat-voice-track span
 *   .date48-chat-voice-speed
 *
 * Circle:
 *   .date48-chat-circle-message
 *   .date48-chat-circle-media
 *   .date48-chat-circle-media video
 *   .date48-chat-circle-duration
 */


/* =========================================================
   1. VOICE — readable metadata
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-track span {
  color: rgba(255,255,255,.72) !important;

  font-size: 10px !important;
  font-weight: 560 !important;

  line-height: 1 !important;

  font-variant-numeric: tabular-nums !important;

  opacity: 1 !important;

  text-shadow: none !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-speed {
  color: rgba(255,255,255,.66) !important;

  font-size: 10px !important;
  font-weight: 680 !important;

  opacity: 1 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}


/* Give the range slightly better visibility */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-track input[type="range"] {
  opacity: .86 !important;
}


/* =========================================================
   2. VIDEO CIRCLE — duration below/outside the circle
   ========================================================= */

/*
 * Duration is a child of .date48-chat-circle-media.
 * To let it extend outside the circle we allow overflow.
 * The video itself gets its own circular clipping so the
 * media remains perfectly round.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-circle-message {
  position: relative !important;

  margin-bottom: 22px !important;

  overflow: visible !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-circle-media {
  overflow: visible !important;
}


/*
 * Preserve the actual video as a circle after removing
 * overflow:hidden from the button.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-circle-media video {
  border-radius: 999px !important;

  -webkit-clip-path: circle(50% at 50% 50%) !important;
  clip-path: circle(50% at 50% 50%) !important;
}


/*
 * Exact duration badge.
 * It now sits BELOW the circle rather than over the face.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-circle-duration {
  position: absolute !important;

  right: 8px !important;
  bottom: -24px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 38px !important;
  height: 22px !important;

  padding: 0 8px !important;

  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 999px !important;

  background: rgba(47,36,41,.92) !important;

  color: rgba(255,255,255,.78) !important;

  font-size: 11px !important;
  font-weight: 620 !important;
  line-height: 1 !important;

  font-variant-numeric: tabular-nums !important;

  -webkit-backdrop-filter: blur(10px) !important;
  backdrop-filter: blur(10px) !important;

  box-shadow: none !important;

  z-index: 5 !important;
}


/* =========================================================
   3. Explicit safety: no recorder selectors here
   ========================================================= */

/* /DATE48 MESSAGE READABILITY POLISH V2 */


/* DATE48 CSS SOURCE 90: /assets/message-play-readability-polish-v3-20261005.css */
/* DATE48 MESSAGE PLAY/READABILITY POLISH V3
   - voice meta text (time / duration / speed) => white
   - video-circle central play => translucent
   - CSS only, no runtime logic changes
*/

/* ==========================================================
   1. VOICE MESSAGE READABILITY
   ========================================================== */

/* exact-ish scoped selectors for voice/audio meta */
[class*="voice"] [class*="time"],
[class*="voice"] [class*="duration"],
[class*="voice"] [class*="speed"],
[class*="audio"] [class*="time"],
[class*="audio"] [class*="duration"],
[class*="audio"] [class*="speed"],
[class*="voice-message"] [class*="meta"],
[class*="audio-message"] [class*="meta"],
[class*="voice-track"] [class*="meta"],
[class*="audio-track"] [class*="meta"] {
  color: rgba(255,255,255,.96) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* common small text inside voice row */
[class*="voice"] small,
[class*="audio"] small,
[class*="voice"] [class*="caption"],
[class*="audio"] [class*="caption"] {
  color: rgba(255,255,255,.96) !important;
  opacity: 1 !important;
}

/* specifically try to catch 1x / speed chip text */
[class*="voice"] [class*="speed"],
[class*="audio"] [class*="speed"] {
  color: rgba(255,255,255,.96) !important;
  font-weight: 700 !important;
}

/* ==========================================================
   2. VIDEO CIRCLE PLAY BUTTON
   ========================================================== */

/* keep face visible: lighter translucent center play */
[class*="circle"] [class*="play"],
[class*="circle"] [class*="play-button"],
[class*="circle"] [class*="playButton"],
[class*="circle"] [class*="play-overlay"],
[class*="circle"] [class*="playOverlay"],
[class*="video-circle"] [class*="play"],
[class*="video"] [class*="play-overlay"],
[class*="video"] [class*="playOverlay"] {
  background: rgba(34,24,29,.38) !important;
  background-color: rgba(34,24,29,.38) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(4px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(4px) saturate(140%) !important;
}

/* white triangle / glyph */
[class*="circle"] [class*="play"] svg,
[class*="circle"] [class*="play-button"] svg,
[class*="circle"] [class*="playButton"] svg,
[class*="circle"] [class*="play-overlay"] svg,
[class*="circle"] [class*="playOverlay"] svg,
[class*="video-circle"] [class*="play"] svg,
[class*="video"] [class*="play-overlay"] svg,
[class*="video"] [class*="playOverlay"] svg,
[class*="circle"] [class*="play"] path,
[class*="circle"] [class*="play-button"] path,
[class*="circle"] [class*="playButton"] path,
[class*="circle"] [class*="play-overlay"] path,
[class*="circle"] [class*="playOverlay"] path,
[class*="video-circle"] [class*="play"] path,
[class*="video"] [class*="play-overlay"] path,
[class*="video"] [class*="playOverlay"] path {
  fill: rgba(255,255,255,.96) !important;
  color: rgba(255,255,255,.96) !important;
  opacity: 1 !important;
}

/* if play overlay is rendered as a plain button inside circle media */
[class*="circle-media"] > button,
[class*="circle-preview"] > button,
[class*="circle-video"] > button,
[class*="video-circle"] > button {
  background: rgba(34,24,29,.38) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(4px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(4px) saturate(140%) !important;
}

[class*="circle-media"] > button svg,
[class*="circle-preview"] > button svg,
[class*="circle-video"] > button svg,
[class*="video-circle"] > button svg,
[class*="circle-media"] > button path,
[class*="circle-preview"] > button path,
[class*="circle-video"] > button path,
[class*="video-circle"] > button path {
  fill: rgba(255,255,255,.96) !important;
  color: rgba(255,255,255,.96) !important;
  opacity: 1 !important;
}


/* DATE48 CSS SOURCE 91: /assets/voice-dark-readability-v4-20261005.css */
/*
 * DATE48 — VOICE DARK READABILITY V4
 * Exact selectors only.
 */

/* timecode: 0:00 / 0:05 */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-track span {
  color: rgba(255,255,255,.96) !important;
  opacity: 1 !important;

  font-size: 11px !important;
  font-weight: 650 !important;

  line-height: 1.05 !important;
  letter-spacing: .01em !important;

  font-variant-numeric: tabular-nums !important;

  text-shadow: none !important;
}


/* speed: 1× / 1.5× / 2× */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-speed {
  color: rgba(255,255,255,.92) !important;
  opacity: 1 !important;

  font-size: 11px !important;
  font-weight: 720 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  text-shadow: none !important;
}


/* slider itself — slightly more visible */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-track input[type="range"] {
  opacity: 1 !important;
  accent-color: rgba(255,255,255,.88) !important;
}


/* play glyph stays readable */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-voice-play {
  color: rgba(72,50,59,.96) !important;
}


/* /DATE48 VOICE DARK READABILITY V4 */


/* DATE48 CSS SOURCE 92: /assets/meeting-sheet-dark-premium-v1-20261005.css */
/*
 DATE48 — Meeting Sheet Dark Premium V1
 Scope: dark theme only.
 No meeting/chat/runtime logic changes.
*/

html[data-date48-theme="dark"] .d48m541-shell {
  color: #f7f1f3 !important;
  background:
    linear-gradient(
      180deg,
      #171114 0%,
      #120d0f 48%,
      #0e0a0c 100%
    ) !important;
}

html[data-date48-theme="dark"] .d48m541-topbar {
  color: #f7f1f3 !important;
  background: transparent !important;
}

html[data-date48-theme="dark"] .d48m541-topbar small,
html[data-date48-theme="dark"] .d48m541-eyebrow,
html[data-date48-theme="dark"] .d48m541-step {
  color: #c78398 !important;
  opacity: 1 !important;
}

html[data-date48-theme="dark"] .d48m541-topbar b,
html[data-date48-theme="dark"] .d48m541-heading h1,
html[data-date48-theme="dark"] .d48m541-status-hero h1,
html[data-date48-theme="dark"] .d48m541-preview-body h2,
html[data-date48-theme="dark"] .d48m541-custom-form h2,
html[data-date48-theme="dark"] .d48m541-empty-routes h2 {
  color: #fff9fb !important;
}

html[data-date48-theme="dark"] .d48m541-heading p,
html[data-date48-theme="dark"] .d48m541-status-hero p,
html[data-date48-theme="dark"] .d48m541-custom-form p,
html[data-date48-theme="dark"] .d48m541-empty-routes p,
html[data-date48-theme="dark"] .d48m541-preview-body p,
html[data-date48-theme="dark"] .d48m541-recipient small,
html[data-date48-theme="dark"] .d48m541-send-explain p {
  color: #bcaeb3 !important;
}

html[data-date48-theme="dark"] .d48m541-back {
  color: #f7f1f3 !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-date48-theme="dark"] .d48m541-time-card,
html[data-date48-theme="dark"] .d48m541-place-card,
html[data-date48-theme="dark"] .d48m541-custom-promo,
html[data-date48-theme="dark"] .d48m541-preview-card,
html[data-date48-theme="dark"] .d48m541-recipient,
html[data-date48-theme="dark"] .d48m541-send-explain,
html[data-date48-theme="dark"] .d48m541-custom-time,
html[data-date48-theme="dark"] .d48m541-note,
html[data-date48-theme="dark"] .d48m541-custom-form {
  background:
    linear-gradient(
      145deg,
      rgba(58, 34, 42, 0.96),
      rgba(36, 23, 28, 0.98)
    ) !important;

  border-color:
    rgba(214, 146, 167, 0.14) !important;

  box-shadow:
    0 16px 42px
    rgba(0, 0, 0, 0.20) !important;

  color: #f8f1f3 !important;
}

html[data-date48-theme="dark"] .d48m541-time-card span,
html[data-date48-theme="dark"] .d48m541-time-card b {
  color: #f7eff2 !important;
}

html[data-date48-theme="dark"] .d48m541-time-card.is-selected {
  background:
    linear-gradient(
      145deg,
      #6f2740,
      #451927
    ) !important;

  border-color:
    rgba(236, 159, 184, 0.44) !important;

  box-shadow:
    0 18px 40px
    rgba(94, 27, 49, 0.30) !important;
}

html[data-date48-theme="dark"] .d48m541-place-card span,
html[data-date48-theme="dark"] .d48m541-place-row span,
html[data-date48-theme="dark"] .d48m541-preview-body span,
html[data-date48-theme="dark"] .d48m541-recipient span {
  color: #c98aa0 !important;
}

html[data-date48-theme="dark"] .d48m541-place-card h3,
html[data-date48-theme="dark"] .d48m541-place-row b,
html[data-date48-theme="dark"] .d48m541-preview-body h2,
html[data-date48-theme="dark"] .d48m541-recipient b {
  color: #fff9fb !important;
}

html[data-date48-theme="dark"] .d48m541-place-card p,
html[data-date48-theme="dark"] .d48m541-place-row small,
html[data-date48-theme="dark"] .d48m541-preview-body p {
  color: #bcaeb3 !important;
}

html[data-date48-theme="dark"] .d48m541-place-row {
  background:
    rgba(53, 33, 40, 0.92) !important;

  border-color:
    rgba(214, 146, 167, 0.12) !important;

  color: #f8f1f3 !important;
}

html[data-date48-theme="dark"] .d48m541-tabs {
  background:
    rgba(255, 255, 255, 0.035) !important;

  border-color:
    rgba(255, 255, 255, 0.06) !important;
}

html[data-date48-theme="dark"] .d48m541-tabs button {
  color: #aa9ba0 !important;
}

html[data-date48-theme="dark"] .d48m541-tabs button.is-active {
  color: #fff9fb !important;
  background:
    rgba(132, 42, 70, 0.78) !important;
}

html[data-date48-theme="dark"] .d48m541-category-scroll button {
  color: #c2b1b7 !important;
  background:
    rgba(255, 255, 255, 0.045) !important;
  border-color:
    rgba(255, 255, 255, 0.07) !important;
}

html[data-date48-theme="dark"] .d48m541-category-scroll button.is-active {
  color: #fff !important;
  background: #72253f !important;
  border-color: #8b3552 !important;
}

html[data-date48-theme="dark"] .d48m541-search {
  background:
    rgba(255, 255, 255, 0.045) !important;

  border-color:
    rgba(255, 255, 255, 0.07) !important;
}

html[data-date48-theme="dark"] .d48m541-search input,
html[data-date48-theme="dark"] .d48m541-custom-time input,
html[data-date48-theme="dark"] .d48m541-custom-form input,
html[data-date48-theme="dark"] .d48m541-note textarea {
  color: #fff8fa !important;

  background:
    rgba(8, 6, 7, 0.34) !important;

  border-color:
    rgba(211, 145, 165, 0.15) !important;

  caret-color: #d88ca4 !important;
}

html[data-date48-theme="dark"] .d48m541-search input::placeholder,
html[data-date48-theme="dark"] .d48m541-custom-form input::placeholder,
html[data-date48-theme="dark"] .d48m541-note textarea::placeholder {
  color: #80747a !important;
  opacity: 1 !important;
}

html[data-date48-theme="dark"] .d48m541-custom-time span,
html[data-date48-theme="dark"] .d48m541-note span,
html[data-date48-theme="dark"] .d48m541-custom-form label span {
  color: #d4c5ca !important;
}

html[data-date48-theme="dark"] .d48m541-time-line {
  color: #f3d9e1 !important;

  background:
    rgba(140, 48, 76, 0.18) !important;
}

html[data-date48-theme="dark"] .d48m541-time-line span {
  color: #d989a4 !important;
}

html[data-date48-theme="dark"] .d48m541-primary {
  color: #fff !important;

  background:
    linear-gradient(
      135deg,
      #8f3655,
      #68223c
    ) !important;

  border-color:
    rgba(255, 255, 255, 0.06) !important;

  box-shadow:
    0 16px 34px
    rgba(106, 31, 58, 0.30) !important;
}

html[data-date48-theme="dark"] .d48m541-secondary {
  color: #e9dce1 !important;

  background:
    rgba(255, 255, 255, 0.05) !important;

  border-color:
    rgba(255, 255, 255, 0.08) !important;
}

html[data-date48-theme="dark"] .d48m541-secondary-danger {
  color: #ffb8c6 !important;

  background:
    rgba(150, 35, 64, 0.12) !important;

  border-color:
    rgba(223, 90, 124, 0.18) !important;
}

html[data-date48-theme="dark"] .d48m541-status-icon {
  color: #f3dbe3 !important;

  background:
    linear-gradient(
      145deg,
      #762945,
      #481927
    ) !important;
}

html[data-date48-theme="dark"] .d48m541-section-title b,
html[data-date48-theme="dark"] .d48m541-results-meta,
html[data-date48-theme="dark"] .d48m541-results-meta b {
  color: #f7eff2 !important;
}

html[data-date48-theme="dark"] .d48m541-section-title span {
  color: #9f9196 !important;
}

html[data-date48-theme="dark"] .d48m541-section-title button {
  color: #d98ba5 !important;
}

html[data-date48-theme="dark"] .d48m541-image-fallback {
  color: #e3a6b9 !important;

  background:
    linear-gradient(
      145deg,
      #3f2630,
      #27191f
    ) !important;
}

html[data-date48-theme="dark"] .d48m541-error {
  color: #ffc1cf !important;

  background:
    rgba(164, 40, 70, 0.14) !important;

  border-color:
    rgba(224, 99, 129, 0.18) !important;
}


/* DATE48 CSS SOURCE 93: /assets/meeting-sheet-dark-root-fix-v2-20261005.css */
/*
 DATE48 — Meeting Sheet Dark Root Fix V2
 Scope:
   dark theme only
   direct DOM parent of .d48m541-shell only
 No JS / React / meeting logic changes.
*/

/* The rounded white bottom-sheet is the direct parent of d48m541-shell. */
html[data-date48-theme="dark"]
body
div:has(> .d48m541-shell),

html[data-date48-theme="dark"]
body
section:has(> .d48m541-shell) {
  background:
    linear-gradient(
      180deg,
      #171114 0%,
      #120d0f 52%,
      #0d090b 100%
    ) !important;

  background-color:
    #120d0f !important;

  color:
    #f7f0f2 !important;

  border-color:
    rgba(255,255,255,.055) !important;

  box-shadow:
    0 -18px 70px
    rgba(0,0,0,.34) !important;

  color-scheme:
    dark !important;
}


/* Ensure the whole inner surface is transparent over the real dark sheet. */
html[data-date48-theme="dark"]
.d48m541-shell {
  background:
    transparent !important;

  background-color:
    transparent !important;

  color:
    #f7f0f2 !important;
}


/* Main title seen in the screenshot. */
html[data-date48-theme="dark"]
.d48m541-shell h1 {
  color:
    #fff8fa !important;

  opacity:
    1 !important;

  text-shadow:
    none !important;
}


/* Section labels: Когда / Куда / Пара слов */
html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-section-title b,

html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-section-title strong {
  color:
    #f7eff2 !important;

  opacity:
    1 !important;
}


/* Secondary copy stays elegant, but readable. */
html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-heading p,

html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-section-title span {
  color:
    #aa9da1 !important;

  opacity:
    1 !important;
}


/* Top close control. */
html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-back {
  color:
    #cfc3c7 !important;

  background:
    rgba(255,255,255,.055) !important;

  border-color:
    rgba(255,255,255,.06) !important;
}


/* Textarea: less black/heavy than current screenshot. */
html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-note {
  background:
    #1b1417 !important;

  border-color:
    rgba(255,255,255,.055) !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.025) !important;
}

html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-note textarea {
  background:
    transparent !important;

  color:
    #f5edef !important;
}

html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-note textarea::placeholder {
  color:
    #81757a !important;

  opacity:
    1 !important;
}


/* Disabled CTA should remain visible, not washed out. */
html[data-date48-theme="dark"]
.d48m541-shell
.d48m541-primary:disabled {
  color:
    rgba(255,238,243,.43) !important;

  background:
    rgba(103,42,61,.34) !important;

  opacity:
    1 !important;
}


/* Keep the right-hand scroll surface dark where the browser exposes it. */
html[data-date48-theme="dark"]
body
div:has(> .d48m541-shell)::-webkit-scrollbar,

html[data-date48-theme="dark"]
body
section:has(> .d48m541-shell)::-webkit-scrollbar {
  width:
    4px;
}

html[data-date48-theme="dark"]
body
div:has(> .d48m541-shell)::-webkit-scrollbar-track,

html[data-date48-theme="dark"]
body
section:has(> .d48m541-shell)::-webkit-scrollbar-track {
  background:
    transparent;
}

html[data-date48-theme="dark"]
body
div:has(> .d48m541-shell)::-webkit-scrollbar-thumb,

html[data-date48-theme="dark"]
body
section:has(> .d48m541-shell)::-webkit-scrollbar-thumb {
  background:
    rgba(174,72,103,.42);

  border-radius:
    999px;
}


/* DATE48 CSS SOURCE 94: /assets/meeting-sheet-dark-root-detect-v3-20261005.css */
/*
 DATE48 Meeting Sheet Dark Root Detect V3
 The runtime marks exactly one real DOM ancestor.
*/

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"] {
  background:
    linear-gradient(
      180deg,
      #171114 0%,
      #120d0f 48%,
      #0d090b 100%
    ) !important;

  background-color:
    #120d0f !important;

  background-image:
    linear-gradient(
      180deg,
      #171114 0%,
      #120d0f 48%,
      #0d090b 100%
    ) !important;

  color:
    #f7f0f2 !important;

  border-color:
    rgba(255,255,255,.055) !important;

  box-shadow:
    0 -20px 70px
    rgba(0,0,0,.36) !important;

  color-scheme:
    dark !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-shell {
  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  color:
    #f7f0f2 !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-shell h1 {
  color:
    #fff8fa !important;

  opacity:
    1 !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-section-title b,

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-section-title strong {
  color:
    #f7eff2 !important;

  opacity:
    1 !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-heading p,

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-section-title span {
  color:
    #a99ba0 !important;

  opacity:
    1 !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-note {
  background:
    #1b1417 !important;

  border-color:
    rgba(255,255,255,.055) !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-note textarea {
  background:
    transparent !important;

  color:
    #f5edef !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]
.d48m541-primary:disabled {
  background:
    rgba(103,42,61,.36) !important;

  color:
    rgba(255,238,243,.44) !important;

  opacity:
    1 !important;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]::-webkit-scrollbar {
  width:
    4px;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]::-webkit-scrollbar-track {
  background:
    transparent;
}

html[data-date48-theme="dark"]
[data-date48-meeting-sheet-dark-root-v3="1"]::-webkit-scrollbar-thumb {
  background:
    rgba(171,72,102,.30);

  border-radius:
    999px;
}


/* DATE48 CSS SOURCE 95: /assets/propose-date-dark-real-v1-20261005.css */
/*
 DATE48 — Propose Date Dark Real V1

 Real runtime:
   root    .d48-propose
   sheet   .d48-propose__sheet
   body state: body.d48-propose-date-open

 Dark theme only.
*/

/* ---------------------------------------------------------
   REAL SHEET
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__sheet {
  background:
    radial-gradient(
      circle at 50% -10%,
      rgba(128,51,76,.14),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      #171114 0%,
      #120d0f 52%,
      #0d090b 100%
    ) !important;

  background-color:
    #120d0f !important;

  color:
    #f7f0f2 !important;

  border-color:
    rgba(255,255,255,.055) !important;

  box-shadow:
    0 -26px 80px
    rgba(0,0,0,.48) !important;

  color-scheme:
    dark !important;
}


/* ---------------------------------------------------------
   BACKDROP / HANDLE / CLOSE
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__backdrop {
  background:
    rgba(4,2,3,.64) !important;

  -webkit-backdrop-filter:
    blur(11px) !important;

  backdrop-filter:
    blur(11px) !important;
}

html[data-date48-theme="dark"]
.d48-propose__handle {
  background:
    rgba(255,255,255,.18) !important;
}

html[data-date48-theme="dark"]
.d48-propose__close {
  background:
    rgba(255,255,255,.065) !important;

  color:
    rgba(255,255,255,.68) !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(255,255,255,.04) !important;
}


/* ---------------------------------------------------------
   TYPOGRAPHY
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__sheet h1,

html[data-date48-theme="dark"]
.d48-propose__sheet h2,

html[data-date48-theme="dark"]
.d48-propose__sheet h3 {
  color:
    #fff8fa !important;

  opacity:
    1 !important;
}

html[data-date48-theme="dark"]
.d48-propose__eyebrow {
  color:
    #d77698 !important;
}

html[data-date48-theme="dark"]
.d48-propose__sheet p {
  color:
    #a99ca1;
}

html[data-date48-theme="dark"]
.d48-propose__section-title,

html[data-date48-theme="dark"]
.d48-propose__section-title strong,

html[data-date48-theme="dark"]
.d48-propose__section-title b {
  color:
    #f4ecef !important;
}


/* ---------------------------------------------------------
   TIME CARDS
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__time {
  background:
    linear-gradient(
      145deg,
      #2c1a20,
      #211419
    ) !important;

  color:
    #f6eef1 !important;

  border-color:
    rgba(255,255,255,.055) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.025),
    0 10px 24px
    rgba(0,0,0,.12) !important;
}

html[data-date48-theme="dark"]
.d48-propose__time.is-selected {
  background:
    linear-gradient(
      145deg,
      #492331,
      #321820
    ) !important;

  border-color:
    rgba(210,103,139,.42) !important;

  box-shadow:
    inset 0 0 0 1px
    rgba(210,103,139,.08),
    0 12px 28px
    rgba(0,0,0,.18) !important;
}


/* ---------------------------------------------------------
   PLACE CARDS
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__place {
  background:
    linear-gradient(
      145deg,
      #2a191f,
      #201317
    ) !important;

  border-color:
    rgba(255,255,255,.055) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.022) !important;
}

html[data-date48-theme="dark"]
.d48-propose__place.is-selected {
  background:
    linear-gradient(
      145deg,
      #472330,
      #31181f
    ) !important;

  border-color:
    rgba(210,103,139,.40) !important;
}

html[data-date48-theme="dark"]
.d48-propose__place-copy strong {
  color:
    #f8f0f3 !important;
}

html[data-date48-theme="dark"]
.d48-propose__place-copy small,

html[data-date48-theme="dark"]
.d48-propose__place-copy span {
  color:
    #b4a6ab !important;
}

html[data-date48-theme="dark"]
.d48-propose__place-media {
  background:
    linear-gradient(
      145deg,
      #3a252d,
      #24171c
    ) !important;
}


/* ---------------------------------------------------------
   CUSTOM OPTION / INPUT / NOTE
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__custom input,

html[data-date48-theme="dark"]
.d48-propose__note {
  background:
    #191316 !important;

  color:
    #f4ecef !important;

  border-color:
    rgba(255,255,255,.065) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.022) !important;
}

html[data-date48-theme="dark"]
.d48-propose__custom input::placeholder,

html[data-date48-theme="dark"]
.d48-propose__note::placeholder {
  color:
    #776b70 !important;

  opacity:
    1 !important;
}


/* ---------------------------------------------------------
   CTA
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__send {
  border-color:
    #a84a6b !important;

  background:
    linear-gradient(
      135deg,
      #a84a6b,
      #84364f
    ) !important;

  color:
    #fff !important;

  box-shadow:
    0 12px 28px
    rgba(115,38,65,.28) !important;
}

html[data-date48-theme="dark"]
.d48-propose__send:disabled {
  background:
    rgba(117,68,84,.20) !important;

  border-color:
    rgba(255,255,255,.045) !important;

  color:
    rgba(255,239,244,.34) !important;

  box-shadow:
    none !important;
}


/* ---------------------------------------------------------
   ACTIVE / DONE STATES
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__done-place,

html[data-date48-theme="dark"]
.d48-propose__active-place {
  background:
    rgba(255,255,255,.045) !important;

  color:
    #f5edef !important;

  border-color:
    rgba(255,255,255,.045) !important;
}

html[data-date48-theme="dark"]
.d48-propose__active-note {
  background:
    rgba(173,72,108,.10) !important;

  color:
    #c7b9be !important;
}

html[data-date48-theme="dark"]
.d48-propose__quiet {
  color:
    #a99ba0 !important;
}


/* ---------------------------------------------------------
   FALLBACK / ERROR / LOADING
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__loading,

html[data-date48-theme="dark"]
.d48-propose__error {
  color:
    #f6eef1 !important;
}

html[data-date48-theme="dark"]
.d48-propose__loading p,

html[data-date48-theme="dark"]
.d48-propose__error p {
  color:
    #a99ca1 !important;
}


/* ---------------------------------------------------------
   SCROLLBAR
--------------------------------------------------------- */

html[data-date48-theme="dark"]
.d48-propose__sheet::-webkit-scrollbar {
  width:
    4px;
}

html[data-date48-theme="dark"]
.d48-propose__sheet::-webkit-scrollbar-track {
  background:
    transparent;
}

html[data-date48-theme="dark"]
.d48-propose__sheet::-webkit-scrollbar-thumb {
  background:
    rgba(193,86,123,.30);

  border-radius:
    999px;
}


/* DATE48 CSS SOURCE 96: /assets/propose-date-dark-text-lift-v1b-20261005.css */
/*
 DATE48 — Propose Date Dark Text Lift V1B
 Real theme selector:
   html[data-date48-theme="dark"]

 Real sheet:
   .d48-propose__sheet
*/

/* Section headings:
   Когда? / Куда? / Пара слов
*/
html[data-date48-theme="dark"]
.d48-propose__sheet h3,

html[data-date48-theme="dark"]
.d48-propose__sheet legend {
  color:
    rgba(248,240,243,.96) !important;

  opacity:
    1 !important;

  -webkit-text-fill-color:
    rgba(248,240,243,.96) !important;
}


/* Known label/title-style descendants */
html[data-date48-theme="dark"]
.d48-propose__section-title,

html[data-date48-theme="dark"]
.d48-propose__label,

html[data-date48-theme="dark"]
.d48-propose__field-label {
  color:
    rgba(248,240,243,.96) !important;

  opacity:
    1 !important;

  -webkit-text-fill-color:
    rgba(248,240,243,.96) !important;
}


/* Secondary labels:
   Владивосток / Хабаровск
   выбери настроение
   необязательно
*/
html[data-date48-theme="dark"]
.d48-propose__sheet small,

html[data-date48-theme="dark"]
.d48-propose__hint,

html[data-date48-theme="dark"]
.d48-propose__meta,

html[data-date48-theme="dark"]
.d48-propose__optional {
  color:
    rgba(196,180,186,.78) !important;

  opacity:
    1 !important;
}


/* Note field */
html[data-date48-theme="dark"]
.d48-propose__note {
  color:
    rgba(244,236,239,.94) !important;
}

html[data-date48-theme="dark"]
.d48-propose__note::placeholder {
  color:
    rgba(177,159,166,.60) !important;

  opacity:
    1 !important;
}


/* Any text input inside the custom option */
html[data-date48-theme="dark"]
.d48-propose__custom input {
  color:
    rgba(244,236,239,.94) !important;
}

html[data-date48-theme="dark"]
.d48-propose__custom input::placeholder {
  color:
    rgba(177,159,166,.60) !important;

  opacity:
    1 !important;
}


/* Disabled CTA:
   visible, but unmistakably inactive
*/
html[data-date48-theme="dark"]
.d48-propose__send:disabled {
  background:
    linear-gradient(
      180deg,
      rgba(107,48,68,.28),
      rgba(72,31,46,.30)
    ) !important;

  border-color:
    rgba(190,94,128,.12) !important;

  color:
    rgba(239,218,225,.44) !important;

  -webkit-text-fill-color:
    rgba(239,218,225,.44) !important;

  opacity:
    1 !important;

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.025) !important;
}


/* DATE48 CSS SOURCE 97: /assets/meeting-card-polish-v1-20261005.css */
/*
 DATE48 — Meeting Card Polish V1
 Scope:
  1. chat send button alignment
  2. no meeting logic changes
*/

/* Exact real send button */
.date48-chat-composer--v2
.date48-chat-composer__send {
  display: grid !important;
  place-items: center !important;

  padding: 0 !important;

  text-align: center !important;

  line-height: 1 !important;

  overflow: hidden;
}

/* Normalise possible glyph / SVG wrapper */
.date48-chat-composer--v2
.date48-chat-composer__send > span,
.date48-chat-composer--v2
.date48-chat-composer__send > svg {
  display: block !important;

  margin: 0 !important;

  position: static !important;

  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;

  transform: none !important;
}

/* If the arrow itself is plain text in the button */
.date48-chat-composer--v2
.date48-chat-composer__send {
  padding-bottom: 1px !important;
}


/* DATE48 CSS SOURCE 98: /assets/date48-push-original-design-v3.css */
.d48-push-bell {
  position: fixed;
  z-index: 70;
  top: max(
    14px,
    calc(env(safe-area-inset-top) + 8px)
  );
  right: 16px;

  width: 42px;
  height: 42px;
  padding: 0;

  display: grid;
  place-items: center;

  border: 1px solid
    rgba(132, 26, 71, .12);

  border-radius: 999px;

  background:
    rgba(255, 255, 255, .82);

  color: #811840;

  box-shadow:
    0 10px 32px
      rgba(70, 20, 42, .10);

  backdrop-filter:
    blur(18px)
    saturate(150%);

  -webkit-backdrop-filter:
    blur(18px)
    saturate(150%);

  cursor: pointer;

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background .2s ease;
}

.d48-push-bell:active {
  transform: scale(.95);
}

.d48-push-bell.is-on {
  background:
    linear-gradient(
      145deg,
      rgba(118, 20, 58, .96),
      rgba(153, 30, 76, .94)
    );

  color: white;

  border-color:
    rgba(255,255,255,.28);

  box-shadow:
    0 12px 32px
      rgba(118,20,58,.26);
}

.d48-push-bell__glyph {
  font-size: 21px;
  line-height: 1;
  transform:
    translateY(-1px);
}

.d48-push-bell__dot {
  position: absolute;
  top: 5px;
  right: 5px;

  width: 9px;
  height: 9px;

  border-radius: 999px;

  background:
    #d72d67;

  box-shadow:
    0 0 0 3px
      rgba(255,255,255,.94);
}

.d48-push-layer {
  position: fixed;
  inset: 0;

  z-index: 100000;

  display: grid;
  place-items: center;

  padding:
    max(
      20px,
      env(safe-area-inset-top)
    )
    16px
    max(
      20px,
      env(safe-area-inset-bottom)
    );

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "SF Pro Display",
    "Segoe UI",
    sans-serif;
}

.d48-push-layer__backdrop {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;
  padding: 0;

  border: 0;

  background:
    rgba(27, 12, 20, .28);

  backdrop-filter:
    blur(12px);

  -webkit-backdrop-filter:
    blur(12px);
}

.d48-push-card,
.d48-push-settings {
  position: relative;
  overflow: hidden;

  width:
    min(
      430px,
      100%
    );

  box-sizing:
    border-box;

  border:
    1px solid
      rgba(128, 24, 64, .10);

  border-radius: 34px;

  background:
    linear-gradient(
      155deg,
      rgba(255,255,255,.985),
      rgba(255,248,251,.97)
    );

  color: #251019;

  box-shadow:
    0 34px 110px
      rgba(71, 16, 39, .25);

  animation:
    d48PushEnter
    .38s
    cubic-bezier(.2,.8,.2,1);
}

.d48-push-card {
  padding:
    22px
    22px
    18px;

  text-align: center;
}

.d48-push-card__glow {
  position: absolute;

  width: 300px;
  height: 300px;

  left: 50%;
  top: -170px;

  transform:
    translateX(-50%);

  border-radius: 999px;

  background:
    radial-gradient(
      circle,
      rgba(194, 55, 110, .22),
      rgba(194, 55, 110, 0)
        68%
    );

  pointer-events: none;
}

.d48-push-preview {
  position: relative;

  height: 158px;

  margin:
    -2px
    0
    3px;
}

.d48-push-preview__item {
  position: absolute;
  left: 50%;

  width: min(
    315px,
    calc(100% - 14px)
  );

  box-sizing: border-box;

  display: flex;
  align-items: center;

  gap: 11px;

  padding:
    12px
    14px;

  border:
    1px solid
      rgba(118, 20, 58, .08);

  border-radius: 19px;

  background:
    rgba(255,255,255,.82);

  box-shadow:
    0 14px 40px
      rgba(94, 28, 52, .11);

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);

  text-align: left;
}

.d48-push-preview__item strong,
.d48-push-preview__item small {
  display: block;
}

.d48-push-preview__item strong {
  font-size: 13px;
  line-height: 1.25;
  font-weight: 800;
  color: #35131f;
}

.d48-push-preview__item small {
  margin-top: 2px;

  font-size: 11px;
  line-height: 1.25;

  color:
    rgba(53,19,31,.55);
}

.d48-push-preview__icon {
  flex: 0 0 auto;

  width: 33px;
  height: 33px;

  display: grid;
  place-items: center;

  border-radius: 12px;

  background:
    linear-gradient(
      145deg,
      rgba(139, 23, 66, .12),
      rgba(221, 78, 131, .08)
    );

  font-size: 17px;
}

.d48-push-preview__item--one {
  top: 8px;

  transform:
    translateX(-50%)
    rotate(-2.1deg);

  opacity: .78;
}

.d48-push-preview__item--two {
  top: 50px;

  transform:
    translateX(-50%)
    rotate(1.4deg);

  z-index: 2;
}

.d48-push-preview__item--three {
  top: 96px;

  transform:
    translateX(-50%)
    rotate(-.5deg);

  z-index: 3;
}

.d48-push-mark {
  display: inline-flex;

  padding:
    6px 10px;

  border:
    1px solid
      rgba(129,24,64,.11);

  border-radius: 999px;

  background:
    rgba(129,24,64,.06);

  color: #8b1f49;

  font-size: 11px;
  line-height: 1;
  font-weight: 850;

  letter-spacing: .08em;

  text-transform: uppercase;
}

.d48-push-card h2 {
  margin:
    15px
    0
    11px;

  font-size:
    clamp(
      28px,
      7.8vw,
      36px
    );

  line-height: 1.02;

  letter-spacing: -.045em;

  font-weight: 850;

  color: #281019;
}

.d48-push-lead {
  max-width: 335px;

  margin:
    0
    auto
    18px;

  font-size: 15px;
  line-height: 1.48;

  color:
    rgba(40,16,25,.64);
}

.d48-push-primary,
.d48-push-secondary {
  width: 100%;
  min-height: 51px;

  border-radius: 17px;

  font: inherit;

  cursor: pointer;
}

.d48-push-primary {
  border: 0;

  background:
    linear-gradient(
      135deg,
      #75183c,
      #a52258
    );

  color: white;

  box-shadow:
    0 14px 32px
      rgba(126,25,65,.25);

  font-weight: 780;
}

.d48-push-primary:disabled {
  opacity: .6;
}

.d48-push-secondary {
  margin-top: 7px;

  border: 0;

  background:
    transparent;

  color:
    rgba(58,20,34,.60);

  font-weight: 700;
}

.d48-push-footnote {
  margin:
    10px
    0
    0;

  font-size: 11px;
  line-height: 1.35;

  color:
    rgba(58,20,34,.40);
}

.d48-push-message {
  margin-top: 11px;

  padding:
    10px
    12px;

  border-radius: 14px;

  background:
    rgba(129,24,64,.06);

  color:
    rgba(67,20,38,.78);

  font-size: 12px;
  line-height: 1.38;
}

.d48-push-ios {
  display: grid;

  gap: 8px;

  margin:
    0
    0
    17px;

  text-align: left;
}

.d48-push-ios div {
  display: flex;
  align-items: center;

  gap: 11px;

  padding:
    11px
    12px;

  border-radius: 15px;

  background:
    rgba(125, 25, 64, .055);
}

.d48-push-ios b {
  flex: 0 0 auto;

  width: 25px;
  height: 25px;

  display: grid;
  place-items: center;

  border-radius: 999px;

  background: #811840;

  color: white;

  font-size: 11px;
}

.d48-push-ios span {
  font-size: 13px;
  font-weight: 650;

  color:
    rgba(40,16,25,.76);
}

.d48-push-settings {
  align-self: end;

  max-height:
    min(
      780px,
      calc(
        100dvh -
        env(safe-area-inset-top) -
        22px
      )
    );

  overflow-y: auto;

  padding:
    8px
    18px
    20px;

  border-radius:
    32px
    32px
    22px
    22px;
}

.d48-push-settings__handle {
  width: 44px;
  height: 5px;

  margin:
    2px
    auto
    16px;

  border-radius: 999px;

  background:
    rgba(61,22,36,.13);
}

.d48-push-settings__top {
  display: flex;
  align-items: flex-start;
  justify-content:
    space-between;

  gap: 14px;
}

.d48-push-settings__top h2 {
  margin:
    9px
    0
    3px;

  color: #281019;

  font-size: 29px;
  line-height: 1;

  letter-spacing:
    -.04em;
}

.d48-push-settings__top p {
  max-width: 290px;

  margin: 0;

  color:
    rgba(40,16,25,.55);

  font-size: 13px;
  line-height: 1.35;
}

.d48-push-close {
  width: 38px;
  height: 38px;

  flex: 0 0 auto;

  padding: 0;

  border: 0;
  border-radius: 999px;

  background:
    rgba(67,21,39,.06);

  color:
    rgba(40,16,25,.55);

  font-size: 25px;
  line-height: 1;

  cursor: pointer;
}

.d48-push-device {
  display: flex;
  align-items: center;
  justify-content:
    space-between;

  gap: 12px;

  margin-top: 18px;

  padding:
    13px
    13px
    13px
    14px;

  border:
    1px solid
      rgba(115,23,59,.08);

  border-radius: 19px;

  background:
    rgba(124,25,64,.045);
}

.d48-push-device > div {
  display: flex;
  align-items: center;

  gap: 10px;
}

.d48-push-device strong,
.d48-push-device small {
  display: block;
}

.d48-push-device strong {
  color: #31131e;

  font-size: 13px;
}

.d48-push-device small {
  margin-top: 2px;

  color:
    rgba(49,19,30,.48);

  font-size: 11px;
}

.d48-push-device__status {
  width: 10px;
  height: 10px;

  border-radius: 999px;

  background:
    rgba(58,28,39,.24);
}

.d48-push-device__status.is-on {
  background: #aa285a;

  box-shadow:
    0 0 0 5px
      rgba(170,40,90,.10);
}

.d48-push-device__button {
  min-width: 88px;

  padding:
    9px 12px;

  border:
    1px solid
      rgba(123,24,62,.11);

  border-radius: 13px;

  background: white;

  color: #7b183e;

  font-size: 12px;
  font-weight: 760;
}

.d48-push-device__button.is-on {
  background:
    rgba(123,24,62,.08);
}

.d48-push-types {
  display: grid;

  margin-top: 14px;

  overflow: hidden;

  border:
    1px solid
      rgba(106,23,54,.075);

  border-radius: 21px;
}

.d48-push-type {
  width: 100%;

  display: grid;

  grid-template-columns:
    38px
    minmax(0, 1fr)
    auto;

  align-items: center;

  gap: 10px;

  padding:
    12px
    12px;

  border: 0;
  border-bottom:
    1px solid
      rgba(74,24,43,.06);

  background:
    rgba(255,255,255,.56);

  text-align: left;

  font: inherit;

  cursor: pointer;
}

.d48-push-type:last-child {
  border-bottom: 0;
}

.d48-push-type:disabled {
  opacity: .5;
  cursor: default;
}

.d48-push-type__icon {
  width: 36px;
  height: 36px;

  display: grid;
  place-items: center;

  border-radius: 13px;

  background:
    rgba(126,25,64,.055);

  font-size: 17px;
}

.d48-push-type__copy {
  min-width: 0;
}

.d48-push-type__copy strong,
.d48-push-type__copy small {
  display: block;
}

.d48-push-type__copy strong {
  color: #32131f;

  font-size: 13px;
  line-height: 1.25;
}

.d48-push-type__copy small {
  margin-top: 2px;

  overflow: hidden;

  text-overflow:
    ellipsis;

  white-space: nowrap;

  color:
    rgba(50,19,31,.46);

  font-size: 11px;
  line-height: 1.25;
}

.d48-push-toggle {
  position: relative;

  width: 43px;
  height: 25px;

  border-radius: 999px;

  background:
    rgba(67,28,42,.14);

  transition:
    background .2s ease;
}

.d48-push-toggle span {
  position: absolute;

  top: 3px;
  left: 3px;

  width: 19px;
  height: 19px;

  border-radius: 999px;

  background: white;

  box-shadow:
    0 2px 7px
      rgba(29,10,17,.20);

  transition:
    transform .2s ease;
}

.d48-push-toggle.is-on {
  background:
    linear-gradient(
      135deg,
      #7b183e,
      #b32c63
    );
}

.d48-push-toggle.is-on span {
  transform:
    translateX(18px);
}

.d48-push-message--settings {
  margin-top: 13px;
}

.d48-push-privacy {
  margin:
    14px
    6px
    0;

  color:
    rgba(49,20,31,.42);

  font-size: 10.5px;
  line-height: 1.4;

  text-align: center;
}

@keyframes d48PushEnter {
  from {
    opacity: 0;

    transform:
      translateY(22px)
      scale(.97);
  }

  to {
    opacity: 1;

    transform:
      translateY(0)
      scale(1);
  }
}

@media (
  prefers-color-scheme: dark
) {
  .d48-push-bell {
    border-color:
      rgba(255,255,255,.09);

    background:
      rgba(38, 18, 29, .80);

    color: #f5c9da;

    box-shadow:
      0 12px 36px
        rgba(0,0,0,.28);
  }

  .d48-push-bell__dot {
    box-shadow:
      0 0 0 3px
        rgba(38,18,29,.95);
  }

  .d48-push-layer__backdrop {
    background:
      rgba(6, 3, 5, .58);
  }

  .d48-push-card,
  .d48-push-settings {
    border-color:
      rgba(255,255,255,.07);

    background:
      linear-gradient(
        155deg,
        rgba(45,20,31,.985),
        rgba(24,12,18,.985)
      );

    color: #fff5f8;

    box-shadow:
      0 36px 120px
        rgba(0,0,0,.56);
  }

  .d48-push-preview__item {
    border-color:
      rgba(255,255,255,.06);

    background:
      rgba(50,24,35,.85);

    box-shadow:
      0 14px 42px
        rgba(0,0,0,.28);
  }

  .d48-push-preview__item strong {
    color: #fff3f7;
  }

  .d48-push-preview__item small {
    color:
      rgba(255,240,246,.50);
  }

  .d48-push-preview__icon {
    background:
      rgba(220,82,136,.11);
  }

  .d48-push-mark {
    border-color:
      rgba(255,190,216,.12);

    background:
      rgba(199,64,116,.12);

    color: #f5b8cf;
  }

  .d48-push-card h2,
  .d48-push-settings__top h2 {
    color: #fff5f8;
  }

  .d48-push-lead,
  .d48-push-settings__top p {
    color:
      rgba(255,239,245,.59);
  }

  .d48-push-secondary {
    color:
      rgba(255,239,245,.58);
  }

  .d48-push-footnote,
  .d48-push-privacy {
    color:
      rgba(255,239,245,.34);
  }

  .d48-push-message {
    background:
      rgba(213,68,122,.10);

    color:
      rgba(255,231,240,.75);
  }

  .d48-push-ios div,
  .d48-push-device {
    border-color:
      rgba(255,255,255,.06);

    background:
      rgba(255,255,255,.04);
  }

  .d48-push-ios span,
  .d48-push-device strong,
  .d48-push-type__copy strong {
    color: #fff0f5;
  }

  .d48-push-device small,
  .d48-push-type__copy small {
    color:
      rgba(255,240,246,.45);
  }

  .d48-push-device__button {
    border-color:
      rgba(255,255,255,.08);

    background:
      rgba(255,255,255,.055);

    color: #f8bed4;
  }

  .d48-push-types {
    border-color:
      rgba(255,255,255,.06);
  }

  .d48-push-type {
    border-bottom-color:
      rgba(255,255,255,.05);

    background:
      rgba(255,255,255,.018);
  }

  .d48-push-type__icon {
    background:
      rgba(230,96,147,.09);
  }

  .d48-push-close {
    background:
      rgba(255,255,255,.055);

    color:
      rgba(255,240,246,.62);
  }

  .d48-push-settings__handle {
    background:
      rgba(255,255,255,.13);
  }
}

/*
 * Explicit app theme hooks.
 * These override OS preference when
 * Date48 sets its own dark theme.
 */
html[data-theme="dark"]
  .d48-push-card,
html[data-theme="dark"]
  .d48-push-settings,
body[data-theme="dark"]
  .d48-push-card,
body[data-theme="dark"]
  .d48-push-settings,
.dark
  .d48-push-card,
.dark
  .d48-push-settings {
  border-color:
    rgba(255,255,255,.07);

  background:
    linear-gradient(
      155deg,
      rgba(45,20,31,.985),
      rgba(24,12,18,.985)
    );

  color: #fff5f8;
}

@media (max-width: 520px) {
  .d48-push-layer {
    place-items: end center;

    padding:
      0
      0
      max(
        0px,
        env(safe-area-inset-bottom)
      );
  }

  .d48-push-card,
  .d48-push-settings {
    width: 100%;

    border-radius:
      32px
      32px
      0
      0;

    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }

  .d48-push-card {
    padding:
      18px
      18px
      calc(
        18px +
        env(
          safe-area-inset-bottom
        )
      );
  }

  .d48-push-settings {
    padding-bottom:
      calc(
        20px +
        env(
          safe-area-inset-bottom
        )
      );
  }
}

@media (
  prefers-reduced-motion:
  reduce
) {
  .d48-push-card,
  .d48-push-settings {
    animation: none;
  }

  .d48-push-bell,
  .d48-push-toggle,
  .d48-push-toggle span {
    transition: none;
  }
}


/* date48_push_theme_contract_v2 */

/*
 * Date48's own theme is authoritative.
 * The phone/browser color scheme must not
 * override the theme selected in Date48.
 */

/* ---------- LIGHT ---------- */

.d48-push-theme-light.d48-push-bell {
  border-color: rgba(132, 26, 71, .12);
  background: rgba(255, 255, 255, .82);
  color: #811840;
  box-shadow:
    0 10px 32px rgba(70, 20, 42, .10);
}

.d48-push-theme-light
  .d48-push-layer__backdrop {
  background: rgba(46, 31, 37, .24);
}

.d48-push-theme-light
  .d48-push-card,
.d48-push-theme-light
  .d48-push-settings {
  color: #251019;
  border-color: rgba(128, 24, 64, .10);

  background:
    linear-gradient(
      155deg,
      rgba(255,255,255,.985),
      rgba(255,248,251,.97)
    );

  box-shadow:
    0 34px 110px
      rgba(71, 16, 39, .20);
}

.d48-push-theme-light
  .d48-push-preview__item {
  border-color: rgba(118, 20, 58, .08);
  background: rgba(255,255,255,.88);

  box-shadow:
    0 14px 40px
      rgba(94, 28, 52, .11);
}

.d48-push-theme-light
  .d48-push-preview__item strong {
  color: #35131f;
}

.d48-push-theme-light
  .d48-push-preview__item small {
  color: rgba(53,19,31,.55);
}

.d48-push-theme-light
  .d48-push-preview__icon {
  background:
    linear-gradient(
      145deg,
      rgba(139,23,66,.12),
      rgba(221,78,131,.08)
    );
}

.d48-push-theme-light
  .d48-push-mark {
  color: #8b1f49;
  background: rgba(129,24,64,.06);
  border-color: rgba(129,24,64,.11);
}

.d48-push-theme-light
  .d48-push-card h2,
.d48-push-theme-light
  .d48-push-settings__top h2 {
  color: #281019;
}

.d48-push-theme-light
  .d48-push-lead,
.d48-push-theme-light
  .d48-push-settings__top p {
  color: rgba(40,16,25,.64);
}

.d48-push-theme-light
  .d48-push-secondary {
  color: rgba(58,20,34,.60);
}

.d48-push-theme-light
  .d48-push-footnote,
.d48-push-theme-light
  .d48-push-privacy {
  color: rgba(58,20,34,.40);
}

.d48-push-theme-light
  .d48-push-message {
  background: rgba(129,24,64,.06);
  color: rgba(67,20,38,.78);
}

.d48-push-theme-light
  .d48-push-ios div,
.d48-push-theme-light
  .d48-push-device {
  background: rgba(125,25,64,.055);
  border-color: rgba(115,23,59,.08);
}

.d48-push-theme-light
  .d48-push-ios span,
.d48-push-theme-light
  .d48-push-device strong,
.d48-push-theme-light
  .d48-push-type__copy strong {
  color: #31131e;
}

.d48-push-theme-light
  .d48-push-device small,
.d48-push-theme-light
  .d48-push-type__copy small {
  color: rgba(49,19,30,.48);
}

.d48-push-theme-light
  .d48-push-device__button {
  color: #7b183e;
  background: #fff;
  border-color: rgba(123,24,62,.11);
}

.d48-push-theme-light
  .d48-push-types {
  border-color: rgba(106,23,54,.075);
}

.d48-push-theme-light
  .d48-push-type {
  background: rgba(255,255,255,.56);
  border-bottom-color: rgba(74,24,43,.06);
}

.d48-push-theme-light
  .d48-push-type__icon {
  background: rgba(126,25,64,.055);
}

.d48-push-theme-light
  .d48-push-close {
  color: rgba(40,16,25,.55);
  background: rgba(67,21,39,.06);
}

.d48-push-theme-light
  .d48-push-settings__handle {
  background: rgba(61,22,36,.13);
}


/* ---------- DARK ---------- */

.d48-push-theme-dark.d48-push-bell {
  border-color: rgba(255,255,255,.09);
  background: rgba(38,18,29,.80);
  color: #f5c9da;

  box-shadow:
    0 12px 36px rgba(0,0,0,.28);
}

.d48-push-theme-dark
  .d48-push-bell__dot {
  box-shadow:
    0 0 0 3px
      rgba(38,18,29,.95);
}

.d48-push-theme-dark
  .d48-push-layer__backdrop {
  background: rgba(6,3,5,.58);
}

.d48-push-theme-dark
  .d48-push-card,
.d48-push-theme-dark
  .d48-push-settings {
  color: #fff5f8;
  border-color: rgba(255,255,255,.07);

  background:
    linear-gradient(
      155deg,
      rgba(45,20,31,.985),
      rgba(24,12,18,.985)
    );

  box-shadow:
    0 36px 120px rgba(0,0,0,.56);
}

.d48-push-theme-dark
  .d48-push-preview__item {
  border-color: rgba(255,255,255,.06);
  background: rgba(50,24,35,.85);

  box-shadow:
    0 14px 42px rgba(0,0,0,.28);
}

.d48-push-theme-dark
  .d48-push-preview__item strong {
  color: #fff3f7;
}

.d48-push-theme-dark
  .d48-push-preview__item small {
  color: rgba(255,240,246,.50);
}

.d48-push-theme-dark
  .d48-push-preview__icon {
  background: rgba(220,82,136,.11);
}

.d48-push-theme-dark
  .d48-push-mark {
  color: #f5b8cf;
  background: rgba(199,64,116,.12);
  border-color: rgba(255,190,216,.12);
}

.d48-push-theme-dark
  .d48-push-card h2,
.d48-push-theme-dark
  .d48-push-settings__top h2 {
  color: #fff5f8;
}

.d48-push-theme-dark
  .d48-push-lead,
.d48-push-theme-dark
  .d48-push-settings__top p {
  color: rgba(255,239,245,.59);
}

.d48-push-theme-dark
  .d48-push-secondary {
  color: rgba(255,239,245,.58);
}

.d48-push-theme-dark
  .d48-push-footnote,
.d48-push-theme-dark
  .d48-push-privacy {
  color: rgba(255,239,245,.34);
}

.d48-push-theme-dark
  .d48-push-message {
  color: rgba(255,231,240,.75);
  background: rgba(213,68,122,.10);
}

.d48-push-theme-dark
  .d48-push-ios div,
.d48-push-theme-dark
  .d48-push-device {
  border-color: rgba(255,255,255,.06);
  background: rgba(255,255,255,.04);
}

.d48-push-theme-dark
  .d48-push-ios span,
.d48-push-theme-dark
  .d48-push-device strong,
.d48-push-theme-dark
  .d48-push-type__copy strong {
  color: #fff0f5;
}

.d48-push-theme-dark
  .d48-push-device small,
.d48-push-theme-dark
  .d48-push-type__copy small {
  color: rgba(255,240,246,.45);
}

.d48-push-theme-dark
  .d48-push-device__button {
  color: #f8bed4;
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.08);
}

.d48-push-theme-dark
  .d48-push-types {
  border-color: rgba(255,255,255,.06);
}

.d48-push-theme-dark
  .d48-push-type {
  background: rgba(255,255,255,.018);
  border-bottom-color: rgba(255,255,255,.05);
}

.d48-push-theme-dark
  .d48-push-type__icon {
  background: rgba(230,96,147,.09);
}

.d48-push-theme-dark
  .d48-push-close {
  color: rgba(255,240,246,.62);
  background: rgba(255,255,255,.055);
}

.d48-push-theme-dark
  .d48-push-settings__handle {
  background: rgba(255,255,255,.13);
}


/* DATE48 CSS SOURCE 99: /assets/date48-questionnaire-v4-6-ui.css */
#date48-qv4-root{margin:16px 0}
.date48-qv4-entry{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:16px;padding:20px;border:1px solid rgba(130,130,130,.23);border-radius:19px;background:var(--date48-surface,rgba(140,140,140,.06));color:inherit;font:inherit;cursor:pointer}
.date48-qv4-entry strong{display:block;font-size:17px;font-weight:700}
.date48-qv4-entry small{display:block;margin-top:6px;opacity:.68;font-size:13px}
#date48-qv4-modal{position:fixed;inset:0;z-index:2147480000;display:flex;align-items:center;justify-content:center;color:var(--date48-text,inherit)}
.date48-qv4-shade{position:absolute;inset:0;background:rgba(12,8,15,.73);backdrop-filter:blur(8px)}
.date48-qv4-panel{position:relative;width:min(620px,100%);max-height:min(90dvh,850px);overflow:auto;background:var(--date48-card-bg,#fff);color:var(--date48-text,#211920);border-radius:24px;border:1px solid rgba(140,130,140,.22);box-shadow:0 24px 80px #0005}
.date48-qv4-head{display:flex;justify-content:space-between;gap:16px;padding:24px 24px 12px}
.date48-qv4-head span{font-size:10px;letter-spacing:.15em;opacity:.65}
.date48-qv4-head h2{font-size:25px;margin:7px 0}
.date48-qv4-head p{font-size:13px;opacity:.7;margin:0}
.date48-qv4-head button{font-size:26px;background:transparent;border:0;color:inherit;cursor:pointer}
.date48-qv4-tabs{display:flex;gap:8px;padding:12px 24px}
.date48-qv4-tabs button{flex:1;padding:11px 8px;border:1px solid rgba(130,130,130,.25);border-radius:12px;background:transparent;color:inherit;font:inherit;cursor:pointer}
.date48-qv4-tabs button[aria-pressed=true]{background:#723447;color:#fff;border-color:#723447}
.date48-qv4-progress{padding:3px 24px 12px;font-size:12px;opacity:.7}
.date48-qv4-content{padding:0 24px 20px}
.date48-qv4-group{margin:10px 0 25px}
.date48-qv4-group h3{font-size:15px;margin:10px 0}
.date48-qv4-item{margin:12px 0;padding:17px;border-radius:15px;border:1px solid rgba(130,130,130,.21);background:rgba(130,130,130,.055)}
.date48-qv4-item h4{font-size:15px;margin:0 0 12px}
.date48-qv4-item label{display:block;font-size:12px;margin:11px 0;opacity:.9}
.date48-qv4-item select,.date48-qv4-item textarea{display:block;box-sizing:border-box;width:100%;margin-top:6px;padding:11px;border-radius:10px;border:1px solid rgba(120,120,120,.35);background:var(--date48-input-bg,transparent);color:inherit;font:inherit;font-size:14px}
.date48-qv4-item select option{color:#211920;background:#fff}
.date48-qv4-item textarea{min-height:70px;resize:vertical}
.date48-qv4-check{display:flex!important;align-items:center;gap:10px}
.date48-qv4-item button{padding:10px 17px;border:0;border-radius:10px;background:#723447;color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.date48-qv4-item button:disabled{opacity:.55;cursor:wait}
.date48-qv4-number{font-size:11px;opacity:.6}
.date48-qv4-status{position:sticky;bottom:0;min-height:20px;padding:12px 24px;margin:0;background:inherit;font-size:12px}
.date48-qv4-status[data-error=true]{color:#d15c65}
.date48-qv4-loading{position:relative;background:#fff;color:#222;border-radius:16px;padding:30px}
.date48-qv4-hint{font-size:12px;opacity:.65}
@media(max-width:640px){.date48-qv4-panel{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.date48-qv4-head{padding:22px 17px 10px}.date48-qv4-tabs{padding:10px 17px}.date48-qv4-content{padding:0 17px 20px}.date48-qv4-progress{padding:3px 17px 12px}}


/* Questionnaire V4.5 — unified save */
.date48-qv4-item button[data-save-question],
.date48-qv4-item button[data-save-activity] {
  display: none !important;
}
.date48-qv4-savebar {
  position: sticky;
  bottom: 0;
  z-index: 5;
  padding: 12px 18px max(12px, env(safe-area-inset-bottom));
  background: var(--date48-card-bg, #fff);
  border-top: 1px solid rgba(130,130,130,.18);
}
.date48-qv4-savebar > button {
  display: block;
  width: 100%;
  min-height: 48px;
  border: 0;
  border-radius: 13px;
  background: #74364b;
  color: #fff;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
.date48-qv4-savebar > button:disabled {
  opacity: .55;
}
.date48-qv4-savebar .date48-qv4-status {
  position: static;
  padding: 7px 0 0;
  min-height: 0;
  font-size: 12px;
  text-align: center;
}


/* DATE48 QUESTIONNAIRE V4.6 PRIVATE EDITOR */
.date48-qv4-private {padding:6px 0 14px}
.date48-qv4-private-intro {margin-bottom:22px}
.date48-qv4-private-intro h3 {font-size:19px;margin:0 0 7px}
.date48-qv4-private-intro p,
.date48-qv4-private-block p {
  font-size:13px;opacity:.72;line-height:1.5
}
.date48-qv4-private-block {margin:18px 0 24px}
.date48-qv4-private-block h4 {
  margin:0 0 6px;font-size:16px
}
.date48-qv4-private-options,
.date48-qv4-private-constraints {
  display:grid;gap:9px;margin-top:14px
}
.date48-qv4-private-option,
.date48-qv4-private-constraint {
  display:flex;align-items:center;gap:13px;
  padding:15px;border-radius:14px;
  border:1px solid rgba(135,120,135,.24);
  background:rgba(130,110,125,.055);
  cursor:pointer
}
.date48-qv4-private-option input,
.date48-qv4-private-constraint input {
  accent-color:#86425b;flex:none;width:18px;height:18px
}
.date48-qv4-private-option strong {
  display:block;font-size:14px
}
.date48-qv4-private-option small {
  display:block;opacity:.7;font-size:12px;
  line-height:1.4;margin-top:4px
}
.date48-qv4-private-constraint span {font-size:14px}
.date48-qv4-private-option:has(input:checked),
.date48-qv4-private-constraint:has(input:checked) {
  border-color:#a45c77;background:rgba(144,65,96,.11)
}
.date48-qv4-distance {
  display:flex;align-items:center;gap:12px;
  margin:12px 0 8px
}
.date48-qv4-distance input {
  width:138px;max-width:75%;
  border:1px solid rgba(135,120,135,.35);
  border-radius:12px;padding:12px;
  background:transparent;color:inherit;
  font:inherit;font-size:16px
}
.date48-qv4-private-block>small {
  font-size:12px;opacity:.65
}
.date48-qv4-private-note {
  font-size:12px;line-height:1.5;opacity:.65;
  padding:13px 0
}


/* DATE48 CSS SOURCE 100: /assets/date48-chemistry-dark-v1-ui.css */
.date48-chem-dark-v1{
  background:
    linear-gradient(180deg,
      rgba(22,12,18,0.94) 0%,
      rgba(15,9,13,0.98) 100%) !important;
  border: 1px solid rgba(183,101,132,0.20) !important;
  box-shadow:
    0 20px 48px rgba(0,0,0,0.34),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
  backdrop-filter: blur(18px) !important;
  color: #f8edf1 !important;
}

.date48-chem-dark-v1 *{
  text-shadow: none !important;
}

.date48-chem-dark-v1__title{
  color: #fff6f9 !important;
  opacity: 1 !important;
}

.date48-chem-dark-v1__subtitle{
  color: rgba(248,237,241,0.76) !important;
  opacity: 1 !important;
}

.date48-chem-dark-v1__option{
  background:
    linear-gradient(180deg,
      rgba(94,34,57,0.96) 0%,
      rgba(56,22,36,0.98) 100%) !important;
  border: 1px solid rgba(197,113,146,0.20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.05),
    0 10px 24px rgba(0,0,0,0.24) !important;
  color: #fff5f8 !important;
}

.date48-chem-dark-v1__option *{
  color: inherit !important;
}

.date48-chem-dark-v1__cta{
  background:
    linear-gradient(180deg,
      #b24471 0%,
      #8b3158 100%) !important;
  border: 1px solid rgba(255,210,227,0.16) !important;
  color: #fff8fa !important;
  box-shadow:
    0 14px 28px rgba(83,24,48,0.34),
    inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.date48-chem-dark-v1__cta *{
  color: inherit !important;
}

.date48-chem-dark-v1__note{
  border-top: 1px solid rgba(183,101,132,0.14) !important;
  color: rgba(248,237,241,0.62) !important;
}

.date48-chem-dark-v1__note *{
  color: inherit !important;
}

.date48-chem-dark-v1__chip{
  color: rgba(255,240,246,0.90) !important;
  letter-spacing: 0.08em !important;
}

.date48-chem-dark-v1__iconwrap{
  filter: saturate(1.03) drop-shadow(0 10px 18px rgba(122,32,72,0.20));
}

@media (max-width: 640px){
  .date48-chem-dark-v1{
    box-shadow:
      0 16px 34px rgba(0,0,0,0.30),
      inset 0 1px 0 rgba(255,255,255,0.04) !important;
  }
}


/* DATE48 CSS SOURCE 101: /assets/date48-chemistry-light-v2.css */
/* DATE48 CHEMISTRY LIGHT V2 */

html[data-date48-theme="light"] .date48-chem-dark-v1 {
  background: linear-gradient(180deg,#fffdfd,#faf4f6) !important;
  border: 1px solid #e6d3db !important;
  box-shadow: 0 14px 36px rgba(91,40,59,.10) !important;
  color: #302029 !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__title {
  color: #302029 !important;
  opacity: 1 !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__subtitle {
  color: #776570 !important;
  opacity: 1 !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__option {
  background: linear-gradient(180deg,#fffafb,#f8eef2) !important;
  border: 1px solid #ead9e0 !important;
  box-shadow: 0 5px 15px rgba(104,48,71,.07) !important;
  color: #31232a !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__option * {
  color: inherit !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__chip {
  color: #934260 !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__cta {
  background: linear-gradient(180deg,#b74875,#96375f) !important;
  border: 1px solid #b96c8c !important;
  color: #ffffff !important;
  box-shadow: 0 9px 20px rgba(126,44,78,.19) !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__cta * {
  color: #ffffff !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__note {
  border-top: 1px solid #eadde2 !important;
  color: #806f77 !important;
}

html[data-date48-theme="light"] .date48-chem-dark-v1__note * {
  color: inherit !important;
}


/* DATE48 CSS SOURCE 102: /assets/date48-push-settings-v1.css */

.d48-nprefs-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  background: rgba(15, 10, 20, .56);
  display: flex;
  justify-content: center;
  align-items: flex-end;
  font-family: inherit;
}
.d48-nprefs-panel {
  box-sizing: border-box;
  width: 100%;
  max-width: 540px;
  max-height: 94dvh;
  overflow: auto;
  overscroll-behavior: contain;
  background: #fffafc;
  color: #291b26;
  border-radius: 24px 24px 0 0;
  padding: 22px 20px calc(24px + env(safe-area-inset-bottom));
  box-shadow: 0 -12px 48px rgba(0,0,0,.12);
}
.d48-nprefs-header {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 12px;
}
.d48-nprefs-header h2 {
  font-size: 22px;
  font-weight: 650;
  margin: 0;
}
.d48-nprefs-back {
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 26px;
  cursor: pointer;
}
.d48-nprefs-status {
  min-height: 20px;
  font-size: 13px;
  opacity: .7;
}
.d48-nprefs-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 17px 0;
  border-bottom: 1px solid rgba(110,75,95,.13);
}
.d48-nprefs-description {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.d48-nprefs-description strong {
  font-size: 15px;
  font-weight: 600;
}
.d48-nprefs-description small {
  font-size: 12px;
  opacity: .7;
  line-height: 1.4;
}
.d48-nprefs-switch {
  width: 22px;
  height: 22px;
  min-width: 22px;
  accent-color: #8d4967;
}
html[data-date48-theme="dark"] .d48-nprefs-panel {
  background: #241520;
  color: #f8ecf1;
}
html[data-date48-theme="dark"] .d48-nprefs-row {
  border-color: rgba(255,255,255,.12);
}


.d48-nprefs-master {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 0;
  margin: 8px 0;
  border-bottom: 1px solid rgba(110,75,95,.17);
}
html[data-date48-theme="dark"] .d48-nprefs-master {
  border-color: rgba(255,255,255,.17);
}


/* DATE48 CSS SOURCE 103: /assets/unified-moderation-v1-2.css */
/* date48_unified_moderation_ui_v1 */
.d48um {
  margin: 14px 0 20px;
  padding: 16px;
  border: 1px solid rgba(145, 113, 117, .22);
  border-radius: 20px;
  background: var(--date48-card-bg, rgba(145, 113, 117, .06));
  color: inherit;
}
.d48um__toggle {
  width: 100%;
  border: 0;
  border-radius: 14px;
  padding: 14px 16px;
  background: #762e45;
  color: #fff;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
  text-align: left;
}
.d48um__panel {
  padding-top: 18px;
}
.d48um__panel[hidden] {
  display: none !important;
}
.d48um__panel h2,
.d48um__panel h3,
.d48um__panel h4 {
  margin: 0 0 10px;
  color: inherit;
}
.d48um__muted {
  opacity: .75;
  font-size: 13px;
  line-height: 1.55;
}
.d48um__controls,
.d48um__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0;
}
.d48um__select,
.d48um__button {
  border: 1px solid rgba(145, 113, 117, .3);
  background: transparent;
  color: inherit;
  padding: 10px 12px;
  border-radius: 12px;
  font: inherit;
  cursor: pointer;
}
.d48um__select option {
  color: #202020;
  background: #fff;
}
.d48um__list {
  display: grid;
  gap: 9px;
  margin-top: 12px;
}
.d48um__case {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  text-align: left;
  padding: 13px;
  border: 1px solid rgba(145, 113, 117, .22);
  border-radius: 14px;
  background: rgba(145, 113, 117, .055);
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.d48um__case--high {
  border-left: 3px solid #b34f64;
}
.d48um__source {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.d48um__detail {
  margin-top: 16px;
}
.d48um__detail:not(:empty) {
  border-top: 1px solid rgba(145, 113, 117, .22);
  padding-top: 16px;
}
.d48um__detail p {
  margin: 7px 0;
}
.d48um__evidence,
.d48um__history {
  margin-top: 14px;
}
.d48um__danger {
  background: #8d2d44;
  color: white;
  border-color: #8d2d44;
}
.d48um button:focus-visible,
.d48um select:focus-visible,
.d48um a:focus-visible {
  outline: 2px solid #b85c73;
  outline-offset: 3px;
}
/* /date48_unified_moderation_ui_v1 */


/* DATE48 CSS SOURCE 104: /assets/date48-venue-placeholder-v2.css */

/* DATE48 VENUE PLACEHOLDER V2 */
/* Only venues without actual hero photos. */

.date48-place-detail-hero:not(.has-photo),
.date48-place-card__visual:not(.has-photo) {
    background: url("/assets/date48-venue-placeholder.png")
                center center / cover no-repeat #382b2b !important;
}

/* Disable the fake glowing circles above our image. */
.date48-place-detail-hero:not(.has-photo)::before,
.date48-place-detail-hero:not(.has-photo)::after,
.date48-place-card__visual:not(.has-photo)::before,
.date48-place-card__visual:not(.has-photo)::after {
    content: none !important;
    display: none !important;
}

/* Disable old synthetic light effects. */
.date48-place-detail-hero:not(.has-photo)
.date48-place-detail-hero__lights,
.date48-place-card__visual:not(.has-photo)
.date48-place-card__lights {
    display: none !important;
}

/* Hide only artificial empty thumbnails. */
.date48-place-detail-thumbs:not(.has-photos) {
    display: none !important;
}

/* Keep genuine photo galleries intact. */
.date48-place-detail-thumbs.has-photos {
    display: grid;
}


/* DATE48 CSS SOURCE 105: /assets/date48-chat-premium-v1-20261015.css */

/*
 Date48 Chat Premium V1
 WhatsApp-inspired usability
 Original Date48 visual identity
 Frontend-only visual layer
*/

/* THEME TOKENS */

.date48-chat-page {
  --chat-bg: #fffafc;
  --chat-text: #291722;
  --chat-muted: #907887;
  --chat-header: rgba(255,250,252,.96);
  --chat-incoming: #ffffff;
  --chat-outgoing: #f6dce7;
  --chat-border: rgba(130,54,87,.11);
  --chat-accent: #a52f60;
  --chat-shadow: 0 6px 24px rgba(89,25,55,.055);

  color: var(--chat-text);
  background: var(--chat-bg);
}

/* DARK THEME */

:is(
  html.dark,
  body.dark,
  html[data-theme="dark"],
  body[data-theme="dark"],
  html[data-date48-theme="dark"],
  body[data-date48-theme="dark"],
  html[class*="dark-wine"],
  body[class*="dark-wine"],
  html[class*="theme-dark"],
  body[class*="theme-dark"]
) .date48-chat-page {
  --chat-bg: #110c12;
  --chat-text: #fff5f9;
  --chat-muted: #bba1ae;
  --chat-header: rgba(35,19,30,.97);
  --chat-incoming: #2b2029;
  --chat-outgoing: #512035;
  --chat-border: rgba(255,195,215,.105);
  --chat-accent: #e98aad;
  --chat-shadow: 0 8px 25px rgba(0,0,0,.18);
}

/* MAIN CHAT */

.date48-chat-page {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  -webkit-font-smoothing: antialiased;
}

.date48-chat-page *,
.date48-chat-page *::before,
.date48-chat-page *::after {
  box-sizing: border-box;
}

/* HEADER */

.date48-chat-head {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 12px !important;
  border: 1px solid var(--chat-border) !important;
  border-radius: 22px !important;
  background: var(--chat-header) !important;
  box-shadow: var(--chat-shadow);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.date48-chat-head__back {
  flex: 0 0 auto;
  width: 40px !important;
  height: 40px !important;
  border-radius: 14px !important;
}

.date48-chat-person {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 9px;
  flex: 1 1 auto;
}

.date48-chat-person__avatar {
  flex-shrink: 0;
  width: 43px !important;
  height: 43px !important;
  border-radius: 50% !important;
  overflow: hidden;
}

.date48-chat-person__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.date48-chat-person__copy {
  display: flex;
  flex-direction: column;
  min-width: 0;
  text-align: left;
}

.date48-chat-person__copy strong {
  display: block;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: -.025em;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.date48-chat-person__copy small {
  display: block;
  margin-top: 3px;
  font-size: 11px !important;
  color: var(--chat-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.date48-chat-head__date {
  flex-shrink: 0;
  min-height: 36px;
  border-radius: 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* MESSAGES */

.date48-chat-thread {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 7px;
  min-width: 0;
  padding: 16px 12px 120px !important;
}

.date48-chat-message {
  position: relative;
  min-width: 0;
  max-width: min(85%, 350px) !important;
  margin: 0;
  align-self: flex-start;
}

.date48-chat-message.is-mine {
  align-self: flex-end;
  margin-left: auto;
}

.date48-chat-bubble {
  position: relative;
  min-width: 0;
  overflow-wrap: anywhere;
  background: var(--chat-incoming) !important;
  color: var(--chat-text) !important;
  border: 1px solid var(--chat-border) !important;
  border-radius: 17px 17px 17px 5px !important;
  box-shadow: var(--chat-shadow);
  padding: 10px 12px 8px !important;
}

.date48-chat-message.is-mine .date48-chat-bubble {
  background: var(--chat-outgoing) !important;
  border-radius: 17px 17px 5px 17px !important;
}

.date48-chat-bubble p {
  margin: 0;
  font-size: 14.5px !important;
  line-height: 1.43 !important;
  letter-spacing: -.008em;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.date48-chat-bubble small {
  display: block;
  margin-top: 5px;
  text-align: right;
  font-size: 10px !important;
  line-height: 1.15;
  color: var(--chat-muted) !important;
  font-variant-numeric: tabular-nums;
}

/* PHOTOS */

.date48-chat-photo-bubble {
  display: block;
  max-width: 100%;
  overflow: hidden;
  padding: 0 !important;
  border-radius: 13px !important;
  border: 0 !important;
  background: transparent;
}

.date48-chat-photo-bubble img {
  display: block;
  width: 100%;
  max-width: 100%;
  max-height: 340px;
  object-fit: cover;
  border-radius: 13px;
}

/* INTRO */

.date48-chat-intro {
  margin: 10px auto 15px;
  padding: 10px 16px;
  max-width: min(100%, 360px);
  text-align: center;
}

.date48-chat-intro strong {
  font-size: 18px;
  font-weight: 650;
  letter-spacing: -.035em;
}

.date48-chat-intro p {
  margin: 7px 0 0;
  color: var(--chat-muted);
  font-size: 12px;
  line-height: 1.5;
}

/* INPUTS WITHIN CHAT */

.date48-chat-page textarea,
.date48-chat-page input[type="text"] {
  font-family: inherit;
  font-size: 15px;
  letter-spacing: 0;
}

.date48-chat-page button {
  -webkit-tap-highlight-color: transparent;
}

.date48-chat-page button:focus-visible,
.date48-chat-page textarea:focus-visible {
  outline: 2px solid var(--chat-accent);
  outline-offset: 2px;
}

/* SMALL PHONES */

@media (max-width: 390px) {
  .date48-chat-head {
    padding: 8px 9px !important;
    gap: 6px;
  }

  .date48-chat-person__avatar {
    width: 39px !important;
    height: 39px !important;
  }

  .date48-chat-person__copy strong {
    font-size: 14px !important;
  }

  .date48-chat-message {
    max-width: 88% !important;
  }

  .date48-chat-photo-bubble img {
    max-height: 300px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .date48-chat-page *,
  .date48-chat-page *::before,
  .date48-chat-page *::after {
    scroll-behavior: auto !important;
  }
}


/* DATE48 CSS SOURCE 106: /assets/date48-chat-layout-v2-20261015.css */

/*
 Date48 Chat Premium V2
 Isolated full-screen conversation layout
*/

/* Prevent background page scrolling */

body.date48-direct-chat-open {
  overflow: hidden !important;
  overscroll-behavior: none;
}

/* Full-screen conversation */

body.date48-direct-chat-open .date48-chat-page {
  position: fixed !important;
  inset: 0 !important;

  display: block !important;

  width: 100% !important;
  max-width: none !important;

  height: 100vh !important;
  height: 100dvh !important;

  min-height: 0 !important;
  max-height: none !important;

  margin: 0 !important;

  padding:
    0
    0
    calc(150px + env(safe-area-inset-bottom, 0px))
    !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  overscroll-behavior: contain;

  -webkit-overflow-scrolling: touch;

  background: var(--chat-bg, #fffafc) !important;

  z-index: 1800 !important;

  box-sizing: border-box;
}

/* Compact sticky conversation header */

body.date48-direct-chat-open .date48-chat-head {
  position: sticky !important;

  top: 0 !important;

  z-index: 30 !important;

  width: 100% !important;

  min-height: 60px !important;

  margin: 0 !important;

  padding:
    calc(8px + env(safe-area-inset-top, 0px))
    12px
    9px
    !important;

  border-radius: 0 0 20px 20px !important;

  background: var(--chat-header, #fffafc) !important;
}

/* Messages participate in the scrollable chat */

body.date48-direct-chat-open .date48-chat-thread {
  position: relative !important;

  display: flex;
  flex-direction: column;

  width: 100% !important;
  min-height: 0 !important;

  padding: 14px 12px 18px !important;

  overflow: visible !important;
}

/* Prevent oversized message bubbles */

body.date48-direct-chat-open .date48-chat-message {
  width: fit-content !important;
  min-width: 0 !important;

  max-width: min(85%, 350px) !important;
}

body.date48-direct-chat-open
.date48-chat-message.is-mine {
  margin-left: auto !important;
}

/* Fixed composer */

body.date48-direct-chat-open
.date48-chat-composer {
  position: fixed !important;

  inset: auto 0 0 0 !important;

  bottom: 0 !important;

  width: 100% !important;
  max-width: 100% !important;

  height: auto !important;
  min-height: 0 !important;

  margin: 0 !important;

  padding:
    8px
    10px
    calc(8px + env(safe-area-inset-bottom, 0px))
    !important;

  background: var(--chat-header, #fffafc) !important;

  border-top:
    1px solid var(--chat-border, rgba(130,54,87,.11))
    !important;

  border-radius: 18px 18px 0 0 !important;

  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);

  z-index: 40 !important;
}

/* Comfortable message input */

body.date48-direct-chat-open
.date48-chat-composer__field {
  height: auto !important;
  min-height: 44px !important;
}

body.date48-direct-chat-open
.date48-chat-composer textarea {
  height: auto !important;

  min-height: 44px !important;
  max-height: 120px !important;

  resize: none;
}

/* Media fits inside conversation */

body.date48-direct-chat-open
.date48-chat-photo-bubble {
  max-width: 100% !important;
}

body.date48-direct-chat-open
.date48-chat-photo-bubble img {
  display: block;

  max-width: 100% !important;
  max-height: 320px !important;

  object-fit: cover;
}

/* Shorter displays */

@media (max-height: 720px) {
  body.date48-direct-chat-open .date48-chat-page {
    padding-bottom:
      calc(135px + env(safe-area-inset-bottom, 0px))
      !important;
  }

  body.date48-direct-chat-open
  .date48-chat-photo-bubble img {
    max-height: 260px !important;
  }
}


/* DATE48 CSS SOURCE 107: /assets/date48-chat-composer-v3-20261015.css */

/* Date48 Chat Premium V3 — composer */

body.date48-direct-chat-open
.date48-chat-composer.date48-chat-composer--v2 {
  display: grid !important;
  grid-template-columns: 38px 36px 36px minmax(0,1fr) 42px !important;
  grid-template-rows: auto !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 8px 8px calc(8px + env(safe-area-inset-bottom,0px)) !important;
  background: var(--chat-header,#fffafc) !important;
  box-shadow: 0 -8px 24px rgba(31,12,22,.055);
}

body.date48-direct-chat-open
.date48-chat-composer__attachment {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

body.date48-direct-chat-open
.date48-chat-voice-recorder {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
}

body.date48-direct-chat-open
.date48-chat-composer__circle {
  grid-column: 3 !important;
  grid-row: 1 !important;
}

body.date48-direct-chat-open
.date48-chat-composer__field {
  grid-column: 4 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  min-height: 44px !important;
  padding: 0 12px !important;
  border-radius: 23px !important;
  border: 1px solid var(--chat-border,rgba(130,54,87,.14)) !important;
  background: var(--chat-incoming,#fff) !important;
  box-shadow: none !important;
}

body.date48-direct-chat-open
.date48-chat-composer__field textarea {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  max-height: 120px !important;
  padding: 10px 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--chat-text,#291722) !important;
  font-size: 14px !important;
  line-height: 21px !important;
  resize: none !important;
}

body.date48-direct-chat-open
.date48-chat-composer__field textarea::placeholder {
  color: var(--chat-muted,#907887) !important;
  opacity: 1;
}

body.date48-direct-chat-open
.date48-chat-composer__send {
  grid-column: 5 !important;
  grid-row: 1 !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
}

body.date48-direct-chat-open
.date48-chat-composer__attachment,
body.date48-direct-chat-open
.date48-chat-composer__circle,
body.date48-direct-chat-open
.date48-chat-composer__voice {
  width: 36px !important;
  height: 36px !important;
  min-width: 0 !important;
  border-radius: 50% !important;
  -webkit-tap-highlight-color: transparent;
}

/* Attachment bottom sheet */

.date48-v3-backdrop {
  position: fixed;
  inset: 0;
  z-index: 20000;
  background: rgba(12,7,13,.48);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

.date48-v3-sheet {
  position: fixed;
  z-index: 20001;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 12px 16px calc(20px + env(safe-area-inset-bottom,0px));
  border-radius: 25px 25px 0 0;
  border-top: 1px solid var(--d48-border,rgba(130,54,87,.14));
  background: var(--d48-bg,#fffafc);
  color: var(--d48-text,#291722);
  box-shadow: 0 -15px 50px rgba(0,0,0,.18);
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.date48-v3-sheet__handle {
  width: 38px;
  height: 4px;
  border-radius: 4px;
  background: var(--d48-muted,#aa8b99);
  opacity: .5;
  margin: 0 auto 17px;
}

.date48-v3-sheet__heading {
  font-size: 18px;
  font-weight: 750;
  letter-spacing: -.035em;
  margin: 0 0 14px;
}

.date48-v3-sheet__action {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 62px;
  padding: 9px 5px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.date48-v3-sheet__action + .date48-v3-sheet__action {
  border-top: 1px solid var(--d48-border,rgba(130,54,87,.12));
}

.date48-v3-sheet__icon {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: 43px;
  height: 43px;
  border-radius: 15px;
  background: var(--d48-soft,rgba(165,47,96,.1));
  color: var(--d48-accent,#a52f60);
}

.date48-v3-sheet__icon svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.date48-v3-sheet__copy strong {
  display: block;
  font-size: 15px;
  font-weight: 650;
}

.date48-v3-sheet__copy small {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  color: var(--d48-muted,#907887);
}

.date48-v3-sheet__close {
  display: block;
  margin-top: 10px;
  width: 100%;
  height: 46px;
  border: 1px solid var(--d48-border,rgba(130,54,87,.12));
  border-radius: 15px;
  background: var(--d48-soft,rgba(165,47,96,.1));
  color: inherit;
  font-size: 14px;
  font-weight: 650;
}

@media (max-width: 350px) {
  body.date48-direct-chat-open
  .date48-chat-composer.date48-chat-composer--v2 {
    grid-template-columns: 34px 34px 34px minmax(0,1fr) 39px !important;
    gap: 3px !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}


/* DATE48 CSS SOURCE 108: /assets/date48-chat-editor-viewport-v47-20261015.css */

/*
 Date48 Chat V4.7
 Keep the inline message editor inside the mobile viewport.
 No changes to lifecycle logic or message API.
*/

body.date48-direct-chat-open .date48-chat-page {
  width: 100% !important;
  max-width: 100vw !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
  overscroll-behavior-x: none;
}

body.date48-direct-chat-open .date48-chat-thread {
  min-width: 0 !important;
  max-width: 100% !important;
}

/* Give the edited message a controlled width. */

body.date48-direct-chat-open
.date48-chat-message:has(.date48-message-life-editor) {
  box-sizing: border-box !important;
  width: min(86vw, 350px) !important;
  max-width: calc(100vw - 24px) !important;
  min-width: 0 !important;
  flex-shrink: 0 !important;
  overflow: visible !important;
}

/* The editor must not enlarge the message bubble. */

body.date48-direct-chat-open
.date48-chat-message:has(.date48-message-life-editor)
.date48-chat-bubble {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}

body.date48-direct-chat-open
.date48-message-life-editor {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  overflow-wrap: anywhere !important;
  scroll-margin-top: 85px;
  scroll-margin-bottom: 110px;
}

/* Prevent textarea's intrinsic size from expanding the chat. */

body.date48-direct-chat-open
.date48-message-life-editor__input {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 76px !important;
  height: auto !important;
  max-height: min(24dvh, 190px) !important;

  margin: 0 !important;
  padding: 10px 12px !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;
  resize: none !important;

  font-size: 16px !important;
  line-height: 1.4 !important;
  overflow-wrap: anywhere !important;
  white-space: pre-wrap !important;

  border-radius: 13px !important;
}

/* Both actions remain visible and inside the bubble. */

body.date48-direct-chat-open
.date48-message-life-editor__actions {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 9px 0 0 !important;
}

body.date48-direct-chat-open
.date48-message-life-editor__actions button {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 40px !important;
  padding: 8px 10px !important;
  white-space: nowrap !important;
  font-size: 13px !important;
}

/* Keep breathing room above the fixed composer. */

body.date48-direct-chat-open
.date48-chat-thread:has(.date48-message-life-editor) {
  padding-bottom:
    calc(165px + env(safe-area-inset-bottom,0px))
    !important;
}

@media (max-width: 350px) {
  body.date48-direct-chat-open
  .date48-chat-message:has(.date48-message-life-editor) {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
  }
}


/* DATE48 CSS SOURCE 109: /assets/date48-chat-premium-stable-v410-20261015.css */

/* Date48 V4.9b — message lifecycle polish */

/* Preserve space for the message menu */
body.date48-direct-chat-open
.date48-chat-message .date48-chat-bubble > p {
  padding-right: 36px !important;
  overflow-wrap: anywhere !important;
  box-sizing: border-box !important;
}

/* Inline editor without stacked backgrounds */
body.date48-direct-chat-open .date48-message-life-editor,
body.date48-direct-chat-open .date48-message-life-editor__actions {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  animation: none !important;
  transition: none !important;
}

body.date48-direct-chat-open .date48-message-life-editor {
  padding: 0 !important;
  margin: 8px 0 0 !important;
}

body.date48-direct-chat-open
.date48-message-life-editor__actions {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 8px !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

body.date48-direct-chat-open
.date48-message-life-editor__actions button {
  min-width: 0 !important;
  max-width: 100% !important;
  box-shadow: none !important;
  animation: none !important;
  transition: none !important;
}

/* Restrained status labels */
body.date48-direct-chat-open .date48-message-life-deleted,
body.date48-direct-chat-open .date48-message-life-meta {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
  color: var(--chat-muted,#a68b98) !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
}

body.date48-direct-chat-open
.date48-chat-bubble:has(.date48-message-life-deleted) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}


/* V4.10: stable lifecycle statuses */
html[data-date48-theme="dark"]
body.date48-direct-chat-open
.date48-chat-page
.date48-message-life-meta,
html[data-date48-theme="dark"]
body.date48-direct-chat-open
.date48-chat-page
.date48-message-life-deleted {
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
  box-shadow: none !important;
  filter: none !important;
  will-change: auto !important;
}


/* DATE48 CSS SOURCE 110: /assets/date48-chat-clean-status-v412b-20261015.css */

html[data-date48-theme="dark"] body
.date48-chat-page .date48-message-life-meta {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  color: #c7abb9 !important;
  font-size: 11px !important;
  animation: none !important;
  transition: none !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message:has(.date48-chat-bubble--deleted),
html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-bubble--deleted {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-message-life-deleted {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #bba6b0 !important;
  animation: none !important;
  transition: none !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-bubble:has(.date48-message-life-editor)
> p:not(.date48-message-life-deleted) {
  display: none !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-message-life-editor,
html[data-date48-theme="dark"] body
.date48-chat-page .date48-message-life-editor__actions {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}


/* DATE48 CSS SOURCE 111: /assets/date48-circle-review-sharp-v413b-20261015.css */

/* Date48 V4.13b: scoped video-circle review blur correction. */

.date48-circle-overlay
.date48-circle-preview-shell.is-review
> button.date48-circle-review-play {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  -webkit-filter: none !important;
  filter: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.date48-circle-overlay
.date48-circle-preview-shell.is-review
> button.date48-circle-review-play > span {
  display: grid !important;
  place-items: center !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: rgba(29,20,27,.46) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  -webkit-filter: none !important;
  filter: none !important;
}

.date48-circle-overlay
.date48-circle-preview-shell.is-review > video {
  -webkit-filter: none !important;
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  opacity: 1 !important;
}


/* DATE48 CSS SOURCE 112: /assets/date48-chat-deleted-clean-v414-20261015.css */

/*
 Date48 Chat V4.14
 Dark theme: deleted message without a wine-colored card.
 No JavaScript or functional changes.
*/

/* Clear the deleted-message row and its decorations. */
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message:has(.date48-chat-bubble--deleted),
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message:has(.date48-chat-bubble--deleted)::before,
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message:has(.date48-chat-bubble--deleted)::after {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Remove the deleted bubble's wine background. */
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message
.date48-chat-bubble.date48-chat-bubble--deleted,
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message
.date48-chat-bubble.date48-chat-bubble--deleted::before,
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-message
.date48-chat-bubble.date48-chat-bubble--deleted::after {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Keep the status text, without a separate card. */
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-message-life-deleted {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  color: rgba(224, 205, 215, .78) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;

  padding: 0 !important;
  margin: 0 !important;

  animation: none !important;
  transition: none !important;
}

/* Preserve the deletion symbol; only soften its appearance. */
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-message-life-deleted::before {
  background-color: transparent !important;
  box-shadow: none !important;
  opacity: .75 !important;
}

/* Quiet timestamp. */
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-bubble--deleted > small {
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(215, 195, 204, .52) !important;
  font-size: 10px !important;
}

/* No shimmer or transitions in the deleted state. */
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-chat-bubble--deleted,
html[data-date48-theme="dark"] body
.date48-chat-page
.date48-message-life-deleted {
  animation: none !important;
  transition: none !important;
}


/* DATE48 CSS SOURCE 113: /assets/date48-chat-emoji-six-columns-v417c-20261015.css */

/*
 Date48 V4.17c
 Restore original emoji picker.
 Six explicit columns, one composer row.
 No changes to messaging, voice, video or lifecycle.
*/

.date48-chat-page form.date48-chat-composer.date48-chat-composer--v2:not(#__date48_emoji_layout_a):not(#__date48_emoji_layout_b):not(#__date48_emoji_layout_c) {
  grid-template-columns:
    36px 36px 36px 36px minmax(0, 1fr) 42px !important;
}

.date48-chat-page form.date48-chat-composer.date48-chat-composer--v2:not(#__date48_emoji_layout_a):not(#__date48_emoji_layout_b):not(#__date48_emoji_layout_c) > button.date48-chat-composer__emoji {
  display: grid !important;
  visibility: visible !important;
  pointer-events: auto !important;
  grid-column: 4 !important;
  grid-row: 1 !important;
  width: 36px !important;
  height: 40px !important;
}

.date48-chat-page form.date48-chat-composer.date48-chat-composer--v2:not(#__date48_emoji_layout_a):not(#__date48_emoji_layout_b):not(#__date48_emoji_layout_c) > .date48-chat-composer__field {
  grid-column: 5 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
}

.date48-chat-page form.date48-chat-composer.date48-chat-composer--v2:not(#__date48_emoji_layout_a):not(#__date48_emoji_layout_b):not(#__date48_emoji_layout_c) > .date48-chat-composer__send {
  grid-column: 6 !important;
  grid-row: 1 !important;
}


/* DATE48 CSS SOURCE 114: /assets/events-v2-react-20261017.css */
/* Date48 Events V2 — isolated candidate, NOT deployed */

.date48-event-v2-card {
  box-sizing: border-box;
  width: min(calc(100% - 30px), 700px);
  margin: 0 auto;
  padding: clamp(24px, 5vw, 40px);
  border-radius: 30px;
  background: var(--date48-event-bg, #fffaf7);
  color: var(--date48-event-fg, #30262b);
  border: 1px solid var(--date48-event-border, #ebdfe1);
  box-shadow: 0 15px 38px rgb(30 15 25 / 6%);
  font-family: inherit;
}

.date48-event-v2-card__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 26px;
}

.date48-event-v2-card__eyebrow {
  font-size: 10px;
  letter-spacing: .17em;
  font-weight: 800;
  opacity: .65;
}

.date48-event-v2-card__personal {
  font-size: 11px;
  border-radius: 999px;
  padding: 7px 12px;
  background: rgb(151 57 77 / 10%);
}

.date48-event-v2-card__title {
  font-size: clamp(27px, 5vw, 39px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.14;
  margin: 0 0 24px;
  overflow-wrap: anywhere;
}

.date48-event-v2-card__meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.date48-event-v2-card__meta span {
  padding: 8px 12px;
  border-radius: 999px;
  background: rgb(145 111 121 / 10%);
  font-size: 12px;
}

.date48-event-v2-card__address {
  margin: 0 0 25px;
  opacity: .72;
  line-height: 1.55;
  font-size: 13px;
}

.date48-event-v2-card__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.date48-event-v2-card__actions button {
  appearance: none;
  cursor: pointer;
  border-radius: 15px;
  padding: 13px 19px;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
}

.date48-event-v2-card__interest {
  background: #8c304c;
  color: #fff;
  border: 1px solid #8c304c;
}

.date48-event-v2-card__dismiss {
  background: transparent;
  color: inherit;
  border: 1px solid currentColor;
  opacity: .73;
}

.date48-event-v2-card__actions button:disabled {
  opacity: .45;
  cursor: wait;
}

.date48-event-v2-card__status {
  display: block;
  font-size: 12px;
  margin-top: 9px;
}

.date48-event-v2-card__status:empty {
  display: none;
}

.date48-event-v2-card__source {
  display: inline-block;
  margin-top: 19px;
  color: inherit;
  font-size: 12px;
  text-decoration: underline;
  text-underline-offset: 4px;
}

body[data-date48-theme="dark"] .date48-event-v2-card,
html[data-date48-theme="dark"] .date48-event-v2-card,
body.dark .date48-event-v2-card,
html.dark .date48-event-v2-card {
  --date48-event-bg: #241c22;
  --date48-event-fg: #f7edf0;
  --date48-event-border: #45333d;
}

@media (max-width: 600px) {
  .date48-event-v2-card {
    border-radius: 24px;
    padding: 25px 21px;
  }

  .date48-event-v2-card__actions {
    flex-direction: column;
  }

  .date48-event-v2-card__actions button {
    width: 100%;
  }
}


/* Events V2 — React-only switch, isolated from existing filters */

.date48-events-v2-switch {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 9px;
  width: min(calc(100% - 30px), 700px);
  margin: 0 auto 18px;
  padding: 5px;
  border-radius: 17px;
  background: var(--date48-event-switch-bg, #f0e7e8);
}

.date48-events-v2-switch button {
  flex: 1 1 0;
  border: 0;
  border-radius: 13px;
  padding: 12px 15px;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  background: transparent;
  color: var(--date48-event-fg, #30262b);
  cursor: pointer;
}

.date48-events-v2-switch button.is-active {
  background: var(--date48-event-bg, #fffaf7);
  box-shadow: 0 2px 12px rgb(0 0 0 / 7%);
}

.date48-events-v2-empty,
.date48-events-v2-error {
  box-sizing: border-box;
  width: min(calc(100% - 30px), 700px);
  margin: 0 auto;
  padding: 24px;
  border-radius: 18px;
  background: var(--date48-event-bg, #fffaf7);
  color: var(--date48-event-fg, #30262b);
  text-align: center;
  font-size: 14px;
}

.date48-events-v2-error {
  color: #b44860;
}

body[data-date48-theme="dark"] .date48-events-v2-switch,
html[data-date48-theme="dark"] .date48-events-v2-switch,
body.dark .date48-events-v2-switch,
html.dark .date48-events-v2-switch {
  --date48-event-switch-bg: #352a33;
  --date48-event-bg: #241c22;
  --date48-event-fg: #f7edf0;
}

@media (max-width: 600px) {
  .date48-events-v2-switch {
    margin-bottom: 16px;
  }
}


/* DATE48 CSS SOURCE 115: /assets/events-attendance-v1.css */
/* Date48 — private event attendance V1 */
.date48-event-v2-card__actions .date48-event-v2-card__attendance {
  background: #f8edf1;
  color: #76273f;
  border: 1px solid #c991a3;
  opacity: 1;
  transition: background .18s ease, border-color .18s ease;
}
.date48-event-v2-card__actions .date48-event-v2-card__attendance[aria-pressed="true"] {
  background: #8c304c;
  color: #fff;
  border-color: #8c304c;
}
.date48-event-v2-card__actions .date48-event-v2-card__attendance:focus-visible {
  outline: 3px solid #c991a3;
  outline-offset: 3px;
}
.date48-event-v2-card__attendance-error {
  margin: 12px 0 0;
  color: #ac3851;
  font-size: 12px;
  line-height: 1.5;
}
body[data-date48-theme="dark"] .date48-event-v2-card__actions .date48-event-v2-card__attendance,
html[data-date48-theme="dark"] .date48-event-v2-card__actions .date48-event-v2-card__attendance,
body.dark .date48-event-v2-card__actions .date48-event-v2-card__attendance,
html.dark .date48-event-v2-card__actions .date48-event-v2-card__attendance {
  background: #35242e;
  color: #f7e5eb;
  border-color: #9d6176;
}
body[data-date48-theme="dark"] .date48-event-v2-card__actions .date48-event-v2-card__attendance[aria-pressed="true"],
html[data-date48-theme="dark"] .date48-event-v2-card__actions .date48-event-v2-card__attendance[aria-pressed="true"],
body.dark .date48-event-v2-card__actions .date48-event-v2-card__attendance[aria-pressed="true"],
html.dark .date48-event-v2-card__actions .date48-event-v2-card__attendance[aria-pressed="true"] {
  background: #a73f60;
  color: #fff;
  border-color: #bb6680;
}
body[data-date48-theme="dark"] .date48-event-v2-card__attendance-error,
html[data-date48-theme="dark"] .date48-event-v2-card__attendance-error,
body.dark .date48-event-v2-card__attendance-error,
html.dark .date48-event-v2-card__attendance-error {
  color: #f3a6b8;
}
@media (max-width: 600px) {
  .date48-event-v2-card__actions .date48-event-v2-card__attendance {
    width: 100%;
  }
}


/* DATE48 CSS SOURCE 116: /assets/event-company-picker-v1.css */
.d48g-picker-backdrop {
  position:fixed;inset:0;z-index:2147482000;
  display:flex;align-items:center;justify-content:center;
  background:rgba(7,5,9,.68);padding:16px;
  backdrop-filter:blur(8px);
}
.d48g-picker-panel {
  --gp-bg:#faf8fa;--gp-surface:#fff;
  --gp-text:#251f25;--gp-muted:#797078;
  width:min(100%,480px);max-height:88dvh;
  overflow:auto;box-sizing:border-box;
  padding:22px;border-radius:22px;
  background:var(--gp-bg);color:var(--gp-text);
  box-shadow:0 25px 90px #0004;
  font-family:inherit;
}
.d48g-picker-header,.d48g-picker-row {
  display:flex;align-items:center;
  justify-content:space-between;gap:12px;
}
.d48g-picker-titles h2 {font-size:23px;margin:0}
.d48g-picker-titles p,.d48g-picker-row-copy small {
  display:block;font-size:12px;opacity:.7;margin-top:6px;
}
.d48g-picker-close {
  font-size:24px;border:0;border-radius:50%;
  background:transparent;color:inherit;cursor:pointer;
}
.d48g-picker-status {min-height:18px;font-size:12px;opacity:.8}
.d48g-picker-error {color:#c74c68}
.d48g-picker-list,.d48g-picker-form {
  display:flex;flex-direction:column;gap:11px;
}
.d48g-picker-row {
  border:1px solid #98809333;border-radius:16px;
  padding:13px;background:var(--gp-surface);
}
.d48g-picker-row-copy {
  display:flex;flex:1;min-width:0;
  flex-direction:column;overflow-wrap:anywhere;
}
.d48g-picker-join,.d48g-picker-primary {
  border:0;border-radius:12px;padding:11px 13px;
  background:#934b72;color:#fff;font:inherit;
  font-size:13px;cursor:pointer;
}
.d48g-picker-primary {font-weight:700}
.d48g-picker-form {
  border-top:1px solid #98809333;
  padding-top:18px;margin-top:20px;
}
.d48g-picker-form h3 {font-size:16px;margin:0}
.d48g-picker-form label {
  display:flex;flex-direction:column;gap:7px;
  font-size:12px;
}
.d48g-picker-input {
  box-sizing:border-box;width:100%;
  padding:12px;border:1px solid #98809355;
  border-radius:12px;background:var(--gp-surface);
  color:var(--gp-text);font:inherit;
}
.d48g-picker-empty {font-size:13px;opacity:.7}
.d48g-picker-panel button:disabled {opacity:.5}
.date48-event-v2-card__company {
  border:1px solid #a3638c66;border-radius:12px;
  padding:10px 12px;background:transparent;
  color:inherit;font:inherit;font-size:12px;
  font-weight:700;cursor:pointer;
}
html[data-theme="dark"] .d48g-picker-panel,
html[data-mode="dark"] .d48g-picker-panel,
body.dark .d48g-picker-panel {
  --gp-bg:#201b21;--gp-surface:#302832;
  --gp-text:#f6edf3;--gp-muted:#c2b2c0;
}
@media(prefers-color-scheme:dark) {
  .d48g-picker-panel {
    --gp-bg:#201b21;--gp-surface:#302832;
    --gp-text:#f6edf3;--gp-muted:#c2b2c0;
  }
}
@media(max-width:520px) {
  .d48g-picker-backdrop {align-items:flex-end;padding:0}
  .d48g-picker-panel {
    width:100%;max-height:88dvh;
    border-radius:22px 22px 0 0;
    padding:20px 16px max(20px,env(safe-area-inset-bottom));
  }
}


/* DATE48 CSS SOURCE 117: /assets/event-group-chat-v1.css */
.d48g-chat {
  --d48g-bg: var(--app-bg, #faf9f7);
  --d48g-surface: var(--card-bg, #ffffff);
  --d48g-ink: var(--text-primary, #242026);
  --d48g-muted: var(--text-secondary, #77717a);
  --d48g-line: rgba(127, 117, 126, .18);
  display: flex;
  flex-direction: column;
  height: min(100dvh, 920px);
  min-height: 420px;
  background: var(--d48g-bg);
  color: var(--d48g-ink);
  font-family: inherit;
}
.d48g-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px 16px;
  border-bottom: 1px solid var(--d48g-line);
  background: var(--d48g-surface);
}
.d48g-back, .d48g-leave {
  border: 1px solid var(--d48g-line);
  border-radius: 12px;
  background: transparent;
  color: inherit;
  padding: 9px 12px;
  cursor: pointer;
}
.d48g-back { font-size: 24px; line-height: 1; }
.d48g-leave { margin-left: auto; font-size: 13px; }
.d48g-heading { min-width: 0; }
.d48g-title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  overflow-wrap: anywhere;
}
.d48g-subtitle {
  color: var(--d48g-muted);
  font-size: 12px;
  margin-top: 4px;
}
.d48g-members {
  padding: 12px 16px;
  border-bottom: 1px solid var(--d48g-line);
}
.d48g-members-label {
  font-size: 12px;
  color: var(--d48g-muted);
  margin-bottom: 8px;
}
.d48g-member-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.d48g-member {
  padding: 7px 10px;
  border-radius: 999px;
  background: var(--d48g-surface);
  border: 1px solid var(--d48g-line);
  font-size: 12px;
}
.d48g-timeline {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
}
.d48g-message {
  max-width: 87%;
  align-self: flex-start;
  background: var(--d48g-surface);
  border: 1px solid var(--d48g-line);
  border-radius: 16px;
  padding: 10px 13px;
  overflow-wrap: anywhere;
}
.d48g-system {
  max-width: 94%;
  align-self: center;
  background: transparent;
  border: 0;
  color: var(--d48g-muted);
  font-size: 12px;
  text-align: center;
}
.d48g-sender {
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 5px;
}
.d48g-body { white-space: pre-wrap; font-size: 14px; }
.d48g-time {
  display: block;
  margin-top: 6px;
  font-size: 10px;
  opacity: .65;
  text-align: right;
}
.d48g-empty {
  color: var(--d48g-muted);
  text-align: center;
  margin: auto;
}
.d48g-notice {
  padding: 0 16px;
  font-size: 12px;
}
.d48g-notice-error {
  color: #bd4055;
  padding-top: 9px;
  padding-bottom: 9px;
}
.d48g-composer {
  display: flex;
  gap: 9px;
  padding: 12px 16px;
  border-top: 1px solid var(--d48g-line);
  background: var(--d48g-surface);
}
.d48g-input {
  flex: 1;
  min-width: 0;
  border: 1px solid var(--d48g-line);
  border-radius: 14px;
  padding: 11px 12px;
  background: var(--d48g-bg);
  color: var(--d48g-ink);
  resize: none;
  font: inherit;
  font-size: 14px;
}
.d48g-send {
  border: 0;
  border-radius: 14px;
  padding: 0 16px;
  background: #8c456b;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
}
.d48g-send:disabled { opacity: .5; cursor: default; }
@media (prefers-color-scheme: dark) {
  .d48g-chat {
    --d48g-bg: var(--app-bg, #151316);
    --d48g-surface: var(--card-bg, #242025);
    --d48g-ink: var(--text-primary, #f3edf1);
    --d48g-muted: var(--text-secondary, #b6aeb4);
  }
}
@media (max-width: 540px) {
  .d48g-chat { height: 100dvh; }
  .d48g-header { padding: 12px; }
  .d48g-title { font-size: 16px; }
  .d48g-composer { padding: 10px 12px; }
  .d48g-send { padding: 0 12px; }
}


/* DATE48 CSS SOURCE 118: /assets/event-group-list-v1.css */
.d48gl-section {
  margin: 18px 0 26px;
  padding: 0 2px;
  color: inherit;
}

.d48gl-section[hidden] {
  display: none !important;
}

.d48gl-heading {
  margin: 0 0 14px;
}

.d48gl-heading h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 750;
  letter-spacing: -.025em;
}

.d48gl-heading p {
  margin: 5px 0 0;
  font-size: 12px;
  line-height: 1.5;
  opacity: .7;
}

.d48gl-list {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.d48gl-row {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  text-align: left;
  gap: 13px;
  padding: 15px;
  border: 1px solid rgba(142,116,135,.18);
  border-radius: 17px;
  background: rgba(154,122,146,.065);
  color: inherit;
  cursor: pointer;
  font: inherit;
}

.d48gl-row:focus-visible {
  outline: 2px solid #9b5b81;
  outline-offset: 3px;
}

.d48gl-symbol {
  display: grid;
  place-items: center;
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border-radius: 14px;
  background: rgba(149,77,111,.14);
  color: #b56d94;
  font-size: 22px;
}

.d48gl-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  gap: 5px;
}

.d48gl-name {
  font-size: 14px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.d48gl-subtitle {
  font-size: 12px;
  opacity: .7;
}

.d48gl-arrow {
  font-size: 24px;
  opacity: .55;
}

.d48gl-status {
  margin: 10px 0 0;
  font-size: 12px;
  opacity: .7;
}

.d48gl-status:empty {
  display: none;
}

@media (max-width: 540px) {
  .d48gl-section {
    margin: 15px 0 22px;
  }
  .d48gl-row {
    padding: 12px;
  }
}


/* DATE48 CSS SOURCE 119: /assets/event-groups-theme-fix-v6-20261019.css */
/*
 * Date48 event groups — theme compatibility.
 * Explicit app theme overrides OS color preference.
 * Loaded after the original group component styles.
 */

/* Explicit light theme */
html[data-theme="light"] .d48g-picker-panel,
body[data-theme="light"] .d48g-picker-panel,
html.light .d48g-picker-panel,
body.light .d48g-picker-panel,
html[data-theme="light"] .d48g-chat,
body[data-theme="light"] .d48g-chat,
html.light .d48g-chat,
body.light .d48g-chat {
  color-scheme: light;
  --gp-bg: #faf8fa !important;
  --gp-surface: #ffffff !important;
  --gp-text: #251f25 !important;
  --gp-muted: #797078 !important;

  --d48g-bg: #faf8fa !important;
  --d48g-surface: #ffffff !important;
  --d48g-ink: #251f25 !important;
}

/* Explicit dark theme */
html[data-theme="dark"] .d48g-picker-panel,
body[data-theme="dark"] .d48g-picker-panel,
html.dark .d48g-picker-panel,
body.dark .d48g-picker-panel,
html[data-theme="dark"] .d48g-chat,
body[data-theme="dark"] .d48g-chat,
html.dark .d48g-chat,
body.dark .d48g-chat {
  color-scheme: dark;
  --gp-bg: #201b21 !important;
  --gp-surface: #302832 !important;
  --gp-text: #f6edf3 !important;
  --gp-muted: #c2b2c0 !important;

  --d48g-bg: #201b21 !important;
  --d48g-surface: #302832 !important;
  --d48g-ink: #f6edf3 !important;
}

/* Ensure embedded form controls inherit the application theme. */
.d48g-picker-panel input,
.d48g-picker-panel select,
.d48g-picker-panel button,
.d48g-chat input,
.d48g-chat textarea,
.d48g-chat button {
  color-scheme: inherit;
}

/* Keyboard accessibility */
.d48g-picker-panel :focus-visible,
.d48g-chat :focus-visible {
  outline: 2px solid #bc739f;
  outline-offset: 2px;
}


/* Date48 actual theme attributes — override OS theme. */
:is(
  html[data-date48-theme="light"],
  body[data-date48-theme="light"],
  html[data-theme="light"],
  body[data-theme="light"],
  html.light,
  body.light,
  html.theme-light,
  body.theme-light
) .d48g-picker-panel,
:is(
  html[data-date48-theme="light"],
  body[data-date48-theme="light"],
  html[data-theme="light"],
  body[data-theme="light"],
  html.light,
  body.light,
  html.theme-light,
  body.theme-light
) .d48g-chat {
  color-scheme: light;
  --gp-bg: #faf8fa !important;
  --gp-surface: #ffffff !important;
  --gp-text: #251f25 !important;
  --gp-muted: #797078 !important;
  --d48g-bg: #faf8fa !important;
  --d48g-surface: #ffffff !important;
  --d48g-ink: #251f25 !important;
  --d48g-muted: #797078 !important;
}

:is(
  html[data-date48-theme="dark"],
  body[data-date48-theme="dark"],
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  html.dark-wine,
  body.dark-wine
) .d48g-picker-panel,
:is(
  html[data-date48-theme="dark"],
  body[data-date48-theme="dark"],
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  html.dark-wine,
  body.dark-wine
) .d48g-chat {
  color-scheme: dark;
  --gp-bg: #201b21 !important;
  --gp-surface: #302832 !important;
  --gp-text: #f6edf3 !important;
  --gp-muted: #c2b2c0 !important;
  --d48g-bg: #201b21 !important;
  --d48g-surface: #302832 !important;
  --d48g-ink: #f6edf3 !important;
  --d48g-muted: #c2b2c0 !important;
}


/* DATE48 CSS SOURCE 120: /assets/event-card-v8-4-posterfit.css */

/* Date48 Event Card V8.2 — scoped, candidate-only */

.date48-event-v8-card {
  --ev-surface: #fff;
  --ev-text: #30242d;
  --ev-muted: #806e79;
  --ev-border: #ebdfe4;
  box-sizing: border-box;
  width: min(calc(100% - 28px), 700px);
  margin: 0 auto;
  overflow: hidden;
  border-radius: 26px;
  background: var(--ev-surface);
  color: var(--ev-text);
  border: 1px solid var(--ev-border);
  box-shadow: 0 12px 32px rgb(35 16 30 / 8%);
  font-family: inherit;
}

html[data-date48-theme="dark"] .date48-event-v8-card,
body[data-date48-theme="dark"] .date48-event-v8-card,
html.dark .date48-event-v8-card,
body.dark .date48-event-v8-card {
  --ev-surface: #211a24;
  --ev-text: #f8eff4;
  --ev-muted: #bbaab5;
  --ev-border: #43313f;
}

.date48-event-v8-card__cover {
  height: clamp(280px, 81vw, 390px);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: linear-gradient(135deg,#4e3043,#211822);
  color: white;
}

.date48-event-v8-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.date48-event-v8-card__shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgb(17 6 13 / 40%) 0%,
    transparent 30%,
    rgb(17 6 13 / 10%) 48%,
    rgb(17 6 13 / 92%) 100%
  );
}

.date48-event-v8-card__top,
.date48-event-v8-card__bottom {
  position: absolute;
  left: 20px;
  right: 20px;
  z-index: 1;
}

.date48-event-v8-card__top {
  top: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.date48-event-v8-card__category {
  padding: 8px 11px;
  border-radius: 999px;
  border: 1px solid rgb(255 255 255 / 40%);
  background: rgb(255 255 255 / 16%);
  backdrop-filter: blur(12px);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .10em;
}

.date48-event-v8-card__bottom {
  bottom: 20px;
}

.date48-event-v8-card__date {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .055em;
  color: #ffc1d3;
  margin-bottom: 9px;
}

.date48-event-v8-card__title {
  margin: 0;
  font-size: clamp(25px, 7vw, 34px);
  line-height: 1.08;
  letter-spacing: -.045em;
  font-weight: 760;
  overflow-wrap: anywhere;
  text-wrap: balance;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.date48-event-v8-card__subtitle {
  margin: 7px 0 0;
  font-size: 13px;
  line-height: 1.4;
  color: #f3e5eb;
}

.date48-event-v8-card__body {
  padding: 18px 19px 15px;
}

.date48-event-v8-card__venue {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 16px;
}

.date48-event-v8-card__venue-icon {
  color: #c35c81;
  font-size: 18px;
  line-height: 1;
}

.date48-event-v8-card__company {
  appearance: none;
  border: 0;
  width: 100%;
  min-height: 52px;
  border-radius: 14px;
  background: linear-gradient(105deg,#a43a63,#772443);
  color: #fff;
  padding: 13px 17px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
}

.date48-event-v8-card__actions {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: center;
  gap: 3px;
  margin-top: 9px;
}

.date48-event-v8-card__actions button {
  appearance: none;
  border: 0;
  background: transparent;
  color: var(--ev-text);
  padding: 11px 2px;
  min-height: 44px;
  border-radius: 9px;
  font: inherit;
  font-weight: 650;
  font-size: 11px;
  cursor: pointer;
}

.date48-event-v8-card__actions button:last-child {
  color: var(--ev-muted);
}

.date48-event-v8-card button:disabled {
  cursor: wait;
  opacity: .5;
}

.date48-event-v8-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 5px;
}

.date48-event-v8-card__share {
  background: none;
  color: var(--ev-muted);
  border: 0;
  font: inherit;
  font-size: 12px;
  min-height: 44px;
  padding: 6px 0;
  cursor: pointer;
}

.date48-event-v8-card__source {
  color: var(--ev-muted);
  font-size: 11px;
  text-underline-offset: 3px;
}

.date48-event-v8-card__photo-credit {
  font-size: 10px;
  color: var(--ev-muted);
  margin-top: 4px;
}

@media(max-width:360px) {
  .date48-event-v8-card__top,
  .date48-event-v8-card__bottom {
    left: 16px;
    right: 16px;
  }
  .date48-event-v8-card__actions button {
    font-size: 10px;
  }
}

@media(prefers-reduced-motion:no-preference) {
  .date48-event-v8-card__company {
    transition: filter .18s ease, transform .18s ease;
  }
  .date48-event-v8-card__company:active {
    transform: scale(.985);
  }
}

.date48-event-v8-card button:focus-visible,
.date48-event-v8-card a:focus-visible {
  outline: 2px solid #e6a5be;
  outline-offset: 3px;
}


/* DATE48 V8.4 — full poster without cropping */
.date48-event-v8-card__cover--poster {
  height: auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: linear-gradient(135deg, #332632, #211a24);
}
.date48-event-v8-card__cover--poster
.date48-event-v8-card__image {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
  flex-shrink: 0;
}
.date48-event-v8-card__cover--poster
.date48-event-v8-card__shade {
  display: none;
}
.date48-event-v8-card__cover--poster
.date48-event-v8-card__top,
.date48-event-v8-card__cover--poster
.date48-event-v8-card__bottom {
  position: static;
  inset: auto;
  left: auto;
  right: auto;
  width: auto;
  z-index: 1;
}
.date48-event-v8-card__cover--poster
.date48-event-v8-card__top {
  padding: 15px 19px 0;
}
.date48-event-v8-card__cover--poster
.date48-event-v8-card__bottom {
  padding: 14px 19px 20px;
}
.date48-event-v8-card__cover--poster
.date48-event-v8-card__title {
  font-size: clamp(23px, 6vw, 30px);
  line-height: 1.13;
}


/* DATE48 CSS SOURCE 121: /assets/event-ticket-sources-v1-20261021.css */

/* Date48 event source links: single card, multiple sources */
.date48-event-v8-card__ticket-sources {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px 12px;
  max-width: 100%;
  min-width: 0;
}
.date48-event-v8-card__ticket-link {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  max-width: 100%;
  padding: 5px 0;
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: 11px;
}
@media (max-width: 480px) {
  .date48-event-v8-card__ticket-sources {
    justify-content: flex-start;
    flex: 1 1 100%;
  }
}


/* DATE48 CSS SOURCE 122: /assets/date48-cinema-grouping-v1.css */

.date48-cinema-group {
  margin:12px 0;
  padding:12px;
  border:1px solid rgba(135,145,160,.24);
  border-radius:14px;
  background:rgba(127,127,127,.055);
}
.date48-cinema-group__label {
  display:block;
  font-size:13px;
  font-weight:600;
}
.date48-cinema-group__select {
  box-sizing:border-box;
  display:block;
  width:100%;
  min-height:44px;
  margin-top:8px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(135,145,160,.35);
  background:rgba(127,127,127,.09);
  color:inherit;
  font:inherit;
}
.date48-cinema-group__time {
  margin:10px 0 4px;
  font-size:13px;
  font-weight:600;
}
.date48-cinema-group__notice {
  margin:4px 0 0;
  font-size:11px;
  line-height:1.45;
  opacity:.7;
}


/* DATE48 CSS SOURCE 123: /assets/date48-events-catalog-v1b.css */

.date48-event-catalog__filters{
  display:flex;
  flex-direction:column;
  gap:10px;
  width:100%;
  max-width:760px;
  margin:12px auto 18px;
  padding:14px;
  box-sizing:border-box;
  border:1px solid rgba(140,140,150,.22);
  border-radius:18px;
  background:rgba(127,127,127,.055);
}
.date48-event-catalog__row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.date48-event-catalog__filters input,
.date48-event-catalog__filters select{
  min-width:0;
  max-width:100%;
  border:1px solid rgba(135,135,140,.32);
  background:rgba(127,127,127,.10);
  color:inherit;
  border-radius:11px;
  padding:12px 13px;
  font:inherit;
  font-size:14px;
  box-sizing:border-box;
}
.date48-event-catalog__filters input[type=search]{
  width:100%;
}
.date48-event-catalog__row select{
  flex:1 1 160px;
}
.date48-event-catalog__row input[type=date]{
  flex:1 1 140px;
}
.date48-event-catalog__count{
  margin:2px 0 0;
  opacity:.68;
  font-size:13px;
}
.date48-event-catalog__more{
  display:block;
  width:min(100%,660px);
  margin:12px auto 22px;
  padding:15px;
  border:1px solid rgba(130,130,130,.28);
  border-radius:14px;
  background:rgba(125,125,125,.09);
  color:inherit;
  cursor:pointer;
  font:inherit;
  font-weight:600;
}
.date48-event-catalog__filters input:focus-visible,
.date48-event-catalog__filters select:focus-visible,
.date48-event-catalog__more:focus-visible{
  outline:2px solid #bc607d;
  outline-offset:2px;
}
@media(max-width:520px){
  .date48-event-catalog__filters{
    padding:12px;
    margin:10px 0 14px;
  }
  .date48-event-catalog__row select,
  .date48-event-catalog__row input[type=date]{
    flex:1 1 100%;
  }
}


/* DATE48 CSS SOURCE 124: /assets/date48-premium-filters-v2b-20261022.css */

/* DATE48 — PREMIUM EVENTS FILTERS V2B */

/* Prevent iOS horizontal overflow */
html,
body,
#root {
  max-width: 100%;
  min-width: 0;
}

html,
body {
  overflow-x: clip;
  -webkit-text-size-adjust: 100%;
}

.date48-real-feed,
.date48-classic-feed,
.date48-events-v2-switch,
.date48-event-catalog__filters,
.date48-event-catalog__row,
.date48-event-catalog__quickdates {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.date48-event-catalog__filters,
.date48-event-catalog__filters *,
.date48-event-catalog__filters *::before,
.date48-event-catalog__filters *::after {
  box-sizing: border-box !important;
}

.date48-event-catalog__filters {
  --ev-ink: #33232e;
  --ev-muted: #897982;
  --ev-paper: #fffdfa;
  --ev-field: #fff;
  --ev-border: rgba(120,68,92,.13);
  --ev-chip: #faf1f4;

  display: flex !important;
  flex-direction: column !important;

  width: min(100%,680px) !important;
  max-width: 100% !important;
  min-width: 0 !important;

  margin: 0 auto 16px !important;
  padding: 14px !important;
  gap: 11px !important;

  background: var(--ev-paper) !important;
  color: var(--ev-ink) !important;

  border: 1px solid var(--ev-border) !important;
  border-radius: 23px !important;

  box-shadow:
    0 12px 36px rgba(70,37,53,.045),
    0 1px 3px rgba(70,37,53,.025) !important;

  overflow: hidden;
}

/* Fields — 16px prevents automatic Safari input zoom */
.date48-event-catalog__filters input,
.date48-event-catalog__filters select {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  height: 48px !important;
  min-height: 48px !important;

  padding: 0 14px !important;
  margin: 0 !important;

  border: 1px solid var(--ev-border) !important;
  border-radius: 14px !important;

  background-color: var(--ev-field) !important;
  color: var(--ev-ink) !important;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;

  box-shadow: none !important;
  outline: none;

  -webkit-text-size-adjust: 100%;
  touch-action: manipulation;
}

.date48-event-catalog__filters input::placeholder {
  color: var(--ev-muted) !important;
  opacity: .7;
}

.date48-event-catalog__filters input:focus,
.date48-event-catalog__filters select:focus {
  border-color: rgba(157,68,105,.45) !important;
  box-shadow:
    0 0 0 3px rgba(157,68,105,.08) !important;
}

.date48-event-catalog__filters select {
  -webkit-appearance: none !important;
  appearance: none !important;

  padding-right: 39px !important;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23975475' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;

  background-position: right 12px center !important;
  background-repeat: no-repeat !important;
  background-size: 18px !important;
}

.date48-event-catalog__filters input[type=date] {
  -webkit-appearance: auto;
  appearance: auto;
  color-scheme: light;
}

/* Rows can never expand beyond the viewport */
.date48-event-catalog__row {
  display: grid !important;
  width: 100% !important;
  max-width: 100% !important;

  grid-template-columns:
    repeat(2,minmax(0,1fr)) !important;

  gap: 9px !important;
}

.date48-event-catalog__row > * {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
}

/* Quick date chips */
.date48-event-catalog__quickdates {
  display: flex !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  gap: 7px !important;
}

.date48-event-catalog__chip {
  min-width: 0 !important;
  min-height: 36px !important;

  padding: 8px 13px !important;

  border: 1px solid
    rgba(143,77,106,.13) !important;

  border-radius: 999px !important;

  background: var(--ev-chip) !important;
  color: var(--ev-ink) !important;

  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;

  box-shadow: none !important;
  cursor: pointer;
}

.date48-event-catalog__chip.is-active {
  border-color: transparent !important;

  background: linear-gradient(
    135deg,
    #a1476a,
    #893351
  ) !important;

  color: #fff !important;

  box-shadow:
    0 6px 14px rgba(137,51,81,.19) !important;
}

.date48-event-catalog__chip:focus-visible {
  outline: 2px solid #b66a89;
  outline-offset: 2px;
}

/* Smaller, quieter results label */
.date48-event-catalog__count {
  margin: 1px 0 0 !important;

  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;

  color: var(--ev-muted) !important;
  opacity: 1 !important;
}

/* Lighter segmented navigation */
.date48-events-v2-switch {
  width: min(100%,680px) !important;
  max-width: 100% !important;

  margin: 0 auto 13px !important;
  padding: 4px !important;

  border-radius: 18px !important;
  box-shadow: none !important;
}

.date48-events-v2-switch button {
  min-width: 0 !important;
  min-height: 43px !important;
  padding: 10px 8px !important;

  border-radius: 14px !important;
  font-size: 15px !important;
  font-weight: 650 !important;
}

/* Mobile */
@media(max-width:600px) {
  .date48-event-catalog__filters {
    padding: 12px !important;
    gap: 10px !important;
    border-radius: 20px !important;
  }

  .date48-event-catalog__row {
    grid-template-columns:
      minmax(0,1fr) !important;
  }

  .date48-event-catalog__chip {
    flex: 1 1 auto;
    text-align: center;
  }
}

/* Respect manually selected dark themes */
:where(
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  html.dark-mode,
  body.dark-mode,
  html[data-theme="dark"],
  body[data-theme="dark"],
  #root.dark,
  #root[data-theme="dark"]
) .date48-event-catalog__filters {
  --ev-ink: #f7edf2;
  --ev-muted: #c0abb5;
  --ev-paper: #2b202b;
  --ev-field: #372a38;
  --ev-border: rgba(242,215,226,.15);
  --ev-chip: #3b2a39;

  box-shadow:
    0 12px 32px rgba(0,0,0,.13) !important;
}

:where(
  html.dark,
  body.dark,
  html[data-theme="dark"],
  body[data-theme="dark"],
  #root.dark
) .date48-event-catalog__filters input[type=date] {
  color-scheme: dark;
}


/* DATE48 CSS SOURCE 125: /assets/date48-cinema-session-picker-v1.css */

/* DATE48 CINEMA SESSION PICKER V1 */
.date48-cinema-session-v1,
.date48-cinema-session-v1 * {
  box-sizing:border-box !important;
  min-width:0;
  max-width:100%;
}
.date48-cinema-session-v1 {
  width:100%;
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  gap:11px !important;
  padding:15px !important;
  border-radius:19px !important;
  border:1px solid rgba(133,83,105,.13) !important;
  background:rgba(130,90,113,.045) !important;
}
.date48-cinema-session-v1 .date48-cinema-group__label {
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  gap:6px !important;
  color:inherit !important;
  font-size:12px !important;
  font-weight:650 !important;
  letter-spacing:.01em;
}
.date48-cinema-session-v1 select {
  display:block;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:47px !important;
  padding:0 36px 0 13px !important;
  border-radius:13px !important;
  border:1px solid rgba(137,86,109,.18) !important;
  background:rgba(255,255,255,.10) !important;
  color:inherit !important;
  font-size:16px !important;
  font-weight:500 !important;
  box-shadow:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239b6880' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 11px center !important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.date48-cinema-session-v1 .date48-cinema-group__venue-single {
  margin:0 !important;
  padding:4px 1px !important;
  font-size:14px !important;
  font-weight:650 !important;
  opacity:.83;
}
.date48-cinema-session-v1 .date48-cinema-group__notice {
  margin:0 !important;
  font-size:12px !important;
  line-height:1.45 !important;
  opacity:.66;
}
.date48-cinema-session-v1 select:focus-visible {
  outline:2px solid #a34b70;
  outline-offset:2px;
}
@media(max-width:600px) {
  .date48-cinema-session-v1 {
    padding:12px !important;
    gap:10px !important;
  }
}


/* DATE48 CSS SOURCE 126: /assets/date48-cinema-groups-v2b.css */

/* DATE48 CINEMA GROUPS V2B */

.d48g-picker-selected-session {
  margin: 9px 0 0 !important;
  padding: 10px 12px !important;
  border-radius: 13px !important;
  border: 1px solid rgba(151,73,104,.18) !important;
  background: rgba(151,73,104,.08) !important;
  color: inherit !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
  overflow-wrap: anywhere;
}

.d48g-picker-session-time {
  display: block;
  margin-top: 5px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: inherit !important;
  opacity: .8 !important;
}

.d48g-picker-panel,
.d48g-picker-row,
.d48g-picker-row-copy,
.d48g-picker-form {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.d48g-picker-panel input,
.d48g-picker-panel select,
.d48g-picker-panel textarea {
  min-width: 0 !important;
  max-width: 100% !important;
  font-size: 16px !important;
}


/* DATE48 CSS SOURCE 127: /assets/date48-group-session-header-v1-20261022.css */

/* DATE48 GROUP SESSION HEADER V1 */

.d48g-session-banner,
.d48g-session-banner * {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.d48g-session-banner {
  display: flex;
  flex-direction: column;
  gap: 6px;

  width: auto;
  max-width: 100%;

  margin: 10px 13px 12px;
  padding: 15px 16px;

  border-radius: 19px;
  border: 1px solid rgba(155,78,112,.19);

  background:
    linear-gradient(
      135deg,
      rgba(160,74,109,.10),
      rgba(126,93,151,.045)
    );

  color: inherit;

  box-shadow:
    0 7px 24px rgba(55,26,43,.055);
}

.d48g-session-banner[hidden] {
  display: none !important;
}

.d48g-session-eyebrow {
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .075em;
  text-transform: uppercase;
  opacity: .66;
}

.d48g-session-film {
  font-size: 16px;
  font-weight: 750;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.d48g-session-datetime {
  font-size: 14px;
  font-weight: 650;
  line-height: 1.4;
  color: inherit;
}

.d48g-session-venue {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  opacity: .75;
  overflow-wrap: anywhere;
}

.d48gl-session-time {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  opacity: .72;
}

.d48g-chat,
.d48g-header,
.d48g-heading,
.d48gl-list,
.d48gl-body {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 600px) {
  .d48g-session-banner {
    margin: 9px 10px 11px;
    padding: 13px 14px;
    border-radius: 17px;
  }
}


/* DATE48 CSS SOURCE 128: /assets/date48-own-moment-controls-v2-20261023.css */

/* DATE48 — OWN MOMENTS REACT CONTROLS V2 */

.d48-own-moment-v2 {
  position: relative !important;
}

.d48-own-moment-more {
  position: absolute !important;
  top: 9px;
  right: 9px;
  z-index: 5;
  min-width: 42px;
  min-height: 38px;
  padding: 0 8px !important;
  border: 1px solid rgba(255,255,255,.3) !important;
  border-radius: 13px !important;
  background: rgba(42,27,39,.75) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 1px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  cursor: pointer;
  touch-action: manipulation;
}

.d48-own-moment-menu {
  position: absolute !important;
  top: 52px;
  right: 9px;
  z-index: 10;
  width: min(230px, calc(100% - 18px));
  padding: 6px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 16px;
  background: #332733;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
}

.d48-own-moment-menu button {
  display: block;
  width: 100%;
  padding: 12px;
  min-height: 43px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}

.d48-own-moment-menu button:active {
  background: rgba(255,255,255,.1);
}

.d48-own-moment-menu .d48-own-moment-danger {
  color: #ffb4c7;
}

.d48-own-moment-overlay,
.d48-own-moment-overlay * {
  box-sizing: border-box !important;
}

.d48-own-moment-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147480000 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 18px;
  background: rgba(19,12,20,.68);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

.d48-own-moment-dialog {
  width: min(100%, 420px);
  max-height: 85dvh;
  overflow-y: auto;
  padding: 22px;
  border-radius: 24px;
  background: #fffafd;
  color: #382633;
  box-shadow: 0 22px 70px rgba(0,0,0,.24);
}

.d48-own-moment-dialog h3 {
  margin: 0 0 8px;
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1.2;
}

.d48-own-moment-dialog p {
  margin: 0 0 13px;
  font-size: 14px;
  line-height: 1.5;
}

.d48-own-moment-dialog textarea {
  display: block;
  width: 100%;
  min-height: 110px;
  padding: 12px;
  border: 1px solid rgba(137,72,99,.3);
  border-radius: 13px;
  background: #fff;
  color: #382633;
  font-size: 16px;
  line-height: 1.5;
  resize: vertical;
}

.d48-own-moment-dialog small {
  display: block;
  margin: 6px 0 12px;
  color: #897784;
  text-align: right;
}

.d48-own-moment-dialog-actions {
  display: flex;
  gap: 10px;
}

.d48-own-moment-dialog-actions button {
  flex: 1;
  min-height: 47px;
  padding: 10px;
  border: 1px solid rgba(137,72,99,.2);
  border-radius: 13px;
  background: #f4eaf0;
  color: #743f57;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.d48-own-moment-dialog-actions button:last-child {
  background: #963e64;
  color: #fff;
}

.d48-own-moment-dialog-actions button:disabled {
  opacity: .6;
}

.d48-own-moment-error {
  padding: 8px;
  color: #c23b5b;
  font-size: 13px;
  line-height: 1.4;
}

.d48-own-moment-more:focus-visible,
.d48-own-moment-menu button:focus-visible,
.d48-own-moment-dialog button:focus-visible,
.d48-own-moment-dialog textarea:focus-visible {
  outline: 2px solid #db6694;
  outline-offset: 2px;
}

@media (prefers-color-scheme: dark) {
  .d48-own-moment-dialog {
    background: #2d2330;
    color: #f8edf3;
  }

  .d48-own-moment-dialog textarea {
    background: #3b2c3b;
    color: #fff;
    border-color: rgba(255,255,255,.19);
  }

  .d48-own-moment-dialog-actions button {
    background: #493344;
    color: #f3dfeb;
  }

  .d48-own-moment-dialog-actions button:last-child {
    background: #9e456b;
    color: #fff;
  }
}


/* DATE48 CSS SOURCE 129: /assets/date48-growth-overlay-v1-20261023.css */

.d48-growth {
  display: grid;
  gap: 16px;
  margin: 24px 0;
  color: inherit;
}

.d48-growth-card {
  box-sizing: border-box;
  padding: clamp(20px, 4vw, 28px);
  border: 1px solid rgba(130,130,145,.18);
  border-radius: 24px;
  background: rgba(130,130,145,.055);
}

.d48-growth-kicker {
  display: block;
  margin-bottom: 9px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  opacity: .55;
}

.d48-growth h2 {
  margin: 0 0 9px;
  font-size: clamp(22px, 4vw, 27px);
  line-height: 1.16;
  letter-spacing: -.035em;
}

.d48-growth p {
  margin: 0 0 18px;
  line-height: 1.5;
  opacity: .75;
}

.d48-growth-link {
  padding: 14px;
  border-radius: 14px;
  background: rgba(130,130,145,.09);
  overflow-wrap: anywhere;
  font-size: 14px;
}

.d48-growth-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 12px;
}

.d48-growth button {
  min-height: 46px;
  padding: 10px 15px;
  border: 1px solid rgba(130,130,145,.2);
  border-radius: 13px;
  background: rgba(130,130,145,.09);
  color: inherit;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}

.d48-growth .d48-growth-primary {
  border-color: transparent;
  background: linear-gradient(
    105deg,
    #aa4c62 0%,
    #913f57 100%
  );
  color: #fff;
  box-shadow: 0 8px 22px rgba(112, 40, 65, .13);
  transition: filter .18s ease, transform .18s ease;
}

.d48-growth button:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.d48-growth-counter {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
  font-size: 13px;
  opacity: .75;
}

.d48-growth-counter strong {
  font-size: 30px;
  letter-spacing: -.05em;
}

.d48-growth form,
.d48-growth label {
  display: grid;
  gap: 10px;
}

.d48-growth form {
  gap: 15px;
}

.d48-growth label {
  font-size: 13px;
  font-weight: 650;
}

.d48-growth select,
.d48-growth textarea,
.d48-growth input[type="file"] {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(130,130,145,.23);
  border-radius: 13px;
  background: rgba(130,130,145,.07);
  color: inherit;
  font: inherit;
}

.d48-growth textarea {
  resize: vertical;
}

.d48-growth-status {
  margin: 0 !important;
  font-size: 13px;
}

.d48-growth-history {
  margin-top: 22px;
}

.d48-growth-history h3 {
  font-size: 17px;
}

.d48-growth-history-item {
  padding: 12px 0;
  border-bottom: 1px solid rgba(130,130,145,.15);
  font-size: 13px;
}

.d48-growth-history-item strong {
  margin-right: 12px;
}

.d48-growth-history-item span {
  opacity: .55;
}

.d48-growth-history-item p {
  margin: 7px 0 0;
  overflow-wrap: anywhere;
}

[data-date48-theme="dark"] .d48-growth-card {
  background: rgba(255,255,255,.035);
  border-color: rgba(255,255,255,.1);
}

@media (max-width: 420px) {
  .d48-growth-buttons {
    grid-template-columns: 1fr;
  }

  .d48-growth-card {
    border-radius: 20px;
  }
}


.d48-growth-admin-list {
  display: grid;
  gap: 12px;
}

.d48-growth-admin-item {
  padding: 16px;
  border: 1px solid rgba(130,130,145,.2);
  border-radius: 16px;
  background: rgba(130,130,145,.045);
}

.d48-growth-admin-header,
.d48-growth-admin-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.d48-growth-admin-header span,
.d48-growth-admin-meta,
.d48-growth-admin-message {
  font-size: 12px;
  opacity: .65;
}

.d48-growth-admin-description {
  margin: 12px 0 !important;
  opacity: 1 !important;
  overflow-wrap: anywhere;
}

.d48-growth-admin-meta,
.d48-growth-admin-files {
  display: grid;
  gap: 6px;
  margin: 12px 0;
  overflow-wrap: anywhere;
}

.d48-growth-admin-files a {
  font-size: 13px;
  text-decoration: underline;
  color: inherit;
}

.d48-growth-admin-controls select {
  flex: 1;
  min-width: 130px;
}

.d48-growth-admin-controls button {
  padding-inline: 16px;
}

@media (max-width: 520px) {
  .d48-growth-admin-controls {
    align-items: stretch;
    flex-direction: column;
  }
}



/* Date48 premium secondary actions */
.d48-growth button:not(.d48-growth-primary) {
  background: rgba(255,255,255,.58);
  border-color: rgba(126,67,86,.17);
  color: #793c52;
  box-shadow: 0 3px 12px rgba(70,35,50,.035);
}

.d48-growth .d48-growth-primary:hover:not(:disabled) {
  filter: brightness(1.055);
}

.d48-growth button:active:not(:disabled) {
  transform: scale(.992);
}

[data-date48-theme="dark"] .d48-growth button:not(.d48-growth-primary) {
  background: rgba(255,255,255,.065);
  border-color: rgba(255,255,255,.13);
  color: #f1c4d1;
}

[data-date48-theme="dark"] .d48-growth .d48-growth-primary {
  background: linear-gradient(105deg,#a64c65,#863a55);
}


/* DATE48 CSS SOURCE 130: /assets/date48-butterfly-404-v1.css */
.d48-404 {
  --d48-bg: #0B0D12;
  --d48-fg: #F7F7F9;
  --d48-muted: #A0A3B0;
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 100svh;
  overflow: hidden;
  background: var(--d48-bg);
  color: var(--d48-fg);
  font-family: Inter, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif;
}

.d48-404-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  touch-action: none;
}

.d48-404-header {
  position: absolute;
  top: max(24px, env(safe-area-inset-top));
  left: 24px;
  right: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none;
}

.d48-404-brand {
  font-size: 25px;
  letter-spacing: -1.4px;
  font-weight: 400;
}

.d48-404-brand span { color: #518CFF; }
.d48-404-brand em {
  color: #EB5362;
  font-style: normal;
}

.d48-404-code {
  font-size: 12px;
  letter-spacing: 2px;
  color: var(--d48-muted);
}

.d48-404-copy {
  position: absolute;
  top: 17%;
  left: 7%;
  right: 7%;
  pointer-events: none;
}

.d48-404-copy h1 {
  margin: 0 0 17px;
  font-size: clamp(30px, 8vw, 54px);
  font-weight: 350;
  letter-spacing: -0.045em;
  line-height: 1.12;
}

.d48-404-copy p {
  margin: 0;
  color: var(--d48-muted);
  font-size: 15px;
  line-height: 1.6;
}

.d48-404-trigger {
  position: absolute;
  left: 50%;
  top: 57%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 57px;
  width: 260px;
  padding: 35px;
  border: 0;
  background: transparent;
  color: var(--d48-muted);
  font: inherit;
  font-size: 12px;
  cursor: pointer;
}

.d48-404-trigger-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #E4EAFB;
  box-shadow: 0 0 0 19px #518CFF11,
    0 0 30px 9px #518CFF77;
}

.d48-404-footer {
  position: absolute;
  left: 7%;
  right: 7%;
  bottom: max(26px, env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.d48-404-continue {
  display: flex;
  justify-content: center;
  gap: 15px;
  width: 100%;
  max-width: 370px;
  padding: 17px 22px;
  border: 1px solid #80869577;
  border-radius: 100px;
  background: #151922BB;
  color: var(--d48-fg);
  text-decoration: none;
  font-size: 14px;
  backdrop-filter: blur(12px);
}

.d48-404-replay {
  border: 0;
  background: transparent;
  color: var(--d48-muted);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
}

@media (prefers-color-scheme: light) {
  .d48-404 {
    --d48-bg: #F5F5F7;
    --d48-fg: #161820;
    --d48-muted: #686D7A;
  }
  .d48-404-continue {
    background: #FFFFFFCC;
    border-color: #C8CBD2;
  }
}

@media (min-width: 700px) {
  .d48-404-copy {
    top: 27%;
    left: 9%;
    right: 50%;
  }
  .d48-404-footer {
    left: 9%;
    right: auto;
    width: 310px;
  }
}


/* Original dark-art direction: isolated 404 only. */
.d48-404 {
  --d48-bg: #090B10;
  --d48-fg: #F5F6FA;
  --d48-muted: #A5AAB8;
}

.d48-404 .d48-404-continue {
  background: rgba(17, 21, 30, .88);
  border-color: rgba(145, 154, 177, .48);
  color: #F5F6FA;
}


/* DATE48 CSS SOURCE 131: /assets/date48-connectivity-v1.css */

/* Date48 Connectivity V1 — scoped, non-blocking */

#d48-connectivity {
  position: fixed;
  z-index: 2147483000;
  top: calc(env(safe-area-inset-top, 0px) + 12px);
  left: 50%;
  width: min(410px, calc(100vw - 28px));
  transform: translate(-50%, -160%);
  opacity: 0;
  pointer-events: none;
  transition:
    transform .45s cubic-bezier(.2,.8,.2,1),
    opacity .3s ease;
  font-family:
    -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif;
}

#d48-connectivity.d48-visible {
  transform: translate(-50%, 0);
  opacity: 1;
  pointer-events: auto;
}

#d48-connectivity .d48-connection-card {
  position: relative;
  overflow: hidden;
  border-radius: 21px;
  padding: 13px 15px;
  color: #faf6fa;
  background:
    linear-gradient(
      125deg,
      rgba(55,27,44,.98),
      rgba(24,26,45,.98)
    );
  border: 1px solid rgba(255,255,255,.13);
  box-shadow:
    0 16px 45px rgba(9,6,19,.28),
    inset 0 1px rgba(255,255,255,.08);
  backdrop-filter: blur(20px);
}

#d48-connectivity .d48-connection-glow {
  position: absolute;
  width: 180px;
  height: 90px;
  right: -45px;
  top: -32px;
  background:
    radial-gradient(
      ellipse,
      rgba(111,125,233,.27),
      transparent 70%
    );
  pointer-events: none;
}

#d48-connectivity .d48-connection-content {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}

#d48-connectivity .d48-connection-symbol {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  background:
    linear-gradient(
      140deg,
      rgba(219,79,110,.2),
      rgba(96,117,219,.22)
    );
}

#d48-connectivity .d48-connection-symbol svg {
  width: 22px;
  height: 22px;
  stroke: #e8a1be;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#d48-connectivity .d48-connection-copy {
  flex: 1;
  min-width: 0;
}

#d48-connectivity .d48-connection-title {
  display: block;
  margin: 0 0 3px;
  color: #fff7fb;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 650;
}

#d48-connectivity .d48-connection-description {
  display: block;
  margin: 0;
  color: #c6b8ce;
  font-size: 11px;
  line-height: 1.4;
}

#d48-connectivity .d48-connection-retry {
  flex-shrink: 0;
  padding: 8px 10px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 11px;
  background: rgba(255,255,255,.08);
  color: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
}

#d48-connectivity .d48-connection-retry:disabled {
  opacity: .55;
  cursor: default;
}

@media (prefers-reduced-motion: reduce) {
  #d48-connectivity {
    transition: none;
  }
}


/* DATE48 CSS SOURCE 132: /assets/date48-moment-viewer-v2-20261026.css */
.d48mv-profile-entry {
  appearance: none;
  border: 1px solid rgba(160, 71, 94, .32);
  background: linear-gradient(115deg, #a74e67, #874057);
  color: #fff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  border-radius: 999px;
  padding: 10px 16px;
  cursor: pointer;
  margin-inline-start: auto;
  white-space: nowrap;
  box-shadow: 0 5px 18px rgba(116, 42, 64, .16);
}
.d48mv-profile-entry:focus-visible,
.d48mv-backdrop button:focus-visible,
.d48mv-backdrop textarea:focus-visible {
  outline: 2px solid #c96787;
  outline-offset: 3px;
}
.d48mv-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  padding: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));
  background: rgba(14, 13, 24, .72);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
.d48mv-panel {
  color: #25202b;
  background: #fffafc;
  border: 1px solid rgba(137, 61, 87, .14);
  width: min(540px, 100%);
  max-height: min(90dvh, 850px);
  border-radius: 22px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 24px 85px rgba(7, 4, 15, .3);
  box-sizing: border-box;
}
.d48mv-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 17px 18px 13px;
  border-bottom: 1px solid rgba(127, 65, 86, .12);
}
.d48mv-heading { margin: 0; font-size: 17px; font-weight: 730; letter-spacing: -.015em; }
.d48mv-close {
  border: 0;
  background: rgba(117, 65, 83, .1);
  border-radius: 50%;
  width: 34px;
  height: 34px;
  color: inherit;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}
.d48mv-main {
  overflow-y: auto;
  padding: 17px 18px 20px;
  overscroll-behavior: contain;
}
.d48mv-message { opacity: .72; font-size: 14px; }
.d48mv-error, .d48mv-form-notice { color: #bb3755; }
.d48mv-list { display: grid; gap: 10px; }
.d48mv-item {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 8px;
  text-align: left;
  background: rgba(154, 92, 109, .06);
  color: inherit;
  border: 1px solid rgba(121, 63, 82, .12);
  border-radius: 15px;
  cursor: pointer;
}
.d48mv-thumbnail { object-fit: cover; width: 76px; height: 76px; border-radius: 11px; background: #3d3240; flex-shrink: 0; }
.d48mv-item-text { display: grid; gap: 6px; min-width: 0; }
.d48mv-item-text strong { font-size: 14px; overflow-wrap: anywhere; }
.d48mv-item-text span { color: #944861; font-size: 12px; }
.d48mv-full-media { width: 100%; max-height: 46dvh; border-radius: 15px; object-fit: contain; background: #15131b; }
.d48mv-no-media { display: grid; place-items: center; color: #fff; }
.d48mv-caption { overflow-wrap: anywhere; font-size: 14px; line-height: 1.5; }
.d48mv-subheading { margin: 23px 0 11px; font-size: 16px; }
.d48mv-comments { display: grid; gap: 13px; }
.d48mv-comment { display: flex; align-items: flex-start; gap: 10px; }
.d48mv-avatar { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.d48mv-avatar-placeholder { background: #bf768e; display: grid; place-items: center; color: white; font-weight: 700; }
.d48mv-comment-content { min-width: 0; flex: 1; }
.d48mv-author { font-size: 13px; }
.d48mv-comment-body { font-size: 14px; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; margin: 3px 0 1px; }
.d48mv-button { font: inherit; cursor: pointer; border-radius: 12px; border: 0; padding: 9px 15px; }
.d48mv-secondary { background: rgba(148, 72, 97, .1); color: #91445d; }
.d48mv-reply { background: none; padding: 5px 0; font-size: 12px; font-weight: 650; }
.d48mv-form { display: grid; gap: 9px; margin-top: 18px; }
.d48mv-input { box-sizing: border-box; width: 100%; min-height: 65px; resize: vertical; border: 1px solid rgba(125, 65, 90, .24); border-radius: 13px; padding: 12px; background: rgba(152, 85, 108, .06); color: inherit; font: inherit; font-size: 14px; }
.d48mv-send { justify-self: end; background: linear-gradient(110deg, #ad526c, #873d55); color: white; font-weight: 650; }
.d48mv-send:disabled { opacity: .55; cursor: wait; }
.d48mv-form-notice { min-height: 0; font-size: 12px; margin: 0; }
html[data-theme='dark'] .d48mv-panel,
body[data-theme='dark'] .d48mv-panel,
.dark .d48mv-panel,
.dark-theme .d48mv-panel {
  color: #f8eff4;
  background: #231c27;
  border-color: rgba(240, 180, 206, .18);
}
html[data-theme='dark'] .d48mv-item,
.dark .d48mv-item,
.dark-theme .d48mv-item { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .13); }
html[data-theme='dark'] .d48mv-item-text span,
.dark .d48mv-item-text span,
.dark-theme .d48mv-item-text span,
html[data-theme='dark'] .d48mv-secondary,
.dark .d48mv-secondary,
.dark-theme .d48mv-secondary { color: #f4acc4; }
@media (max-width: 600px) {
  .d48mv-backdrop { align-items: flex-end; padding: 0; }
  .d48mv-panel { width: 100%; max-height: calc(100dvh - env(safe-area-inset-top)); border-radius: 22px 22px 0 0; }
  .d48mv-main { padding-bottom: max(22px, env(safe-area-inset-bottom)); }
  .d48mv-profile-entry { margin-inline-start: 0; }
  .date48-social-library__head:has(.d48mv-profile-entry) { flex-wrap: wrap; }
}

.d48mv-reply-child {
  margin-left: min(32px, 7vw);
  border-left: 2px solid rgba(159, 78, 110, .26);
  padding-left: 12px;
}

.d48mv-focused {
  outline: 2px solid #b64d73;
  outline-offset: 3px;
  border-radius: 12px;
  scroll-margin-top: 100px;
}


/* DATE48 CSS SOURCE 133: /assets/date48-group-deeplink-v1-20261026.css */
.d48gd-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2147482800;

  display: grid;
  place-items: center;

  background: rgba(15, 12, 22, .72);

  padding: 12px;
  box-sizing: border-box;
}

.d48gd-panel {
  display: flex;
  flex-direction: column;

  width: min(620px, 100%);
  height: min(850px, calc(100dvh - 24px));

  overflow: hidden;
  box-sizing: border-box;

  background: #fffbfd;
  color: #25202a;

  border-radius: 20px;

  box-shadow:
    0 25px 80px rgba(0, 0, 0, .35);
}

.d48gd-top {
  display: flex;
  align-items: center;
  justify-content: space-between;

  min-height: 54px;

  padding: 8px 16px;

  border-bottom:
    1px solid rgba(119, 75, 95, .12);
}

.d48gd-title {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .01em;
}

.d48gd-exit {
  border: none;
  border-radius: 50%;

  width: 36px;
  height: 36px;

  background: rgba(142, 70, 99, .1);
  color: inherit;

  font: 26px/1 system-ui;
  cursor: pointer;
}

.d48gd-content {
  flex: 1;
  min-height: 0;

  overflow: auto;
  overscroll-behavior: contain;
}

.d48gd-status {
  padding: 28px 20px;

  font: 14px/1.5 system-ui;
  text-align: center;
}

.dark-theme .d48gd-panel,
html.dark .d48gd-panel,
body.dark .d48gd-panel {
  background: #231d29;
  color: #faf3f8;
}

.dark-theme .d48gd-top,
html.dark .d48gd-top,
body.dark .d48gd-top {
  border-color: rgba(255, 255, 255, .12);
}

@media (max-width: 640px) {
  .d48gd-backdrop {
    padding: 0;
  }

  .d48gd-panel {
    width: 100%;
    height: 100dvh;
    border-radius: 0;
  }
}


/* DATE48 CSS SOURCE 134: /assets/date48-official-stories-native-v9-7-1-transparent-hide.css */
/* Scoped official story viewer. Never modifies user-story presentation. */
.date48-official-launcher {
  position: relative;
  flex: 0 0 auto;
}

.date48-official-launcher__avatar {
  background: radial-gradient(circle at 30% 12%, #b96f7f, #81344c 65%, #532239);
  color: #fff;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .82);
  border: 2px solid #8b3551;
  display: grid;
  place-items: center;
}

.date48-official-launcher__avatar > span {
  color: #fff;
  font: 600 clamp(11px, 2.9vw, 15px) / 1 Georgia, "Times New Roman", serif;
  letter-spacing: -.06em;
}

.date48-official-launcher__48 {
  color: #efbdc8;
}

.date48-official-modal {
  --date48-official-bg: #fbf8f4;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  background: var(--date48-official-bg);
  color: #fff;
  isolation: isolate;
  overscroll-behavior: contain;
  padding:
    max(5px, env(safe-area-inset-top))
    8px
    max(5px, env(safe-area-inset-bottom));
}

.date48-official-modal__top {
  flex: 0 0 34px;
  width: 100%;
  max-width: 520px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  color: #fff;
  font: 500 12px/1.2 system-ui, sans-serif;
  text-shadow: 0 1px 5px rgba(0,0,0,.4);
  padding-inline: 4px;
}

.date48-official-modal__label {
  padding: 6px 10px;
  border-radius: 20px;
  background: rgba(24, 13, 23, .48);
}

.date48-official-modal__top > button {
  flex: 0 0 30px;
  height: 30px;
  font: 300 27px/1 system-ui, sans-serif;
  border: 0;
  padding: 0;
  border-radius: 50%;
  color: #fff;
  background: rgba(20, 12, 23, .38);
  cursor: pointer;
}

.date48-official-modal__artwork {
  position: relative;
  /* Keep the approved 941x1672 design undistorted, even on short phones. */
  width: min(100%, 520px, calc(56.28dvh - 50px));
  aspect-ratio: 941 / 1672;
  margin: auto;
  overflow: hidden;
  flex: 0 0 auto;
  line-height: 0;
  box-shadow: 0 15px 70px rgba(0, 0, 0, .14);
  border-radius: clamp(0px, .6vw, 8px);
  background: var(--date48-official-bg);
}

.date48-official-modal__artwork > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  user-select: none;
  pointer-events: none;
}

.date48-official-modal__artwork > button {
  position: absolute;
  z-index: 2;
  padding: 0;
  border: 0;
  color: transparent;
  background: transparent;
  cursor: pointer;
  appearance: none;
  touch-action: manipulation;
}

.date48-official-modal__artwork > button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: -3px;
}

.date48-official-modal__skip {
  top: 0;
  right: 0;
  width: 29%;
  height: 7%;
}

.date48-official-modal__previous {
  left: 0;
  top: 20%;
  bottom: 17%;
  width: 21%;
}

.date48-official-modal__next {
  right: 0;
  top: 20%;
  bottom: 17%;
  width: 21%;
}

.date48-official-modal__previous:disabled {
  cursor: default;
}

.date48-official-modal__cta {
  left: 4%;
  width: 92%;
  bottom: 2%;
  height: 9.5%;
  border-radius: 999px;
}

.date48-official-modal__tools {
  flex: 0 0 34px;
  width: 100%;
  max-width: 520px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-inline: 5px;
  color: rgba(255, 255, 255, .94);
  font: 500 12px/1.2 system-ui, sans-serif;
  text-shadow: 0 1px 4px rgba(0,0,0,.3);
}

.date48-official-modal__tools > button {
  color: inherit;
  font: inherit;
  background: rgba(20, 12, 23, .35);
  border: 1px solid rgba(255,255,255,.26);
  padding: 6px 12px;
  border-radius: 20px;
  cursor: pointer;
}

.date48-official-modal__confirm {
  position: absolute;
  inset: 0;
  z-index: 10;
  display: grid;
  place-items: center;
  background: rgba(21, 10, 22, .66);
  padding: 24px;
}

.date48-official-modal__confirm-card {
  width: min(100%, 360px);
  background: #fffaf7;
  color: #2a1e22;
  padding: 26px;
  border-radius: 23px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  font-family: system-ui, -apple-system, sans-serif;
}

.date48-official-modal__confirm-card strong {
  display: block;
  font: 600 23px/1.15 Georgia, serif;
}

.date48-official-modal__confirm-card p {
  font-size: 14px;
  line-height: 1.5;
  margin: 12px 0 20px;
}

.date48-official-modal__confirm-card > button {
  display: block;
  width: 100%;
  padding: 12px 16px;
  border: 0;
  border-radius: 13px;
  font: 600 14px system-ui, sans-serif;
  margin-top: 8px;
  cursor: pointer;
}

.date48-official-modal__confirm-card > button:first-of-type {
  background: #efe7e5;
  color: #2a1e22;
}

.date48-official-modal__confirm-card > button:last-of-type {
  background: #84364f;
  color: #fff;
}

.date48-official-modal__confirm-card > button:disabled {
  opacity: .55;
  cursor: wait;
}

.date48-official-modal__error {
  color: #9b1d36;
}

@media (min-width: 768px) {
  .date48-official-modal {
    background:
      radial-gradient(ellipse at 50% 10%, rgba(255, 255, 255, .12), transparent 60%),
      var(--date48-official-bg);
  }
}


dialog.date48-official-modal {
  box-sizing: border-box;
  width: 100vw;
  height: 100dvh;
  max-width: 100vw;
  max-height: 100dvh;
  margin: 0;
  border: 0;
  overflow: hidden;
}
dialog.date48-official-modal:not([open]) {
  display: none;
}
dialog.date48-official-modal::backdrop {
  background: rgba(14, 9, 19, .92);
}

/* Date48 immersive official stories UX V2 */

dialog.date48-official-modal {
  display: flex;
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  padding: 0 !important;
  width: 100vw;
  max-width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  overflow: hidden;
  justify-content: center;
  isolation: isolate;
}

dialog.date48-official-modal::before {
  content: "";
  position: absolute;
  inset: -40px;
  z-index: 0;
  background-image: var(--date48-official-poster);
  background-size: cover;
  background-position: center;
  filter: blur(34px) saturate(.85) brightness(.76);
  opacity: .6;
}

.date48-official-modal__artwork {
  position: relative;
  z-index: 1;
  width: min(100vw, 56.28dvh);
  max-width: none;
  aspect-ratio: 941 / 1672;
  height: auto;
  flex: 0 0 auto;
  margin: auto;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.date48-official-modal__artwork > img {
  object-fit: contain;
}

.date48-official-modal__top,
.date48-official-modal__tools {
  position: absolute;
  z-index: 5;
  box-sizing: border-box;
  width: auto;
  height: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

.date48-official-modal__top {
  top: max(12px, env(safe-area-inset-top));
  right: 12px;
  left: auto;
  justify-content: flex-end;
}

.date48-official-modal__label,
.date48-official-modal__tools > span {
  display: none;
}

.date48-official-modal__top > button,
.date48-official-modal__tools > button {
  pointer-events: auto;
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
}

.date48-official-modal__top > button {
  width: 38px;
  height: 38px;
  flex-basis: 38px;
  font-size: 28px;
  line-height: 38px;
}

.date48-official-modal__tools {
  top: max(13px, env(safe-area-inset-top));
  left: 12px;
  bottom: auto;
}

.date48-official-modal__tools > button {
  font-size: 11px;
  padding: 8px 10px;
}

/* Date48 UX V4. Preserve original artwork and CTA geometry. */
.date48-official-launcher__avatar {overflow:hidden}
.date48-official-launcher__avatar > span {display:flex;flex-direction:column;align-items:center;justify-content:center;font:600 13px/.92 Georgia,"Times New Roman",serif;letter-spacing:-.035em;white-space:nowrap}
.date48-official-launcher__avatar .date48-official-launcher__48 {display:block;font-size:13px;line-height:1.02;letter-spacing:-.025em}
dialog.date48-official-modal {background:var(--date48-official-tail,var(--date48-official-bg));align-items:flex-start;justify-content:center}
dialog.date48-official-modal::before {inset:0;background:linear-gradient(180deg,var(--date48-official-bg),var(--date48-official-tail,var(--date48-official-bg)));filter:none;opacity:1}
.date48-official-modal__artwork {width:min(100vw,56.28dvh);max-width:none;height:auto;aspect-ratio:941/1672;flex:0 0 auto;align-self:flex-start;margin:0 auto auto;border-radius:0;box-shadow:none;background:transparent}
.date48-official-modal__artwork > img {object-fit:contain}
.date48-official-modal__label,.date48-official-modal__tools > span {display:none!important}
.date48-official-modal__top {top:auto;right:max(12px,env(safe-area-inset-right));left:auto;bottom:max(12px,env(safe-area-inset-bottom))}
.date48-official-modal__tools {top:auto;left:max(12px,env(safe-area-inset-left));right:auto;bottom:max(13px,env(safe-area-inset-bottom))}
.date48-official-modal__tools > button {color:var(--date48-official-tail-ink,#fff);border:0;background:transparent;box-shadow:none;padding:10px 6px;font-size:12px;font-weight:500}
.date48-official-modal__top > button {background:rgba(32,20,28,.68);color:#fff;border:1px solid rgba(255,255,255,.2);width:38px;height:38px;flex-basis:38px}
dialog.date48-official-modal:has(img[src$="date48-guide-01.webp"]) {--date48-official-tail:#f9efde;--date48-official-tail-ink:#341d28}
dialog.date48-official-modal:has(img[src$="date48-guide-02.webp"]) {--date48-official-tail:#25202f;--date48-official-tail-ink:#ffffff}
dialog.date48-official-modal:has(img[src$="date48-guide-03.webp"]) {--date48-official-tail:#fbf2e7;--date48-official-tail-ink:#341d28}
dialog.date48-official-modal:has(img[src$="date48-guide-04.webp"]) {--date48-official-tail:#fbf8f0;--date48-official-tail-ink:#341d28}
dialog.date48-official-modal:has(img[src$="date48-guide-05.webp"]) {--date48-official-tail:#f5d7c8;--date48-official-tail-ink:#341d28}
dialog.date48-official-modal:has(img[src$="date48-guide-06.webp"]) {--date48-official-tail:#26170f;--date48-official-tail-ink:#ffffff}
dialog.date48-official-modal:has(img[src$="date48-guide-07.webp"]) {--date48-official-tail:#f2efe7;--date48-official-tail-ink:#341d28}
dialog.date48-official-modal:has(img[src$="date48-guide-08.webp"]) {--date48-official-tail:#f3ecf1;--date48-official-tail-ink:#341d28}
dialog.date48-official-modal:has(img[src$="date48-guide-09.webp"]) {--date48-official-tail:#461922;--date48-official-tail-ink:#ffffff}
dialog.date48-official-modal:has(img[src$="date48-guide-10.webp"]) {--date48-official-tail:#200f15;--date48-official-tail-ink:#ffffff}

/* Date48 V5: Story 01 only. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) {
  --date48-official-tail: #f8eddd;
  --date48-official-tail-ink: #453833;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__artwork {
  width: min(100vw, 46.258dvh);
  max-width: none;
  height: auto;
  aspect-ratio: 853 / 1844;
  align-self: center;
  margin: auto;
}

/* Original image remains available as a fallback asset. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__artwork > img {
  opacity: 0;
}

/* Display the approved new composition. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__artwork::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  background:
    center center / cover
    no-repeat
    url("/official-stories/date48-guide-01-v5.webp");
  pointer-events: none;
}

/* "Пропустить" remains the visible close control. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__top {
  display: none;
}

/* Hide-story action stays available through a discreet control. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools {
  left: 50%;
  right: auto;
  bottom: max(0px, env(safe-area-inset-bottom));
  transform: translateX(-50%);
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools > button {
  font-size: 0;
  padding: 5px 20px;
  background: transparent;
  color: #7e7169;
  border: 0;
  box-shadow: none;
  text-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  opacity: .68;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools > button::after {
  content: "···";
  font: 600 18px/1 system-ui, sans-serif;
  letter-spacing: .12em;
}

@media (max-width: 600px) and (orientation: portrait) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-01.webp"]
  ) .date48-official-modal__artwork {
    width: 100vw;
    height: 100dvh;
    aspect-ratio: auto;
    margin: 0;
    flex: 0 0 auto;
  }
}


/* DATE48 V5.1 - first official story only.
   Move hide control away from the Next CTA.
   Keep existing React click/confirmation logic. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools {
  position: fixed !important;
  top: clamp(76px, 10dvh, 96px) !important;
  left: max(14px, env(safe-area-inset-left)) !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  z-index: 5 !important;

  display: flex !important;
  flex: none !important;
  width: max-content !important;
  max-width: calc(100vw - 28px) !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;

  justify-content: flex-start !important;
  align-items: center !important;
  background: transparent !important;
  border: 0 !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: auto !important;
  min-width: 0 !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 8px 12px !important;

  color: #642c44 !important;
  background: rgba(255, 248, 241, .86) !important;
  border: 1px solid rgba(103, 48, 69, .14) !important;
  border-radius: 999px !important;
  box-shadow: 0 3px 12px rgba(54, 25, 36, .07) !important;

  font: 600 12px/1.25 system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  opacity: 1 !important;

  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools > button::after {
  content: none !important;
  display: none !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__tools > button:focus-visible {
  outline: 2px solid #8b3553 !important;
  outline-offset: 3px !important;
}


/* DATE48 V6 — SECOND OFFICIAL STORY ONLY.
   Story 01 and all other stories remain unchanged. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) {
  --date48-official-tail: #211d2b;
  --date48-official-tail-ink: #ffffff;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__artwork {
  width: min(100vw, 46.258dvh);
  max-width: none;
  height: auto;
  aspect-ratio: 853 / 1844;
  align-self: center;
  margin: auto;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__artwork > img {
  opacity: 0;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__artwork::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  background:
    center center / cover no-repeat
    url("/official-stories/date48-guide-02-v6.webp");
  pointer-events: none;
}

/* Пропустить — штатная кликабельная область.
   Отдельный крестик не показываем. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__top {
  display: none !important;
}

/* Настоящая кнопка скрытия, а не текст на изображении.
   Ниже основного CTA, без наложения. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__tools {
  position: fixed !important;
  top: auto !important;
  left: max(14px, env(safe-area-inset-left)) !important;
  right: auto !important;
  bottom: max(18px, env(safe-area-inset-bottom)) !important;
  transform: none !important;
  z-index: 5 !important;
  flex: none !important;
  display: flex !important;
  width: max-content !important;
  max-width: calc(100vw - 28px) !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: flex-start !important;
  align-items: center !important;
  background: transparent !important;
  border: 0 !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__tools > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 36px !important;
  padding: 8px 12px !important;
  margin: 0 !important;
  color: #f6e8f3 !important;
  background: rgba(255, 255, 255, .08) !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font: 600 12px/1.25 system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  opacity: 1 !important;
  text-shadow: none !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  cursor: pointer !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__tools > button::after {
  content: none !important;
  display: none !important;
}

/* Совмещаем реальную кнопку с нарисованной.
   В плакате кнопка находится примерно на 79–85%
   высоты, а не в самом низу, как у Story 01. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__cta {
  left: 4% !important;
  width: 92% !important;
  bottom: 14.6% !important;
  height: 6.2% !important;
  border-radius: 999px !important;
}

@media (max-width: 600px) and (orientation: portrait) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-02.webp"]
  ) .date48-official-modal__artwork {
    width: 100vw;
    height: 100dvh;
    aspect-ratio: auto;
    margin: 0;
    flex: 0 0 auto;
  }
}


/* DATE48 V6.1 — iPhone skip focus cleanup.
   Only official story 02, touch input only.
   Preserve keyboard focus feedback on desktop. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-02.webp"]
) .date48-official-modal__skip {
  -webkit-tap-highlight-color: transparent;
}

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-02.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-02.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}


/* DATE48 V7 — STORY 03 ONLY.
   First two stories are not modified. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) {
  --date48-official-tail: #98533b;
  --date48-official-tail-ink: #fff5ea;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__artwork {
  width: min(100vw, 46.258dvh);
  max-width: none;
  height: auto;
  aspect-ratio: 853 / 1844;
  align-self: center;
  margin: auto;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__artwork > img {
  opacity: 0;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__artwork::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  background:
    center center / cover no-repeat
    url("/official-stories/date48-guide-03-v7.webp");
  pointer-events: none;
}

/* No duplicate close button. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__top {
  display: none !important;
}

/* Align the actual Next action with the
   button printed on the artwork. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__cta {
  left: 4% !important;
  width: 92% !important;
  bottom: 16.8% !important;
  height: 5.6% !important;
  border-radius: 999px !important;
}

/* Transparent clickable area placed over the
   already printed Hide Stories label.
   No second visual label. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__tools {
  position: fixed !important;
  top: auto !important;
  right: auto !important;
  bottom: 7% !important;
  left: 4% !important;
  width: 32% !important;
  height: 4.6% !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: none !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  transform: none !important;
  z-index: 5 !important;
  background: transparent !important;
  border: 0 !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__tools > span {
  display: none !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__tools > button {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none !important;
  color: transparent !important;
  opacity: 0 !important;
  cursor: pointer !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__tools > button::after {
  display: none !important;
  content: none !important;
}

/* Eliminate the mobile focus rectangle
   around the skip hit area. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-03.webp"]
) .date48-official-modal__skip {
  -webkit-tap-highlight-color: transparent;
}

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-03.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-03.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}

@media (max-width: 600px) and (orientation: portrait) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-03.webp"]
  ) .date48-official-modal__artwork {
    width: 100vw;
    height: 100dvh;
    aspect-ratio: auto;
    margin: 0;
    flex: 0 0 auto;
  }
}


/* DATE48 V8 — STORY 04 ONLY.
   Preserve stories 01–03 and 05–10. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) {
  --date48-official-tail: #f8f3ea;
  --date48-official-tail-ink: #303b32;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__artwork {
  width: min(100vw, 46.258dvh);
  max-width: none;
  height: auto;
  aspect-ratio: 853 / 1844;
  align-self: center;
  margin: auto;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__artwork > img {
  opacity: 0;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__artwork::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  background:
    center center / cover no-repeat
    url("/official-stories/date48-guide-04-v8.webp");
  pointer-events: none;
}

/* No extra close icon. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__top {
  display: none !important;
}

/* Existing profile action.
   Align with the green printed button:
   approximately 82.8%–89.9% vertically. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__cta {
  left: 4% !important;
  width: 92% !important;
  bottom: 10.1% !important;
  height: 7.1% !important;
  border-radius: 999px !important;
}

/* Existing hide action over its printed label.
   Do not draw another label. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools {
  position: fixed !important;
  top: auto !important;
  right: auto !important;
  bottom: 3.2% !important;
  left: 4% !important;
  width: 40% !important;
  height: 5.6% !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: none !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  transform: none !important;
  z-index: 5 !important;
  background: transparent !important;
  border: 0 !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools > span {
  display: none !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools > button {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none !important;
  color: transparent !important;
  opacity: 0 !important;
  cursor: pointer !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools > button::after {
  content: none !important;
  display: none !important;
}

/* Remove tap highlight from Skip on touchscreens. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__skip {
  -webkit-tap-highlight-color: transparent;
}

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}

@media (max-width: 600px) and (orientation: portrait) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__artwork {
    width: 100vw;
    height: 100dvh;
    aspect-ratio: auto;
    margin: 0;
    flex: 0 0 auto;
  }
}


/* DATE48 V8.1 — Story 04 proportion correction.
   Preserve all existing interactions and other stories. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__artwork::after {
  background:
    center center / cover no-repeat
    url("/official-stories/date48-guide-04-v8-1-corrected.webp")
    !important;
}

/* Reposition the real profile CTA over its
   printed position on the corrected artwork. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__cta {
  left: 4% !important;
  width: 92% !important;
  bottom: 17% !important;
  height: 5.6% !important;
  border-radius: 999px !important;
}

/* Hide Stories and Skip retain their
   previously tested positions and handlers. */


/* DATE48 V8.2 — STORY04 ONLY.
   New recomposed poster, correct interaction geometry.
   All other stories remain unchanged. */

/* New artwork without portrait distortion. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__artwork::after {
  background-image:
    url("/official-stories/date48-guide-04-v8-2-recomposed.webp")
    !important;

  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Real profile button:
   printed button approximately 87.6%–93.9%. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__cta {
  top: auto !important;
  bottom: 6.1% !important;
  left: 4% !important;
  width: 92% !important;
  height: 6.1% !important;
  border-radius: 999px !important;
}

/* Real Skip button:
   align to printed top-right text.
   Remove mobile focus rectangle. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__skip {
  top: 6.6% !important;
  right: 0 !important;
  width: 29% !important;
  height: 7.4% !important;
  -webkit-tap-highlight-color: transparent;
}

/* Hide Stories:
   align with printed lower-left label.
   Avoid any overlap with the profile CTA. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools {
  top: auto !important;
  bottom: 1% !important;
  left: 4% !important;
  right: auto !important;
  width: 40% !important;
  height: 5% !important;
  z-index: 5 !important;
  transform: none !important;
}

/* Keep the already-tested invisible hit target. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools > button {
  width: 100% !important;
  height: 100% !important;
  opacity: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Suppress touch focus only, not desktop
   keyboard accessibility. */

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}


/* DATE48 V9 — clean fourth story only.
   Single complete poster. No masks or extra controls. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__artwork::after {
  background-image:
    url("/official-stories/date48-guide-04-v9-clean.webp")
    !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

/* Actual clickable profile button, aligned to poster. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__cta {
  top: 82.9% !important;
  bottom: auto !important;
  left: 4% !important;
  width: 92% !important;
  height: 5.6% !important;
  border-radius: 999px !important;
}

/* Invisible real hide button on printed footer text. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__tools {
  top: auto !important;
  bottom: 5.8% !important;
  left: 4% !important;
  right: auto !important;
  width: 40% !important;
  height: 4.8% !important;
  z-index: 5 !important;
  transform: none !important;
}

/* Skip is already printed at the upper right. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-04.webp"]
) .date48-official-modal__skip {
  top: 6.8% !important;
  right: 0 !important;
  width: 27% !important;
  height: 5.6% !important;
}

/* Shorter, wider displays need a slightly lower CTA
   because cover crops the top and bottom of the poster. */

@media (max-width: 600px)
  and (orientation: portrait)
  and (min-aspect-ratio: 48/100) {

  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__cta {
    top: 84.6% !important;
    height: 5.6% !important;
  }

  dialog.date48-official-modal:has(
    img[src$="date48-guide-04.webp"]
  ) .date48-official-modal__tools {
    bottom: 4.0% !important;
    height: 4.9% !important;
  }
}


/* DATE48 V9.1 — fifth story only.
   Remove redundant close X.
   Preserve Skip, CTA and Hide Stories. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-05.webp"]
) .date48-official-modal__top > button {
  display: none !important;
}


/* DATE48 V9.2 — skip focus fix: stories 01 and 05 only.
   No visual changes to other stories.
   Preserve keyboard accessibility on desktop. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-01.webp"]
) .date48-official-modal__skip,
dialog.date48-official-modal:has(
  img[src$="date48-guide-05.webp"]
) .date48-official-modal__skip {
  -webkit-tap-highlight-color: transparent;
}

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-01.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-01.webp"]
  ) .date48-official-modal__skip:focus-visible,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-05.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-05.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}


/* DATE48 V9.3 — STORY 06 ONLY.
   Hide redundant close X.
   Remove mobile Skip tap/focus rectangle.
   Preserve desktop keyboard focus. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-06.webp"]
) .date48-official-modal__top > button {
  display: none !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-06.webp"]
) .date48-official-modal__skip {
  -webkit-tap-highlight-color: transparent;
}

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-06.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-06.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}


/* DATE48 V9.4 — STORY 07 ONLY.
   Hide redundant close X.
   Remove mobile Skip focus rectangle.
   Preserve desktop keyboard accessibility. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-07.webp"]
) .date48-official-modal__top > button {
  display: none !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-07.webp"]
) .date48-official-modal__skip {
  -webkit-tap-highlight-color: transparent;
}

@media (hover: none) and (pointer: coarse) {
  dialog.date48-official-modal:has(
    img[src$="date48-guide-07.webp"]
  ) .date48-official-modal__skip:focus,
  dialog.date48-official-modal:has(
    img[src$="date48-guide-07.webp"]
  ) .date48-official-modal__skip:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}


/* DATE48 V9.5 — STORY 07 WHITE FOOTER ONLY.
   Keep original artwork, text and CTA.
   Remove gray/cream gradient from the
   remaining viewport below the poster. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-07.webp"]
) {
  --date48-official-tail: #ffffff !important;
  background: #ffffff !important;
}

/* DATE48 V9.5.1 - Story 07 only.
   White footer without the residual gradient.
   Preserve original artwork and controls. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-07.webp"]
)::before {
  background: #ffffff !important;
  background-image: none !important;
}

/* DATE48 V9.5.2 - Story 07 only.
   Match the cream color sampled from the poster.
   Keep all artwork and controls unchanged. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-07.webp"]
) {
  --date48-official-tail: #f2ede3 !important;
  background: #f2ede3 !important;
}

dialog.date48-official-modal:has(
  img[src$="date48-guide-07.webp"]
)::before {
  background: #f2ede3 !important;
  background-image: none !important;
}


/* DATE48 V9.6 - Stories 08, 09, 10 only.
   Hide redundant circular close X.
   Preserve all other buttons and artwork. */

dialog.date48-official-modal:has(
  img[src$="date48-guide-08.webp"]
) .date48-official-modal__top > button,

dialog.date48-official-modal:has(
  img[src$="date48-guide-09.webp"]
) .date48-official-modal__top > button,

dialog.date48-official-modal:has(
  img[src$="date48-guide-10.webp"]
) .date48-official-modal__top > button {
  display: none !important;
}

/* DATE48 V9.7 - transparent Hide Stories surface.
   All ten official stories.
   Preserve text color, positioning and click behavior.
   Do not touch poster or dialog backgrounds. */

dialog.date48-official-modal .date48-official-modal__tools,
dialog.date48-official-modal .date48-official-modal__tools > button {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

dialog.date48-official-modal .date48-official-modal__tools::before,
dialog.date48-official-modal .date48-official-modal__tools::after,
dialog.date48-official-modal .date48-official-modal__tools > button::before,
dialog.date48-official-modal .date48-official-modal__tools > button::after {
  background: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* DATE48 V9.7.1
   Override older story-specific button backgrounds.
   Keep text color, layout and click behavior. */

dialog.date48-official-modal:has(
  img[src*="date48-guide-"]
) .date48-official-modal__tools,
dialog.date48-official-modal:has(
  img[src*="date48-guide-"]
) .date48-official-modal__tools > button {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

dialog.date48-official-modal:has(
  img[src*="date48-guide-"]
) .date48-official-modal__tools::before,
dialog.date48-official-modal:has(
  img[src*="date48-guide-"]
) .date48-official-modal__tools::after,
dialog.date48-official-modal:has(
  img[src*="date48-guide-"]
) .date48-official-modal__tools > button::before,
dialog.date48-official-modal:has(
  img[src*="date48-guide-"]
) .date48-official-modal__tools > button::after {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}


/* DATE48 CSS SOURCE 135: /assets/date48-bilingual-splash-v1.css */

#date48-splash {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  background: #f8f4f2;
  color: #813b55;
  opacity: 1;
  visibility: visible;
  transition: opacity .42s ease, visibility .42s ease;
  overflow: hidden;
  padding: env(safe-area-inset-top) 16px
           env(safe-area-inset-bottom);
}

#date48-splash.d48-dark {
  background: #0b090c;
  color: #d36b90;
}

#date48-splash.d48-finished {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#date48-splash .d48-content {
  width: min(82vw, 340px);
  transform: translateY(-12px);
  text-align: center;
}

#date48-splash svg {
  width: 100%;
  height: auto;
  display: block;
  overflow: visible;
}

#date48-splash .d48-ru {
  font-family: "Snell Roundhand", "Apple Chancery",
               "Segoe Script", cursive;
  font-style: italic;
  font-size: 77px;
  fill: none;
  stroke: #b9889b;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-dasharray: 800;
  stroke-dashoffset: 800;
  animation: d48-ru 1s ease forwards;
}

#date48-splash .d48-en {
  font-family: "Snell Roundhand", "Apple Chancery",
               "Brush Script MT", cursive;
  font-style: italic;
  font-size: 98px;
  fill: none;
  stroke: #813b55;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-dasharray: 800;
  stroke-dashoffset: 800;
  animation: d48-en 1.1s ease .55s forwards;
}

#date48-splash.d48-dark .d48-ru {
  stroke: #9b526f;
}

#date48-splash.d48-dark .d48-en {
  stroke: #d36b90;
}

#date48-splash .d48-digits {
  font-family: Georgia, serif;
  font-size: 58px;
  font-weight: 400;
  fill: #b9507b;
  opacity: 0;
  animation: d48-show .3s ease 1.55s forwards;
}

#date48-splash .d48-eight {
  animation: d48-eight-hide .2s ease 1.92s forwards,
             d48-eight-back .3s ease 2.35s forwards;
}

#date48-splash .d48-infinity {
  fill: none;
  stroke: #b9507b;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-dasharray: 160;
  stroke-dashoffset: 160;
  opacity: 0;
  animation: d48-inf .45s ease 1.95s forwards,
             d48-inf-out .2s ease 2.35s forwards;
}

#date48-splash .d48-flourish {
  fill: none;
  stroke: #b9507b;
  stroke-width: 1.3;
  stroke-linecap: round;
  stroke-dasharray: 180;
  stroke-dashoffset: 180;
  animation: d48-line .55s ease 1.7s forwards;
}

#date48-splash .d48-tagline {
  margin-top: 3px;
  color: #9b7082;
  font: 500 9px/1.5 -apple-system,
        BlinkMacSystemFont, sans-serif;
  letter-spacing: .21em;
  text-transform: uppercase;
  opacity: 0;
  animation: d48-show .35s ease 2.15s forwards;
}

#date48-splash.d48-dark .d48-digits {
  fill: #e581a5;
}

#date48-splash.d48-dark .d48-infinity,
#date48-splash.d48-dark .d48-flourish {
  stroke: #e581a5;
}

#date48-splash.d48-dark .d48-tagline {
  color: #ca93aa;
}

@keyframes d48-ru {
  to { stroke-dashoffset: 0; }
}
@keyframes d48-en {
  to { stroke-dashoffset: 0; }
}
@keyframes d48-line {
  to { stroke-dashoffset: 0; }
}
@keyframes d48-show {
  to { opacity: 1; }
}
@keyframes d48-eight-hide {
  to { opacity: 0; }
}
@keyframes d48-eight-back {
  to { opacity: 1; }
}
@keyframes d48-inf {
  0% { opacity: 0; stroke-dashoffset: 160; }
  30% { opacity: 1; }
  100% { opacity: 1; stroke-dashoffset: 0; }
}
@keyframes d48-inf-out {
  to { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  #date48-splash *,
  #date48-splash {
    animation: none !important;
    transition: none !important;
  }
  #date48-splash .d48-ru,
  #date48-splash .d48-en,
  #date48-splash .d48-flourish {
    stroke-dashoffset: 0;
  }
  #date48-splash .d48-digits,
  #date48-splash .d48-tagline {
    opacity: 1;
  }
}


/* DATE48 CSS SOURCE 136: /assets/date48-dark-wine-v1-7-9-chat-plan-polish-20261001_120249.css */
/*
 * Date48 Dark Wine V1.7.9
 * Chat + Plan only.
 */


/* ============================================================
   CHAT PAGE
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page {
  background:
    #090708
    !important;
}


/* ------------------------------------------------------------
   CHAT HEADER
   ------------------------------------------------------------ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-head {
  background:
    linear-gradient(
      180deg,
      #171214,
      #120e10
    )
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.045),
    0 10px 28px
      rgba(0,0,0,.18)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-head__back {
  color:
    #f4ebed
    !important;

  background:
    #21171b
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.045)
    !important;
}


/* План ✓ */

html[data-date48-theme="dark"]
body
.date48-chat-page
button[data-d48-v179="plan-trigger"] {
  color:
    #fff2f6
    !important;

  background:
    linear-gradient(
      145deg,
      #47202c,
      #32171e
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(199,75,114,.13)
    !important;
}


/* ============================================================
   MESSAGE ROWS
   Remove the ugly full-width technical rectangles.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message,

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v179="chat-row"] {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  border-top:
    0
    !important;

  border-right:
    0
    !important;

  border-bottom:
    0
    !important;

  border-left:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* ============================================================
   OLD BRIGHT / MEETING EVENT BUBBLES
   No more white speech blocks.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v179="bright-chat-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v179="meeting-event-bubble"] {
  color:
    #f5ecef
    !important;

  background:
    linear-gradient(
      145deg,
      #351820,
      #241318
    )
    !important;

  background-color:
    #2d161d
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(199,75,114,.09),
    0 9px 24px
      rgba(0,0,0,.14)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v179="bright-chat-bubble"]
*,

html[data-date48-theme="dark"]
body
.date48-chat-page
[data-d48-v179="meeting-event-bubble"]
* {
  color:
    inherit
    !important;
}


/* Current user's ordinary bubble */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble {
  color:
    #f8eef1
    !important;

  background:
    linear-gradient(
      145deg,
      #4a1e2b,
      #30171e
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(201,77,116,.10)
    !important;
}


/* Other user's ordinary bubble */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
> .date48-chat-bubble:not(
  [data-d48-v179="meeting-event-bubble"]
) {
  color:
    #f0e8e6
    !important;

  background:
    #1a1416
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.035)
    !important;
}


/* timestamps */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
small {
  color:
    #8f8588
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   ACTIVE MEETING CARD
   Preserve composition; soften its chrome.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__card {
  background:
    radial-gradient(
      340px 160px at 0% 0%,
      rgba(197,75,114,.08),
      transparent 70%
    ),
    linear-gradient(
      145deg,
      #24151a,
      #171113
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.045),
    0 14px 34px
      rgba(0,0,0,.20)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__eyebrow {
  color:
    #d26484
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__status {
  color:
    #eadde1
    !important;

  background:
    #3a1c25
    !important;

  border:
    0
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__primary {
  color:
    #fff
    !important;

  background:
    linear-gradient(
      135deg,
      #b83d63,
      #932e4c
    )
    !important;

  border:
    0
    !important;
}


html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__quiet {
  color:
    #eee4e7
    !important;

  background:
    #29171d
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.035)
    !important;
}


/* ============================================================
   COMPOSER
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-composer,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-composer--v2 {
  background:
    linear-gradient(
      180deg,
      #181315,
      #120f10
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.045),
    0 12px 32px
      rgba(0,0,0,.20)
    !important;
}


/* ============================================================
   PLAN BOTTOM SHEET
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"] {
  color:
    #f6efec
    !important;

  background:
    radial-gradient(
      520px 230px at 80% 0%,
      rgba(197,75,114,.11),
      transparent 64%
    ),
    linear-gradient(
      180deg,
      #191315 0%,
      #0f0c0d 100%
    )
    !important;

  background-color:
    #151113
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    0 -28px 80px
      rgba(0,0,0,.56),
    inset 0 1px 0
      rgba(255,255,255,.04)
    !important;
}


/* Any inherited white/light surface inside modal */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-bright="surface"] {
  color:
    #f4ebed
    !important;

  background:
    #1a1416
    !important;

  background-color:
    #1a1416
    !important;

  background-image:
    none
    !important;

  border-color:
    rgba(255,255,255,.04)
    !important;

  box-shadow:
    none
    !important;
}


/* legacy black text leaking from light sheet */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-dark-text="1"] {
  color:
    #eee6e4
    !important;

  opacity:
    1
    !important;
}


/* eyebrow */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="eyebrow"] {
  color:
    #cb5b7d
    !important;

  opacity:
    1
    !important;
}


/* main title */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="title"] {
  color:
    #f7efec
    !important;

  opacity:
    1
    !important;
}


/* agreed text */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="agreed"] {
  color:
    #bbb0b3
    !important;

  opacity:
    1
    !important;
}


/* Done CTA */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="done"] {
  color:
    #fff
    !important;

  background:
    linear-gradient(
      135deg,
      #bd4168,
      #96304f
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    0 12px 32px
      rgba(164,43,78,.22),
    inset 0 1px 0
      rgba(255,255,255,.08)
    !important;
}


/* General typography floor in plan */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
:is(
  h1,h2,h3,h4,strong
) {
  color:
    #f6efec
    !important;

  opacity:
    1
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
:is(
  p,small,label
) {
  color:
    #b8adaf
    !important;

  opacity:
    1
    !important;
}


/* Close control */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
button[aria-label*="Закр"],

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
button[aria-label*="закр"] {
  color:
    #f2e9eb
    !important;

  background:
    #26171c
    !important;

  border:
    0
    !important;

  box-shadow:
    inset 0 0 0 1px
      rgba(255,255,255,.04)
    !important;
}


/* DATE48 CSS SOURCE 137: /assets/date48-dark-wine-v1-7-11-chat-tones-premium-plan-20261001_121930.css */
/*
 * Date48 Dark Wine V1.7.11
 * Chat tones + premium Plan.
 * Dark theme only.
 */


/* ============================================================
   1. CHAT — OTHER PERSON
   More neutral, quieter wine.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
> .date48-chat-bubble:not(.is-mine),

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v1710="meeting-bubble"] {
  color:
    #f2e9e8
    !important;

  background:
    linear-gradient(
      145deg,
      #28191d 0%,
      #1d1417 100%
    )
    !important;

  background-color:
    #22171a
    !important;

  border:
    1px solid
    rgba(255,255,255,.055)
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/* ============================================================
   2. CHAT — MY MESSAGE
   Slightly richer berry/wine.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-bubble.is-mine,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
[data-d48-v1710="meeting-bubble"] {
  color:
    #fff1f5
    !important;

  background:
    linear-gradient(
      145deg,
      #52202f 0%,
      #351822 100%
    )
    !important;

  background-color:
    #421b29
    !important;

  border:
    1px solid
    rgba(203,74,113,.16)
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.035)
    !important;
}


/* mine wins if legacy selectors compete */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
[data-d48-v179="meeting-event-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
[data-d48-v179="bright-chat-bubble"] {
  background:
    linear-gradient(
      145deg,
      #52202f 0%,
      #351822 100%
    )
    !important;

  color:
    #fff1f5
    !important;
}


/* other legacy meeting messages */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v179="meeting-event-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v179="bright-chat-bubble"] {
  background:
    linear-gradient(
      145deg,
      #28191d 0%,
      #1d1417 100%
    )
    !important;

  color:
    #f2e9e8
    !important;
}


/* timestamp quiet on both */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
small {
  color:
    #968b8e
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   3. ACTIVE MEETING CARD IN CHAT
   Richer but restrained.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__card {
  background:
    radial-gradient(
      260px 150px at 12% 0%,
      rgba(195,64,103,.10),
      transparent 72%
    ),
    linear-gradient(
      145deg,
      #24161b,
      #171113
    )
    !important;

  border:
    1px solid
    rgba(255,255,255,.055)
    !important;

  box-shadow:
    0 14px 38px
      rgba(0,0,0,.18)
    !important;
}


/* ============================================================
   4. PLAN — OUTER PREMIUM SHEET
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"] {
  color:
    #f7efec
    !important;

  background:
    radial-gradient(
      520px 260px at 78% -4%,
      rgba(196,65,104,.13),
      transparent 64%
    ),
    linear-gradient(
      180deg,
      #1b1316 0%,
      #110d0f 100%
    )
    !important;

  background-color:
    #151013
    !important;

  border:
    1px solid
    rgba(255,255,255,.055)
    !important;

  border-bottom:
    0
    !important;

  border-radius:
    34px 34px 0 0
    !important;

  outline:
    0
    !important;

  overflow:
    hidden
    !important;

  box-shadow:
    0 -26px 80px
      rgba(0,0,0,.52),
    inset 0 1px 0
      rgba(255,255,255,.035)
    !important;
}


/* remove square feeling from intermediate layers */

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"]
[data-d48-v1710-plan-layer="dark"],

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"]
[data-d48-v179="plan-sheet"] {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  border:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* ============================================================
   5. PLAN — INNER CONTENT
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"] {
  color:
    #f7efec
    !important;

  background:
    radial-gradient(
      360px 170px at 70% 0%,
      rgba(191,61,100,.08),
      transparent 70%
    )
    !important;

  border:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* eyebrow */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="eyebrow"] {
  color:
    #cf6383
    !important;

  font-size:
    12px
    !important;

  font-weight:
    800
    !important;

  letter-spacing:
    .22em
    !important;

  text-transform:
    uppercase
    !important;

  opacity:
    1
    !important;
}


/* title */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="title"] {
  color:
    #fbf4f1
    !important;

  line-height:
    1.02
    !important;

  letter-spacing:
    -.025em
    !important;

  text-shadow:
    none
    !important;
}


/* date stays accent, not neon */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
strong {
  color:
    #e16f91
    !important;
}


/* ============================================================
   6. PLAN — VENUE / NOTE SURFACES
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-bright="surface"] {
  color:
    #f4ecea
    !important;

  background:
    linear-gradient(
      145deg,
      #211719,
      #181214
    )
    !important;

  border:
    1px solid
    rgba(255,255,255,.045)
    !important;

  border-radius:
    22px
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/* venue image */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
img {
  border-radius:
    18px
    !important;
}


/* agreed status */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="agreed"] {
  color:
    #bdb2b5
    !important;

  opacity:
    1
    !important;
}


/* normal secondary copy */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
:is(
  p,
  small,
  label
) {
  color:
    #b8adaf
    !important;

  opacity:
    1
    !important;
}


/* ============================================================
   7. PLAN — DONE CTA
   No more huge rectangular pink slab.
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="done"] {
  display:
    block
    !important;

  width:
    calc(100% - 44px)
    !important;

  max-width:
    none
    !important;

  min-height:
    58px
    !important;

  margin:
    16px 22px 22px
    !important;

  padding:
    0 24px
    !important;

  color:
    #fff
    !important;

  background:
    linear-gradient(
      135deg,
      #c5486d 0%,
      #9d3152 100%
    )
    !important;

  border:
    0
    !important;

  border-radius:
    20px
    !important;

  box-shadow:
    0 12px 28px
      rgba(160,44,78,.20),
    inset 0 1px 0
      rgba(255,255,255,.10)
    !important;

  font-weight:
    800
    !important;

  letter-spacing:
    -.01em
    !important;
}


/* press state */

html[data-date48-theme="dark"]
body
[data-d48-v179="plan-sheet"]
[data-d48-v179-plan="done"]:active {
  transform:
    scale(.985)
    !important;
}


/* ============================================================
   8. PLAN — CLOSE
   ============================================================ */

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"]
button[aria-label*="Закр"],

html[data-date48-theme="dark"]
body
[data-d48-v1710="plan-shell"]
button[aria-label*="закр"] {
  color:
    #eee4e7
    !important;

  background:
    rgba(47,27,34,.92)
    !important;

  border:
    1px solid
    rgba(255,255,255,.05)
    !important;

  border-radius:
    50%
    !important;

  box-shadow:
    none
    !important;
}


/* DATE48 CSS SOURCE 138: /assets/date48-dark-wine-v1-7-12-chat-other-lighter-20261001_122651.css */
/*
 * Date48 Dark Wine V1.7.12
 * Only interlocutor messages.
 *
 * V1.7.11:
 * #28191d -> #1d1417
 *
 * V1.7.12:
 * one tone lighter, while still clearly quieter
 * than my deep-berry messages.
 */


/* ordinary interlocutor bubble */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
> .date48-chat-bubble:not(.is-mine) {
  color:
    #f5edec
    !important;

  background:
    linear-gradient(
      145deg,
      #39232a 0%,
      #291a20 100%
    )
    !important;

  background-color:
    #312027
    !important;

  border:
    1px solid
    rgba(255,255,255,.072)
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.03)
    !important;
}


/* interlocutor meeting/service bubble */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v1710="meeting-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v179="meeting-event-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v179="bright-chat-bubble"] {
  color:
    #f5edec
    !important;

  background:
    linear-gradient(
      145deg,
      #39232a 0%,
      #291a20 100%
    )
    !important;

  background-color:
    #312027
    !important;

  border:
    1px solid
    rgba(255,255,255,.072)
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.03)
    !important;
}


/* keep timestamps quiet */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
small {
  color:
    #a3979a
    !important;

  opacity:
    1
    !important;
}


/* DATE48 CSS SOURCE 139: /assets/date48-dark-wine-v1-7-13-chat-contrast-card-clean-20261001_123522.css */
/*
 * Date48 Dark Wine V1.7.13
 * CHAT ONLY.
 *
 * 1. Own / other messages are more visibly different.
 * 2. Planned meeting card gets one clean contour.
 */


/* ============================================================
   INTERLOCUTOR
   Lighter, quieter, slightly more neutral wine.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
> .date48-chat-bubble:not(.is-mine),

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v1710="meeting-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v179="meeting-event-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
[data-d48-v179="bright-chat-bubble"] {
  color:
    #f7eeee
    !important;

  background:
    linear-gradient(
      145deg,
      #4b2b34 0%,
      #352126 100%
    )
    !important;

  background-color:
    #40272e
    !important;

  border:
    1px solid
    rgba(255,255,255,.085)
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.035),
    0 8px 20px
      rgba(0,0,0,.14)
    !important;
}


/* ============================================================
   MY MESSAGES
   Clearly deeper berry.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-bubble.is-mine,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
[data-d48-v1710="meeting-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
[data-d48-v179="meeting-event-bubble"],

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
[data-d48-v179="bright-chat-bubble"] {
  color:
    #fff1f5
    !important;

  background:
    linear-gradient(
      145deg,
      #5b1d35 0%,
      #371322 100%
    )
    !important;

  background-color:
    #48172b
    !important;

  border:
    1px solid
    rgba(213,76,119,.22)
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.035),
    0 10px 24px
      rgba(18,2,10,.20)
    !important;
}


/* ============================================================
   TIMESTAMPS
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message:not(.is-mine)
small {
  color:
    #b0a4a6
    !important;
}

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message.is-mine
small {
  color:
    #9f8e94
    !important;
}


/* ============================================================
   PLANNED MEETING — REMOVE SECOND BACKPLATE / CONTOUR
   Known real wrapper.
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54 {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* Kill duplicate wrapper pseudo-layers */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54::after {
  content:
    none
    !important;

  display:
    none
    !important;

  background:
    transparent
    !important;

  border:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* ============================================================
   KEEP ONE PREMIUM CARD
   ============================================================ */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__card {
  background:
    radial-gradient(
      280px 150px at 10% 0%,
      rgba(197,72,109,.085),
      transparent 72%
    ),
    linear-gradient(
      145deg,
      #26171c 0%,
      #181113 100%
    )
    !important;

  border:
    1px solid
    rgba(197,83,118,.16)
    !important;

  outline:
    0
    !important;

  box-shadow:
    0 14px 34px
      rgba(0,0,0,.20),
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/* No second ring generated by the card itself */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__card::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-meeting-v54__card::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* DATE48 CSS SOURCE 140: /assets/date48-dark-wine-v1-7-14-chat-runtime-fix-20261001_124248.css */
/*
 * Date48 Dark Wine V1.7.14
 * Real meeting wrapper + card.
 * No .date48-chat-page ancestor:
 * component is a sibling of the page.
 */


/* actual fixed wrapper */

html[data-date48-theme="dark"]
body
[data-date48-meeting-chat-v54="1"],

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54 {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* no pseudo-shell */

html[data-date48-theme="dark"]
body
[data-date48-meeting-chat-v54="1"]::before,

html[data-date48-theme="dark"]
body
[data-date48-meeting-chat-v54="1"]::after,

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54::before,

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* exactly one visual card */

html[data-date48-theme="dark"]
body
[data-date48-meeting-chat-v54="1"]
> .date48-chat-meeting-v54__card,

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54
> .date48-chat-meeting-v54__card {
  background:
    radial-gradient(
      280px 150px at 10% 0%,
      rgba(197,72,109,.08),
      transparent 72%
    ),
    linear-gradient(
      145deg,
      #26171c 0%,
      #181113 100%
    )
    !important;

  border:
    1px solid
    rgba(197,83,118,.15)
    !important;

  outline:
    0
    !important;

  box-shadow:
    0 14px 32px
    rgba(0,0,0,.22)
    !important;

  backdrop-filter:
    none
    !important;
}


/* no card-generated second ring */

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__card::before,

html[data-date48-theme="dark"]
body
.date48-chat-meeting-v54__card::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* DATE48 CSS SOURCE 141: /assets/date48-dark-wine-v1-7-15-chat-thread-clean-20261001_124802.css */
/*
 * Date48 Dark Wine V1.7.15
 * Remove only the large background/backplate
 * behind the conversation.
 *
 * Bubble colors, geometry and layout stay intact.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;

  backdrop-filter:
    none
    !important;

  -webkit-backdrop-filter:
    none
    !important;
}


/*
 * Neutralize decorative layers only.
 * Do not hide them or alter sizing/layout.
 */

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread::before,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-thread::after {
  background:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;
}


/* DATE48 CSS SOURCE 142: /assets/date48-dark-wine-v1-7-16-profile-cleanup-20261001_125647.css */
/*
 * DATE48 DARK WINE V1.7.16
 * Profile first cleanup.
 *
 * Scope:
 * - dark theme only
 * - own account profile only
 */


/* =========================================================
   1. REMOVE TECHNICAL OUTER FRAME — PARAMETERS
   Keep inner parameter cards untouched.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-params {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;

  backdrop-filter:
    none
    !important;

  -webkit-backdrop-filter:
    none
    !important;
}


/* remove only decorative pseudo frame */

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-params::before,

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-account-params::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* =========================================================
   2. REMOVE TECHNICAL OUTER FRAME — SOCIAL CORE
   Status / moments / saved cards themselves stay untouched.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-social-core {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  border:
    0
    !important;

  outline:
    0
    !important;

  box-shadow:
    none
    !important;

  backdrop-filter:
    none
    !important;

  -webkit-backdrop-filter:
    none
    !important;
}


html[data-date48-theme="dark"]
body
.date48-account-page
.date48-social-core::before,

html[data-date48-theme="dark"]
body
.date48-account-page
.date48-social-core::after {
  content:
    none
    !important;

  display:
    none
    !important;
}


/* =========================================================
   3. CHARACTER SIGNATURE CARD
   "Не только фото. Характер тоже."
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-account-page
[data-d48-profile-character="1"],

html[data-date48-theme="dark"]
body
.date48-account-page
#date48-profile-v3-card {
  color:
    #f6efec
    !important;

  background:
    radial-gradient(
      420px 260px at 92% 0%,
      rgba(197,72,109,.12),
      transparent 70%
    ),
    linear-gradient(
      150deg,
      #1b1417 0%,
      #100c0e 100%
    )
    !important;

  background-color:
    #151013
    !important;

  border:
    1px solid
    rgba(255,255,255,.075)
    !important;

  outline:
    0
    !important;

  box-shadow:
    0 18px 42px
      rgba(0,0,0,.24),
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/* headings */

html[data-date48-theme="dark"]
body
.date48-account-page
[data-d48-profile-character="1"]
:is(h1,h2,h3,h4,strong),

html[data-date48-theme="dark"]
body
.date48-account-page
#date48-profile-v3-card
:is(h1,h2,h3,h4,strong) {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;
}


/* secondary copy */

html[data-date48-theme="dark"]
body
.date48-account-page
[data-d48-profile-character="1"]
:is(p,small),

html[data-date48-theme="dark"]
body
.date48-account-page
#date48-profile-v3-card
:is(p,small) {
  color:
    #aaa0a2
    !important;

  -webkit-text-fill-color:
    #aaa0a2
    !important;
}


/* neutralise accidental light child surfaces */

html[data-date48-theme="dark"]
body
.date48-account-page
[data-d48-profile-character="1"]
[class*="card"],

html[data-date48-theme="dark"]
body
.date48-account-page
#date48-profile-v3-card
[class*="card"] {
  border-color:
    rgba(255,255,255,.07)
    !important;
}


/* chips / facts inside the signature card */

html[data-date48-theme="dark"]
body
.date48-account-page
[data-d48-profile-character="1"]
:is(
  [class*="chip"],
  [class*="fact"],
  [class*="tag"]
),

html[data-date48-theme="dark"]
body
.date48-account-page
#date48-profile-v3-card
:is(
  [class*="chip"],
  [class*="fact"],
  [class*="tag"]
) {
  color:
    #d9cdcf
    !important;

  background:
    #21181c
    !important;

  border-color:
    rgba(255,255,255,.065)
    !important;
}


/* DATE48 CSS SOURCE 143: /assets/date48-dark-wine-v1-7-17-about-security-20261001_130636.css */
/*
 * Date48 Dark Wine V1.7.17
 *
 * Scope:
 * 1. Profile editor / onboarding
 * 2. Account + security
 *
 * Main profile remains untouched.
 */


/* =========================================================
   PROFILE EDITOR — REMOVE LIGHT CANVAS
   ========================================================= */

html[data-date48-theme="dark"]
body:has(.date48-auth-page .date48-onboarding-card) {
  background:
    radial-gradient(
      520px 300px at 82% 0%,
      rgba(197,72,109,.055),
      transparent 72%
    ),
    #090708
    !important;

  background-color:
    #090708
    !important;

  color:
    #f5efec
    !important;
}


html[data-date48-theme="dark"]
body
.date48-auth-page:has(.date48-onboarding-card) {
  background:
    radial-gradient(
      520px 300px at 82% 0%,
      rgba(197,72,109,.055),
      transparent 72%
    ),
    #090708
    !important;

  background-color:
    #090708
    !important;

  color:
    #f5efec
    !important;
}


/*
 * Old onboarding styles paint the large card/paper light.
 * Keep geometry, make the sheet coherent with dark theme.
 */

html[data-date48-theme="dark"]
body
.date48-auth-page
.date48-onboarding-card {
  background:
    linear-gradient(
      180deg,
      #120e10 0%,
      #0b090a 100%
    )
    !important;

  background-color:
    #0f0b0d
    !important;

  color:
    #f5efec
    !important;

  border-color:
    rgba(255,255,255,.065)
    !important;

  box-shadow:
    0 24px 70px
      rgba(0,0,0,.32)
    !important;
}


/* Keep the working dark form itself dark. */

html[data-date48-theme="dark"]
body
.date48-auth-page
.date48-onboarding-grid {
  background-color:
    transparent
    !important;

  color:
    #f5efec
    !important;
}


/* Labels */

html[data-date48-theme="dark"]
body
.date48-auth-page
.date48-onboarding-grid label,

html[data-date48-theme="dark"]
body
.date48-auth-page
.date48-about-field {
  color:
    #efe7e5
    !important;

  -webkit-text-fill-color:
    #efe7e5
    !important;
}


/* Inputs stay elegant, not black holes. */

html[data-date48-theme="dark"]
body
.date48-auth-page
.date48-onboarding-grid
:is(input,select,textarea),

html[data-date48-theme="dark"]
body
.date48-auth-page
.date48-about-field textarea {
  color:
    #f5efec
    !important;

  -webkit-text-fill-color:
    #f5efec
    !important;

  background:
    #171214
    !important;

  background-color:
    #171214
    !important;

  border-color:
    rgba(255,255,255,.11)
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/* =========================================================
   SECURITY — STATUS VISIBILITY
   ========================================================= */

html[data-date48-theme="dark"]
body
[data-d48-security-v1717="1"]
[data-d48-security-status="positive"] {
  color:
    #e2d6d9
    !important;

  -webkit-text-fill-color:
    #e2d6d9
    !important;

  opacity:
    1
    !important;

  font-weight:
    680
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-security-v1717="1"]
[data-d48-security-status="negative"] {
  color:
    #b8aaad
    !important;

  -webkit-text-fill-color:
    #b8aaad
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   SECURITY — REMOVE WHITE ACTION PILLS
   ========================================================= */

html[data-date48-theme="dark"]
body
[data-d48-security-v1717="1"]
[data-d48-security-action] {
  min-height:
    44px
    !important;

  color:
    #f1c5d2
    !important;

  -webkit-text-fill-color:
    #f1c5d2
    !important;

  background:
    linear-gradient(
      145deg,
      #351b24 0%,
      #241419 100%
    )
    !important;

  background-color:
    #2b171e
    !important;

  border:
    1px solid
    rgba(197,72,109,.25)
    !important;

  outline:
    0
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.035),
    0 8px 22px
      rgba(0,0,0,.13)
    !important;
}


/*
 * "Изменить" is the more constructive action,
 * so give it a little more emphasis.
 */

html[data-date48-theme="dark"]
body
[data-d48-security-v1717="1"]
[data-d48-security-action="edit"] {
  color:
    #fff1f5
    !important;

  -webkit-text-fill-color:
    #fff1f5
    !important;

  background:
    linear-gradient(
      145deg,
      #572036 0%,
      #371522 100%
    )
    !important;

  background-color:
    #47192b
    !important;

  border-color:
    rgba(213,76,119,.32)
    !important;
}


/*
 * Disconnect stays visually available,
 * but doesn't scream destructive.
 */

html[data-date48-theme="dark"]
body
[data-d48-security-v1717="1"]
[data-d48-security-action="disconnect"] {
  color:
    #dcaabd
    !important;

  -webkit-text-fill-color:
    #dcaabd
    !important;
}


/* DATE48 CSS SOURCE 144: /assets/date48-dark-wine-v1-7-18-editor-security-tail-20261001_131402.css */
/*
 * Date48 Dark Wine V1.7.18
 *
 * Narrow residual cleanup only:
 * - remaining white profile-editor surfaces
 * - security "Не пройдено"
 */


/* ---------------------------------------------------------
   Profile editor canvas
   --------------------------------------------------------- */

html[data-date48-theme="dark"]
body:has(.date48-onboarding-card) {
  background:
    #090708
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-editor-v1718="1"] {
  background:
    #090708
    !important;

  background-color:
    #090708
    !important;
}


/* Runtime marks only large surfaces that are actually light. */

html[data-date48-theme="dark"]
body
[data-d48-editor-light-surface="1"] {
  color:
    #f5efec
    !important;

  background:
    linear-gradient(
      180deg,
      #181214 0%,
      #0f0b0d 100%
    )
    !important;

  background-color:
    #120e10
    !important;

  border-color:
    rgba(255,255,255,.07)
    !important;

  outline-color:
    transparent
    !important;

  box-shadow:
    0 14px 38px
      rgba(0,0,0,.17)
    !important;
}


/*
 * Keep already-good controls untouched.
 * Inputs/selects remain the current V1.7.17 dark style.
 */

html[data-date48-theme="dark"]
body
[data-d48-editor-v1718="1"]
:is(input,select,textarea) {
  color:
    #f5efec
    !important;

  -webkit-text-fill-color:
    #f5efec
    !important;

  background:
    #171214
    !important;

  background-color:
    #171214
    !important;

  border-color:
    rgba(255,255,255,.11)
    !important;
}


/* ---------------------------------------------------------
   Security pending identity status
   --------------------------------------------------------- */

html[data-date48-theme="dark"]
body
[data-d48-security-pending-v1718="1"] {
  color:
    #ddb3c1
    !important;

  -webkit-text-fill-color:
    #ddb3c1
    !important;

  opacity:
    1
    !important;

  font-weight:
    680
    !important;
}


/* DATE48 CSS SOURCE 145: /assets/date48-dark-wine-v1-7-19-editor-hard-dark-20261001_131822.css */
/*
 * Date48 Dark Wine V1.7.19
 * Profile editor hard dark pass.
 *
 * Security/profile/chat/plan untouched.
 */

html[data-date48-theme="dark"]
body:has(.date48-onboarding-card) {
  background:
    #090708
    !important;

  background-color:
    #090708
    !important;

  background-image:
    none
    !important;
}


html[data-date48-theme="dark"]
body
[data-d48-editor-hard-page="1"] {
  background:
    #090708
    !important;

  background-color:
    #090708
    !important;
}


/*
 * Large structural surfaces marked by runtime.
 */

html[data-date48-theme="dark"]
body
[data-d48-editor-hard-dark="1"] {
  color:
    #f5efec
    !important;

  border-color:
    rgba(255,255,255,.07)
    !important;
}


/*
 * Old light themes also use pseudo layers.
 * Neutralize their visual paint without removing content.
 */

html[data-date48-theme="dark"]
body
[data-d48-editor-hard-dark="1"]::before,

html[data-date48-theme="dark"]
body
[data-d48-editor-hard-dark="1"]::after {
  background:
    transparent
    !important;

  background-color:
    transparent
    !important;

  background-image:
    none
    !important;

  box-shadow:
    none
    !important;
}


/*
 * Inputs/selects/buttons preserve their existing
 * premium V1.7.17 appearance.
 */

html[data-date48-theme="dark"]
body
.date48-onboarding-card
:is(input,select,textarea) {
  color:
    #f5efec
    !important;

  -webkit-text-fill-color:
    #f5efec
    !important;

  background:
    #171214
    !important;

  background-color:
    #171214
    !important;

  border-color:
    rgba(255,255,255,.11)
    !important;
}


/* DATE48 CSS SOURCE 146: /assets/date48-dark-wine-v1-7-20-pv3-editor-real-fix-20261001_132557.css */
/*
 * Date48 Dark Wine V1.7.20
 *
 * Exact target:
 * profile-ui-v3 editor
 *
 * No onboarding selectors.
 * No security changes.
 */


/* =========================================================
   OVERLAY
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor {
  color:
    #f6efec
    !important;

  background:
    rgba(7, 5, 6, .78)
    !important;

  background-color:
    rgba(7, 5, 6, .78)
    !important;
}


/* =========================================================
   ACTUAL EDITOR SHEET
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-sheet {
  color:
    #f6efec
    !important;

  background:
    radial-gradient(
      540px 260px at 88% 0%,
      rgba(197, 72, 109, .08),
      transparent 70%
    ),
    linear-gradient(
      180deg,
      #171214 0%,
      #0b090a 100%
    )
    !important;

  background-color:
    #0f0b0d
    !important;

  border-color:
    rgba(255, 255, 255, .07)
    !important;

  box-shadow:
    0 28px 80px
      rgba(0, 0, 0, .46)
    !important;
}


/* =========================================================
   HEADER
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-sheet-head {
  color:
    #f6efec
    !important;

  background:
    linear-gradient(
      180deg,
      #191315 0%,
      #120e10 100%
    )
    !important;

  background-color:
    #151012
    !important;

  border-color:
    rgba(255,255,255,.065)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-sheet-head
h2 {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-sheet-head
small {
  color:
    #d25a80
    !important;

  -webkit-text-fill-color:
    #d25a80
    !important;
}


/* =========================================================
   TABS
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-step-nav {
  background:
    #100c0e
    !important;

  background-color:
    #100c0e
    !important;

  border-color:
    rgba(255,255,255,.06)
    !important;
}


/* =========================================================
   THIS WAS THE WHITE CANVAS
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-form {
  color:
    #f6efec
    !important;

  background:
    #090708
    !important;

  background-color:
    #090708
    !important;

  background-image:
    none
    !important;
}


/* =========================================================
   EVERY CHAPTER / INCLUDING PRIVATE MATCHING
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-section,

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-section.is-pv3-active {
  color:
    #f6efec
    !important;

  background:
    linear-gradient(
      155deg,
      #1b1417 0%,
      #120e10 100%
    )
    !important;

  background-color:
    #171214
    !important;

  background-image:
    linear-gradient(
      155deg,
      #1b1417 0%,
      #120e10 100%
    )
    !important;

  border-color:
    rgba(255,255,255,.07)
    !important;

  box-shadow:
    0 16px 38px
      rgba(0,0,0,.18),
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/* Any pseudo paper layer on a chapter */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-section::before,

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-section::after {
  background:
    transparent
    !important;

  background-image:
    none
    !important;

  box-shadow:
    none
    !important;
}


/* =========================================================
   SECTION TYPOGRAPHY
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-section
h3 {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-section
> p {
  color:
    #b6aaad
    !important;

  -webkit-text-fill-color:
    #b6aaad
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-field
> span {
  color:
    #eee5e3
    !important;

  -webkit-text-fill-color:
    #eee5e3
    !important;
}


/* =========================================================
   INPUTS
   Keep current geometry, remove remaining light paint.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-field
:is(
  input[type="text"],
  input[type="number"],
  textarea,
  select
) {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;

  background-color:
    #171214
    !important;

  border-color:
    rgba(255,255,255,.11)
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.025)
    !important;
}


/*
 * Preserve select arrow if supplied by original CSS.
 * Do not force background-image:none on select.
 */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-field
input,

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-field
textarea {
  background:
    #171214
    !important;
}


/* =========================================================
   PRIVATE / MATCHING INTRO
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-private-intro {
  color:
    #d9b0bd
    !important;

  background:
    linear-gradient(
      145deg,
      #28171d 0%,
      #1b1115 100%
    )
    !important;

  background-color:
    #211419
    !important;

  border-color:
    rgba(197,72,109,.16)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-private-intro
span {
  color:
    inherit
    !important;

  -webkit-text-fill-color:
    currentColor
    !important;
}


/* =========================================================
   PRIVATE TOGGLE ROW
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-toggle {
  color:
    #f1e8e6
    !important;

  background:
    #151012
    !important;

  background-color:
    #151012
    !important;

  border-color:
    rgba(255,255,255,.065)
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-toggle-copy
b {
  color:
    #f1e8e6
    !important;

  -webkit-text-fill-color:
    #f1e8e6
    !important;
}


html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-toggle-copy
small {
  color:
    #a99da0
    !important;

  -webkit-text-fill-color:
    #a99da0
    !important;
}


/* =========================================================
   SAVE AREA
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-pv3-editor
.date48-pv3-save {
  color:
    #fff7f8
    !important;

  background:
    linear-gradient(
      135deg,
      #c5486d 0%,
      #9d3152 100%
    )
    !important;

  border-color:
    transparent
    !important;
}


/* DATE48 CSS SOURCE 147: /assets/date48-places-readability-v1-20261001_142636.css */
/*
 * Date48 — Places Readability V1
 *
 * Scope:
 *   DARK theme only
 *   Places only
 *   Menu / price / budget text only
 *
 * No geometry.
 * No image changes.
 * No light-theme declarations.
 */


/* =========================================================
   PRICE SCENARIO — TITLE
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-price-scenario__content > strong {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;

  font-weight:
    780
    !important;
}


/* =========================================================
   PRICE SCENARIO — DESCRIPTION
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-price-scenario__description {
  color:
    #c3b5b9
    !important;

  -webkit-text-fill-color:
    #c3b5b9
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   MENU ITEMS
   Late Places CSS left these in the light palette.
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-price-scenario__menu li {
  color:
    #eee4e6
    !important;

  -webkit-text-fill-color:
    #eee4e6
    !important;

  opacity:
    1
    !important;

  font-size:
    12.5px
    !important;

  font-weight:
    560
    !important;

  line-height:
    1.42
    !important;
}


html[data-date48-theme="dark"]
body
.date48-place-price-scenario__menu li::before {
  background:
    #d85f84
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   PRICE
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-price-scenario__price {
  color:
    #fff4f6
    !important;

  -webkit-text-fill-color:
    #fff4f6
    !important;

  background:
    rgba(197,72,109,.16)
    !important;

  border:
    1px solid
    rgba(220,104,139,.18)
    !important;

  font-size:
    13px
    !important;

  font-weight:
    840
    !important;

  opacity:
    1
    !important;
}


/* generic fallback for older price scenarios */

html[data-date48-theme="dark"]
body
.date48-place-price-scenario > b {
  color:
    #fff4f6
    !important;

  -webkit-text-fill-color:
    #fff4f6
    !important;
}


/* =========================================================
   ALCOHOL / SECONDARY LABEL
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-price-scenario__content > span {
  color:
    #e5b9c7
    !important;

  -webkit-text-fill-color:
    #e5b9c7
    !important;

  background:
    rgba(197,72,109,.12)
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   BUDGET COMPACT — HEADER
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-budget-compact__copy strong {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;

  opacity:
    1
    !important;
}


html[data-date48-theme="dark"]
body
.date48-place-budget-compact__copy small {
  color:
    #b9abad
    !important;

  -webkit-text-fill-color:
    #b9abad
    !important;

  opacity:
    1
    !important;
}


html[data-date48-theme="dark"]
body
.date48-place-budget-compact__action {
  color:
    #df6b8e
    !important;

  -webkit-text-fill-color:
    #df6b8e
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   PRICE FOOTNOTE
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-price-scenarios__note {
  color:
    #a99b9f
    !important;

  -webkit-text-fill-color:
    #a99b9f
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   STICKY PLACE BUDGET
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-detail-sticky__copy strong {
  color:
    #f6efec
    !important;

  -webkit-text-fill-color:
    #f6efec
    !important;
}


html[data-date48-theme="dark"]
body
.date48-place-detail-sticky__copy span {
  color:
    #c9babf
    !important;

  -webkit-text-fill-color:
    #c9babf
    !important;

  opacity:
    1
    !important;
}


/* =========================================================
   COMPACT FACTS
   ========================================================= */

html[data-date48-theme="dark"]
body
.date48-place-detail-facts--compact small {
  color:
    #ad9fa3
    !important;

  -webkit-text-fill-color:
    #ad9fa3
    !important;
}


html[data-date48-theme="dark"]
body
.date48-place-detail-facts--compact strong {
  color:
    #eee5e7
    !important;

  -webkit-text-fill-color:
    #eee5e7
    !important;
}


/* DATE48 CSS SOURCE 148: /assets/date48-light-recovery-v1-20261002_060838.css */
/*
 * Date48 — Light Recovery V1
 *
 * This file MUST remain explicit-light only.
 * It must never contain an unscoped Date48 visual rule.
 *
 * Dark baseline is frozen.
 */

html[data-date48-theme="light"] {
  color-scheme: light !important;
}

html[data-date48-theme="light"] body {
  color-scheme: light !important;
}


html[data-date48-theme="light"] .date48-match-celebration__card {
  box-sizing: border-box !important;
  text-align: center !important;
  color: #171217 !important;
  background: #fffffff2 !important;
  border: 1px solid #ffffff57 !important;
  border-radius: 30px !important;
  width: min(100%,420px) !important;
  padding: 30px 24px 22px !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 30px 80px #00000047 !important;
}


html[data-date48-theme="light"] .date48-match-celebration__copy {
  color: #171217a3 !important;
  max-width: 310px !important;
  margin: 14px auto 22px !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}


html[data-date48-theme="light"] .date48-match-celebration__secondary {
  color: #3d343a !important;
  background: #1410140e !important;
}


html[data-date48-theme="light"] .date48-match-row__avatar>i {
  color: #fff !important;
  background: #bd1859 !important;
  border-radius: 50% !important;
  place-items: center !important;
  width: 22px !important;
  height: 22px !important;
  font-size: 10px !important;
  font-style: normal !important;
  display: grid !important;
  position: absolute !important;
  bottom: -2px !important;
  right: -1px !important;
  box-shadow: 0 0 0 3px #ffffffe6 !important;
}


/* DATE48 CSS SOURCE 149: /assets/date48-light-chat-shell-v1-20261002_070503.css */
/*
 * Date48 — Light Chat Shell V1
 *
 * Restore the established native light Chat surfaces.
 * Strictly light-only.
 * Dark theme is intentionally untouched.
 */

html[data-date48-theme="light"]:has(.date48-chat-page),
html[data-date48-theme="light"] body:has(.date48-chat-page),
html[data-date48-theme="light"] #root:has(.date48-chat-page),
html[data-date48-theme="light"] .app-page:has(.date48-chat-page),
html[data-date48-theme="light"] .app-shell:has(.date48-chat-page),
html[data-date48-theme="light"] .screen-body:has(.date48-chat-page) {
  background:
    radial-gradient(
      circle at 7% 40%,
      rgba(151,77,103,.045),
      transparent 26%
    ),
    radial-gradient(
      circle at 92% 18%,
      rgba(151,77,103,.035),
      transparent 22%
    ),
    linear-gradient(
      180deg,
      #fbf8f3 0%,
      #f8f3ed 52%,
      #faf7f2 100%
    ) !important;

  background-color: #faf7f2 !important;
  color: #21191d !important;
}


html[data-date48-theme="light"]
.date48-chat-page {
  color: #21191d !important;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fcf9fa 100%
    ) !important;

  background-color: #ffffff !important;
}


html[data-date48-theme="light"]
.date48-chat-page.date48-chat-page--state {
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fcf9fa 100%
    ) !important;

  background-color: #ffffff !important;
}


html[data-date48-theme="light"]
.date48-chat-head {
  color: #21191d !important;

  background:
    rgba(255,255,255,.96) !important;

  background-color:
    rgba(255,255,255,.96) !important;

  border-bottom:
    1px solid rgba(36,25,31,.07) !important;

  box-shadow: none !important;
}


html[data-date48-theme="light"]
.date48-chat-head__back,
html[data-date48-theme="light"]
.date48-chat-head__date {
  color: #221a1e !important;

  background:
    rgba(43,31,37,.055) !important;

  background-color:
    rgba(43,31,37,.055) !important;
}


html[data-date48-theme="light"]
.date48-chat-person {
  color: #21191d !important;
  background: transparent !important;
}


html[data-date48-theme="light"]
.date48-chat-person__copy strong {
  color: #21181c !important;
}


html[data-date48-theme="light"]
.date48-chat-person__copy small {
  color: #a54a70 !important;
}


html[data-date48-theme="light"]
.date48-chat-thread {
  color: #21191d !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}


html[data-date48-theme="light"]
.date48-chat-intro strong {
  color: #21191d !important;
}


html[data-date48-theme="light"]
.date48-chat-intro p {
  color: rgba(34,25,29,.52) !important;
}


html[data-date48-theme="light"]
.date48-chat-message {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}


html[data-date48-theme="light"]
.date48-chat-message:not(.is-mine)
> .date48-chat-bubble {
  color: #21191d !important;

  background: #f0ecee !important;
  background-color: #f0ecee !important;

  border: 0 !important;
  box-shadow: none !important;
}


html[data-date48-theme="light"]
.date48-chat-message.is-mine
> .date48-chat-bubble {
  color: #ffffff !important;

  background: #211a1d !important;
  background-color: #211a1d !important;

  border: 0 !important;
  box-shadow: none !important;
}


html[data-date48-theme="light"]
.date48-chat-message:not(.is-mine)
small {
  color: rgba(35,25,30,.43) !important;
}


html[data-date48-theme="light"]
.date48-chat-message.is-mine
small {
  color: rgba(255,255,255,.54) !important;
}


html[data-date48-theme="light"]
.date48-chat-composer,
html[data-date48-theme="light"]
.date48-chat-composer--v2 {
  color: #21191d !important;

  background:
    rgba(255,255,255,.96) !important;

  background-color:
    rgba(255,255,255,.96) !important;

  border:
    1px solid rgba(34,24,29,.08) !important;

  box-shadow:
    0 12px 40px rgba(38,25,31,.11) !important;
}


html[data-date48-theme="light"]
.date48-chat-composer__field {
  background:
    rgba(38,25,31,.045) !important;

  background-color:
    rgba(38,25,31,.045) !important;
}


html[data-date48-theme="light"]
.date48-chat-composer textarea {
  color: #21191d !important;
  background: transparent !important;
}


html[data-date48-theme="light"]
.date48-chat-composer textarea::placeholder {
  color: rgba(34,24,29,.37) !important;
}


html[data-date48-theme="light"]
.date48-chat-composer__attachment,
html[data-date48-theme="light"]
.date48-chat-composer__circle,
html[data-date48-theme="light"]
.date48-chat-composer__voice {
  color: #74505c !important;

  background:
    rgba(255,253,251,.90) !important;

  background-color:
    rgba(255,253,251,.90) !important;
}


html[data-date48-theme="light"]
.date48-chat-composer__emoji {
  color: #5d4a53 !important;
  background: transparent !important;
}


html[data-date48-theme="light"]
.date48-chat-composer__send {
  color: #ffffff !important;

  background: #21191d !important;
  background-color: #21191d !important;
}


/* Existing meeting card native light palette. */
html[data-date48-theme="light"]
.date48-chat-meeting-v54__card {
  color: #401a29 !important;

  background:
    rgba(255,250,247,.96) !important;

  background-color:
    rgba(255,250,247,.96) !important;

  border:
    1px solid rgba(78,30,48,.08) !important;
}


html[data-date48-theme="light"]
.date48-chat-meeting-v54__body strong {
  color: #401a29 !important;
}


html[data-date48-theme="light"]
.date48-chat-meeting-v54__body p {
  color: rgba(64,26,41,.56) !important;
}


html[data-date48-theme="light"]
.date48-chat-state {
  color: #21191d !important;

  background:
    rgba(255,255,255,.94) !important;

  background-color:
    rgba(255,255,255,.94) !important;
}


/* DATE48 CSS SOURCE 150: /assets/video-circle-parent-lock-v2-20261004_053000.css */
/*
 * DATE48 VIDEO CIRCLE — PARENT GEOMETRY LOCK V2
 *
 * Scope:
 *   sent/received chat video-circle only.
 *
 * Explicitly untouched:
 *   recorder overlay
 *   composer
 *   voice
 *   photo
 *   meeting cards
 *   dark-wine runtime
 */

/* ---------------------------------------------------------
   1. Bubble must have exactly the same geometry as circle.
   This intentionally outranks historical glass rules.
   --------------------------------------------------------- */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle,

.date48-chat-page
.date48-chat-message.is-mine
> .date48-chat-bubble.has-circle {
  box-sizing: border-box !important;

  display: block !important;

  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;

  padding: 0 !important;
  margin-top: 2px !important;
  margin-bottom: 2px !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  overflow: visible !important;

  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  transform: none !important;
}


/* ---------------------------------------------------------
   2. The structural circle wrapper must not become a pill.
   Dark theme may paint this wrapper; neutralize only here.
   --------------------------------------------------------- */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle
.date48-chat-circle-message {
  box-sizing: border-box !important;

  display: block !important;

  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;

  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;

  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  overflow: visible !important;

  border-radius: 0 !important;

  transform: none !important;
}


/* ---------------------------------------------------------
   3. The actual interactive media is the circle.
   --------------------------------------------------------- */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle
.date48-chat-circle-media {
  -webkit-appearance: none !important;
  appearance: none !important;

  box-sizing: border-box !important;
  position: relative !important;
  display: block !important;

  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;

  height: 176px !important;
  min-height: 176px !important;
  max-height: 176px !important;

  inline-size: 176px !important;
  block-size: 176px !important;

  aspect-ratio: 1 / 1 !important;

  flex: 0 0 176px !important;

  padding: 0 !important;
  margin: 0 !important;

  overflow: hidden !important;

  border-radius: 50% !important;
  border: 2px solid rgba(255,255,255,.88) !important;

  background: #171115 !important;

  line-height: 0 !important;

  transform: none !important;

  box-shadow:
    0 11px 30px rgba(55,31,40,.16) !important;
}


/* ---------------------------------------------------------
   4. Video fills only its circular media container.
   --------------------------------------------------------- */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle
.date48-chat-circle-media
> video {
  box-sizing: border-box !important;

  position: absolute !important;
  inset: 0 !important;

  display: block !important;

  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;

  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;

  object-fit: cover !important;
  object-position: center center !important;

  aspect-ratio: 1 / 1 !important;

  padding: 0 !important;
  margin: 0 !important;

  border: 0 !important;
  border-radius: 50% !important;

  transform: none !important;
}


/* ---------------------------------------------------------
   5. Metadata stays below and cannot widen the bubble.
   --------------------------------------------------------- */

.date48-chat-page
.date48-chat-message
> .date48-chat-bubble.has-circle
> small {
  box-sizing: border-box !important;

  width: 176px !important;
  max-width: 176px !important;

  margin: 5px 0 0 !important;
  padding: 0 4px !important;

  text-align: right !important;
}


/* ---------------------------------------------------------
   6. Small iPhone only: slightly smaller circle.
   --------------------------------------------------------- */

@media (max-width: 390px) {

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble.has-circle,

  .date48-chat-page
  .date48-chat-message.is-mine
  > .date48-chat-bubble.has-circle {
    width: 164px !important;
    min-width: 164px !important;
    max-width: 164px !important;
  }

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble.has-circle
  .date48-chat-circle-message {
    width: 164px !important;
    min-width: 164px !important;
    max-width: 164px !important;
  }

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble.has-circle
  .date48-chat-circle-media {
    width: 164px !important;
    min-width: 164px !important;
    max-width: 164px !important;

    height: 164px !important;
    min-height: 164px !important;
    max-height: 164px !important;

    inline-size: 164px !important;
    block-size: 164px !important;

    flex-basis: 164px !important;
  }

  .date48-chat-page
  .date48-chat-message
  > .date48-chat-bubble.has-circle
  > small {
    width: 164px !important;
    max-width: 164px !important;
  }
}


/* DATE48 CSS SOURCE 151: /assets/date48-pull-refresh-v1.css */

#date48-pull-refresh-v1 {
  position: fixed;
  z-index: 2147482000;
  top: calc(env(safe-area-inset-top) + 8px);
  left: 50%;
  transform: translate(-50%, -80px);
  opacity: 0;
  pointer-events: none;
  transition:
    transform .18s ease,
    opacity .18s ease;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 15px;
  border-radius: 100px;
  color: #813b55;
  background: rgba(255, 249, 251, .96);
  border: 1px solid rgba(139, 64, 92, .15);
  box-shadow: 0 10px 35px rgba(60, 20, 40, .12);
  font: 500 12px/1.3 -apple-system,
        BlinkMacSystemFont, sans-serif;
  white-space: nowrap;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

#date48-pull-refresh-v1.d48-pull-visible {
  opacity: 1;
}

#date48-pull-refresh-v1.d48-pull-ready {
  color: #a63e69;
}

#date48-pull-refresh-v1 .d48-pull-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  transition: transform .18s ease;
}

#date48-pull-refresh-v1.d48-pull-ready .d48-pull-icon {
  transform: rotate(180deg);
}

#date48-pull-refresh-v1.d48-pull-loading .d48-pull-icon {
  animation: d48PullSpin .7s linear infinite;
}

@keyframes d48PullSpin {
  to { transform: rotate(360deg); }
}

@media (prefers-color-scheme: dark) {
  #date48-pull-refresh-v1.d48-pull-dark {
    color: #f0bfd0;
    background: rgba(25, 15, 22, .95);
    border-color: rgba(220, 125, 160, .2);
  }
}

@media (prefers-reduced-motion: reduce) {
  #date48-pull-refresh-v1,
  #date48-pull-refresh-v1 .d48-pull-icon {
    transition: none;
    animation: none;
  }
}


/* DATE48 CSS SOURCE 152: /assets/video-circle-composer-flat-v1-20261004_061506.css */
/*
 * DATE48 VIDEO CIRCLE — COMPOSER FLAT V1
 *
 * iOS Safari:
 * fixed descendants can become bound to an ancestor when that ancestor
 * has backdrop-filter / transform / filter / perspective / contain.
 *
 * Keep current DOM. Keep recorder nested.
 * Remove only containing-block triggers from the real chat composer.
 */

.date48-chat-page .date48-chat-composer,
.date48-chat-page .date48-chat-composer--v2 {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;

  -webkit-transform: none !important;
  transform: none !important;

  filter: none !important;
  perspective: none !important;
  contain: none !important;

  will-change: auto !important;
}

/*
 * Explicitly retain overlay viewport geometry.
 */
.date48-chat-page .date48-circle-overlay {
  position: fixed !important;

  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;

  inset: 0 !important;

  width: 100vw !important;
  width: 100dvw !important;

  height: 100vh !important;
  height: 100dvh !important;

  max-width: none !important;
  max-height: none !important;

  box-sizing: border-box !important;
}

/*
 * Hard square preview geometry.
 * Do not rely on height:auto + aspect-ratio alone on iOS.
 */
.date48-chat-page .date48-circle-preview-shell {
  box-sizing: border-box !important;

  width:
    min(
      76vw,
      330px,
      52dvh
    ) !important;

  height:
    min(
      76vw,
      330px,
      52dvh
    ) !important;

  min-width: 0 !important;
  min-height: 0 !important;

  max-width:
    min(
      330px,
      calc(100dvw - 44px)
    ) !important;

  max-height:
    min(
      330px,
      calc(100dvh - 230px)
    ) !important;

  aspect-ratio: 1 / 1 !important;

  flex:
    0 0 auto !important;

  overflow:
    hidden !important;

  border-radius:
    50% !important;
}

.date48-chat-page .date48-circle-preview-shell > video {
  position: absolute !important;
  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  min-width: 100% !important;
  min-height: 100% !important;

  max-width: 100% !important;
  max-height: 100% !important;

  object-fit: cover !important;

  border-radius: 50% !important;
}

@media (max-width: 390px) {
  .date48-chat-page .date48-circle-preview-shell {
    width:
      min(
        76vw,
        300px,
        52dvh
      ) !important;

    height:
      min(
        76vw,
        300px,
        52dvh
      ) !important;
  }
}


/* DATE48 CSS SOURCE 153: /assets/voice-dark-readability-v5-1-safari-final-20261005.css */
/*
 * DATE48 — VOICE DARK READABILITY V5.1
 * Safari/iPhone white text lock.
 * Exact voice selectors only.
 */

/* 0:00 / 0:05 */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-message
.date48-chat-voice-track span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;

  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  letter-spacing: .01em !important;

  font-variant-numeric: tabular-nums !important;
  text-shadow: none !important;
}


/* 1× / 1.5× / 2× */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-message
.date48-chat-voice-speed {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;

  font-size: 11px !important;
  font-weight: 750 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}


/* protect voice children from inherited WebKit fill */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-message {
  -webkit-text-fill-color: initial;
}


/* then explicitly lock actual text controls again */
html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-message
.date48-chat-voice-track span,

html[data-date48-theme="dark"]
body
.date48-chat-page
.date48-chat-message
.date48-chat-voice-message
.date48-chat-voice-speed {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}


/* /DATE48 VOICE DARK READABILITY V5.1 */


/* DATE48 CSS SOURCE 154: /assets/date48-private-chat-surface-v1-20261016.css */

/*
 * Date48 Private Chat V1 — 2026-10-16
 * Visual surfaces only.
 * No layout, safe-area, media geometry or JS changes.
 */

/* Shared visual cleanup: ordinary text messages only. */

html body .date48-chat-page .date48-chat-thread
> .date48-chat-message:not(:has(
  .has-photo,
  .has-circle,
  .date48-chat-voice-message,
  .date48-chat-bubble--deleted,
  .date48-message-life-editor
)) {
  background: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* LIGHT THEME */

html[data-date48-theme="light"] body
.date48-chat-page {
  background: #fcf9f8 !important;
  color: #352731 !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-head {
  background: #fffdfc !important;
  border-color: rgba(91,53,69,.10) !important;
  box-shadow: 0 7px 24px rgba(70,39,53,.055) !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-head__back {
  background: #f3edef !important;
  color: #48323d !important;
  box-shadow: none !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-person__copy {
  color: #34242d !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-intro strong {
  color: #382530 !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-intro p {
  color: #826f77 !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-message.is-mine
> .date48-chat-bubble:not(.has-photo):not(.has-circle):not(.date48-chat-bubble--deleted):not(:has(
  .date48-chat-voice-message,
  .date48-message-life-editor,
  [data-d48-v179="meeting-event-bubble"],
  [data-d48-v1710="meeting-bubble"]
)) {
  background: #f0dee4 !important;
  background-color: #f0dee4 !important;
  background-image: none !important;
  color: #482d38 !important;
  border: 1px solid rgba(144,80,104,.12) !important;
  box-shadow: 0 5px 17px rgba(105,59,77,.055) !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-message:not(.is-mine)
> .date48-chat-bubble:not(.has-photo):not(.has-circle):not(.date48-chat-bubble--deleted):not(:has(
  .date48-chat-voice-message,
  .date48-message-life-editor,
  [data-d48-v179="meeting-event-bubble"],
  [data-d48-v1710="meeting-bubble"]
)) {
  background: #fffefd !important;
  background-color: #fffefd !important;
  background-image: none !important;
  color: #36272e !important;
  border: 1px solid #e9dde0 !important;
  box-shadow: 0 5px 16px rgba(70,45,55,.045) !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-message
> .date48-chat-bubble:not(.has-photo):not(.has-circle):not(.date48-chat-bubble--deleted) > small {
  color: #806872 !important;
  -webkit-text-fill-color: #806872 !important;
  opacity: 1 !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-composer {
  background: #fffdfc !important;
  border-color: rgba(105,65,81,.11) !important;
  box-shadow: 0 8px 26px rgba(65,35,48,.075) !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-composer__field {
  background: #f5eff1 !important;
  background-color: #f5eff1 !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-composer textarea {
  color: #402b35 !important;
  -webkit-text-fill-color: #402b35 !important;
}

html[data-date48-theme="light"] body
.date48-chat-page .date48-chat-composer textarea::placeholder {
  color: #927d87 !important;
  -webkit-text-fill-color: #927d87 !important;
}

/* DARK THEME */

html[data-date48-theme="dark"] body
.date48-chat-page {
  background: #0c0a0d !important;
  color: #f5ebef !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-head {
  background: #191317 !important;
  border-color: rgba(236,185,204,.085) !important;
  box-shadow:
    0 8px 25px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.025)
    !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-head__back {
  background: #292027 !important;
  color: #f5eaf0 !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-person__copy {
  color: #f6ecf0 !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-intro strong {
  color: #f7edf1 !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-intro p {
  color: #b7a4ae !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-message.is-mine
> .date48-chat-bubble:not(.has-photo):not(.has-circle):not(.date48-chat-bubble--deleted):not(:has(
  .date48-chat-voice-message,
  .date48-message-life-editor,
  [data-d48-v179="meeting-event-bubble"],
  [data-d48-v1710="meeting-bubble"]
)) {
  background: #572439 !important;
  background-color: #572439 !important;
  background-image: none !important;
  color: #fff0f5 !important;
  border: 1px solid rgba(225,126,164,.17) !important;
  box-shadow:
    0 7px 20px rgba(0,0,0,.11),
    inset 0 1px 0 rgba(255,255,255,.04)
    !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-message:not(.is-mine)
> .date48-chat-bubble:not(.has-photo):not(.has-circle):not(.date48-chat-bubble--deleted):not(:has(
  .date48-chat-voice-message,
  .date48-message-life-editor,
  [data-d48-v179="meeting-event-bubble"],
  [data-d48-v1710="meeting-bubble"]
)) {
  background: #292027 !important;
  background-color: #292027 !important;
  background-image: none !important;
  color: #f7ebef !important;
  border: 1px solid #493743 !important;
  box-shadow: 0 5px 16px rgba(0,0,0,.12) !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-message
> .date48-chat-bubble:not(.has-photo):not(.has-circle):not(.date48-chat-bubble--deleted) > small {
  color: #e2bcca !important;
  -webkit-text-fill-color: #e2bcca !important;
  opacity: 1 !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-composer {
  background: #1d171d !important;
  border-color: rgba(222,168,188,.12) !important;
  box-shadow:
    0 8px 28px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.025)
    !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-composer__field {
  background: #30222c !important;
  background-color: #30222c !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-composer textarea {
  color: #fff0f5 !important;
  -webkit-text-fill-color: #fff0f5 !important;
}

html[data-date48-theme="dark"] body
.date48-chat-page .date48-chat-composer textarea::placeholder {
  color: #bda6b2 !important;
  -webkit-text-fill-color: #bda6b2 !important;
}

/*
 * Intentionally untouched:
 * photo / circle / voice geometry,
 * deleted and editing states,
 * composer grid / safe area / keyboard,
 * overlays, menus and message actions.
 */


/* DATE48 CSS SOURCE 155: /assets/date48-private-composer-v3-20261016.css */

/* Date48 Private Composer V3
   Existing React recorders retained.
   No changes to recorder overlays or safe areas.
*/

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) {
  display: grid !important;
  grid-template-columns:
    44px minmax(0, 1fr) 44px !important;
  align-items: center !important;
  column-gap: 8px !important;
  min-width: 0 !important;
  overflow: visible !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details.date48-composer-tools-v3 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: relative;
  display: block !important;
  width: 44px !important;
  min-width: 44px !important;
  overflow: visible !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details > summary {
  display: grid !important;
  place-items: center !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 16px !important;
  border: 1px solid var(--d48-v3-border) !important;
  background: var(--d48-v3-item) !important;
  color: var(--d48-v3-accent) !important;
  list-style: none !important;
  cursor: pointer;
  font-size: 29px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  -webkit-tap-highlight-color: transparent;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details > summary::-webkit-details-marker {
  display: none !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open] > summary {
  background: var(--d48-v3-active) !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > .date48-chat-composer__field {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > .date48-chat-composer__send {
  grid-column: 3 !important;
  grid-row: 1 !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details > .date48-composer-tools-v3__panel {
  position: absolute !important;
  left: 0 !important;
  bottom: calc(100% + 12px) !important;
  width: min(356px, calc(100vw - 30px)) !important;
  max-width: calc(100vw - 30px) !important;
  box-sizing: border-box !important;
  z-index: 150 !important;
  padding: 12px !important;
  border-radius: 22px !important;
  border: 1px solid var(--d48-v3-border) !important;
  background: var(--d48-v3-panel) !important;
  box-shadow: 0 14px 38px var(--d48-v3-shadow) !important;
  overflow: visible !important;
  transform: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  contain: none !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details:not([open])
> .date48-composer-tools-v3__panel {
  display: none !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel {
  display: grid !important;
  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: start !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__attachment,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__emoji,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__circle,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) {
  grid-column: auto !important;
  grid-row: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 61px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 7px 3px !important;
  border: 1px solid var(--d48-v3-border) !important;
  border-radius: 15px !important;
  background: var(--d48-v3-item) !important;
  color: var(--d48-v3-accent) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-voice-recorder.is-recording,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-voice-recorder.is-sending {
  grid-column: 1 / -1 !important;
  min-width: 0 !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__attachment {
  font-size: 13px !important;
  font-weight: 650 !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__attachment::before {
  content: "▧";
  font-size: 21px;
  line-height: 1;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__emoji::after {
  content: "Эмодзи";
  font-size: 11px;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-composer__circle::after {
  content: "Видео";
  font-size: 11px;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
> .date48-chat-voice-recorder:not(.is-recording):not(.is-sending)::after {
  content: "Голос";
  font-size: 11px;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_composer_guard_1):not(#__d48_composer_guard_2):not(#__d48_composer_guard_3):not(#__d48_composer_guard_4):not(#__d48_composer_guard_5):not(#__d48_composer_guard_6) > details[open]
> .date48-composer-tools-v3__panel
.date48-chat-composer__voice {
  margin: 0 auto !important;
  flex-shrink: 0 !important;
}

html[data-date48-theme="light"] {
  --d48-v3-panel: #fffdfc;
  --d48-v3-item: #f7f0f3;
  --d48-v3-border: #e9dce2;
  --d48-v3-accent: #90465e;
  --d48-v3-active: #eedce3;
  --d48-v3-shadow: rgba(55,30,42,.15);
}

html[data-date48-theme="dark"] {
  --d48-v3-panel: #21171e;
  --d48-v3-item: #32212b;
  --d48-v3-border: #503443;
  --d48-v3-accent: #e8afc2;
  --d48-v3-active: #4b2939;
  --d48-v3-shadow: rgba(0,0,0,.34);
}


/* DATE48 CSS SOURCE 156: /assets/date48-private-composer-icons-v4-20261016.css */

/* Date48 Private Composer Icons V4
   Pure CSS visual refinement.
   No changes to handlers, input, safe areas or recording state.
*/
html[data-date48-theme="light"] {
  --d48-icon-tile: #fcf8f8;
  --d48-icon-line: #eadfe2;
  --d48-icon-ink: #95546a;
  --d48-icon-label: #71505d;
}

html[data-date48-theme="dark"] {
  --d48-icon-tile: #2b2029;
  --d48-icon-line: #47343e;
  --d48-icon-ink: #e8b4c6;
  --d48-icon-label: #e7cbd5;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding: 12px !important;
  align-items: stretch !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 82px !important;
  min-height: 82px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__attachment,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) > button.date48-chat-composer__voice,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__circle,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__emoji {
  box-sizing: border-box !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 82px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  margin: 0 !important;
  padding: 10px 3px !important;
  border: 1px solid var(--d48-icon-line) !important;
  border-radius: 17px !important;
  background: var(--d48-icon-tile) !important;
  background-image: none !important;
  color: var(--d48-icon-label) !important;
  -webkit-text-fill-color: var(--d48-icon-label) !important;
  box-shadow: none !important;
  font-family: -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  -webkit-tap-highlight-color: transparent;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__circle > svg,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) > button.date48-chat-composer__voice > svg {
  display: none !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__emoji,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__circle,
html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) > button.date48-chat-composer__voice {
  font-size: 0 !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__attachment::before {
  content: "" !important;
  display: block !important;
  position: static !important;
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--d48-icon-ink) !important;
  background-color: var(--d48-icon-ink) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHJ4PSIzIi8+PGNpcmNsZSBjeD0iOC41IiBjeT0iOC41IiByPSIxLjUiLz48cGF0aCBkPSJtMyAxNiA1LTUgNCA0IDMtMyA2IDYiLz48L3N2Zz4=") !important;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHJ4PSIzIi8+PGNpcmNsZSBjeD0iOC41IiBjeT0iOC41IiByPSIxLjUiLz48cGF0aCBkPSJtMyAxNiA1LTUgNCA0IDMtMyA2IDYiLz48L3N2Zz4=") !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) > button.date48-chat-composer__voice::before {
  content: "" !important;
  display: block !important;
  position: static !important;
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--d48-icon-ink) !important;
  background-color: var(--d48-icon-ink) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI5IiB5PSIyLjUiIHdpZHRoPSI2IiBoZWlnaHQ9IjEyIiByeD0iMyIvPjxwYXRoIGQ9Ik01IDEwdjFhNyA3IDAgMCAwIDE0IDB2LTEiLz48cGF0aCBkPSJNMTIgMTh2NE04IDIyaDgiLz48L3N2Zz4=") !important;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI5IiB5PSIyLjUiIHdpZHRoPSI2IiBoZWlnaHQ9IjEyIiByeD0iMyIvPjxwYXRoIGQ9Ik01IDEwdjFhNyA3IDAgMCAwIDE0IDB2LTEiLz48cGF0aCBkPSJNMTIgMTh2NE04IDIyaDgiLz48L3N2Zz4=") !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__circle::before {
  content: "" !important;
  display: block !important;
  position: static !important;
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--d48-icon-ink) !important;
  background-color: var(--d48-icon-ink) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIzIiB5PSI1IiB3aWR0aD0iMTMiIGhlaWdodD0iMTQiIHJ4PSIzIi8+PHBhdGggZD0ibTE2IDEwIDUtM3YxMGwtNS0zIi8+PC9zdmc+") !important;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIzIiB5PSI1IiB3aWR0aD0iMTMiIGhlaWdodD0iMTQiIHJ4PSIzIi8+PHBhdGggZD0ibTE2IDEwIDUtM3YxMGwtNS0zIi8+PC9zdmc+") !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__emoji::before {
  content: "" !important;
  display: block !important;
  position: static !important;
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--d48-icon-ink) !important;
  background-color: var(--d48-icon-ink) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI5Ii8+PHBhdGggZD0iTTggMTQuNWMyLjIgMyA1LjggMyA4IDAiLz48cGF0aCBkPSJNOSA5aC4wMU0xNSA5aC4wMSIvPjwvc3ZnPg==") !important;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI5Ii8+PHBhdGggZD0iTTggMTQuNWMyLjIgMyA1LjggMyA4IDAiLz48cGF0aCBkPSJNOSA5aC4wMU0xNSA5aC4wMSIvPjwvc3ZnPg==") !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending) > button.date48-chat-composer__voice::after {
  content: "Голос" !important;
  display: block !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--d48-icon-label) !important;
  -webkit-text-fill-color: var(--d48-icon-label) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__circle::after {
  content: "Видео" !important;
  display: block !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--d48-icon-label) !important;
  -webkit-text-fill-color: var(--d48-icon-label) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_icon_guard_1):not(#__d48_icon_guard_2):not(#__d48_icon_guard_3):not(#__d48_icon_guard_4):not(#__d48_icon_guard_5):not(#__d48_icon_guard_6):not(#__d48_icon_guard_7):not(#__d48_icon_guard_8) > details[open] > .date48-composer-tools-v3__panel > button.date48-chat-composer__emoji::after {
  content: "Эмодзи" !important;
  display: block !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--d48-icon-label) !important;
  -webkit-text-fill-color: var(--d48-icon-label) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}


/* DATE48 CSS SOURCE 157: /assets/date48-private-composer-polish-v6-20261016.css */

/*
  DATE48 PRIVATE COMPOSER POLISH V6

  Based on stable V4 geometry.
  Only:
    1. Mobile horizontal panel alignment
    2. Duplicate voice-label removal

  No form positioning changes.
  No recorder geometry changes.
  No JS modifications.
*/

/* Original panel width:
   min(356px, calc(100vw - 30px)).

   Composer left inset on mobile: approximately 15px.
   Center by correcting only the panel's left offset.
*/

@media screen and (max-width: 520px) {
  html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_v6_guard_1):not(#__d48_v6_guard_2):not(#__d48_v6_guard_3):not(#__d48_v6_guard_4):not(#__d48_v6_guard_5):not(#__d48_v6_guard_6):not(#__d48_v6_guard_7):not(#__d48_v6_guard_8):not(#__d48_v6_guard_9):not(#__d48_v6_guard_10) > details.date48-composer-tools-v3 > .date48-composer-tools-v3__panel {
    left: max(0px, calc((100vw - 386px) / 2)) !important;
    right: auto !important;
  }
}

/* V3 creates a second voice label on the recorder wrapper.
   V4 already creates the correct label on the inner button.
   Suppress only the obsolete wrapper label.
*/

html body .date48-chat-page form#date48-private-composer-v3.date48-chat-composer.date48-chat-composer--v2:not(#__d48_v6_guard_1):not(#__d48_v6_guard_2):not(#__d48_v6_guard_3):not(#__d48_v6_guard_4):not(#__d48_v6_guard_5):not(#__d48_v6_guard_6):not(#__d48_v6_guard_7):not(#__d48_v6_guard_8):not(#__d48_v6_guard_9):not(#__d48_v6_guard_10) > details[open].date48-composer-tools-v3 > .date48-composer-tools-v3__panel > .date48-chat-voice-recorder:not(.is-recording):not(.is-sending)::after {
  content: none !important;
  display: none !important;
}


/* DATE48 CSS SOURCE 158: /assets/date48-places-premium-v1-20261016.css */
/* Date48 Places Premium V1: page-specific CSS extracted from current source build */
.date48-places-entry{background:radial-gradient(circle at 100% 0,#ea52801f,#0000 34%),#fffbf9e0;border:1px solid #c5265826;border-radius:28px;grid-template-columns:68px minmax(0,1fr);gap:17px;margin-top:17px;padding:22px;display:grid;box-shadow:0 20px 50px #6c263d12,inset 0 1px #ffffffe6}.date48-places-entry__icon{background:radial-gradient(circle at 38% 30%,#ff98b7,#e93d73 48%,#bd1d51 100%);border-radius:50%;place-items:center;width:62px;height:62px;display:grid;box-shadow:0 13px 28px #d3275b3d}.date48-places-entry__icon span{color:#0000;border:4px solid #fff;border-radius:50%;place-items:center;width:18px;height:18px;display:grid;position:relative}.date48-places-entry__icon span:after{content:"";background:#fff;border-radius:0 0 3px;width:10px;height:10px;position:absolute;top:14px;transform:rotate(45deg)}.date48-places-entry__eyebrow{color:#bd1d51;letter-spacing:.1em;margin:2px 0 5px;font-size:10px;font-weight:850;line-height:1}.date48-places-entry h2{color:#21181c;letter-spacing:-.045em;margin:0;font-size:27px;line-height:1}.date48-places-entry__copy>p:not(.date48-places-entry__eyebrow){color:#21181c94;margin:9px 0 0;font-size:13px;line-height:1.42}.date48-places-entry__preview{background:#ffffff9e;border:1px solid #2a1b220e;border-radius:17px;gap:3px;margin-top:14px;padding:13px 14px;display:grid}.date48-places-entry__preview strong{color:#9f1d48;font-size:12px}.date48-places-entry__preview span{color:#23191e;font-size:14px;font-weight:760}.date48-places-entry__preview small{color:#21181c7a;font-size:11px}.date48-places-entry button{color:#fff;width:100%;min-height:47px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#f25784,#d92862);border:0;border-radius:16px;margin-top:15px;font-size:14px;font-weight:800;box-shadow:0 12px 26px #d3275b30}.date48-places-entry button:disabled{opacity:.46;cursor:default}.date48-places-page,.date48-place-detail-page,.date48-plan-page{width:min(100%,680px);padding:8px 0 calc(118px + env(safe-area-inset-bottom));box-sizing:border-box;margin:0 auto}.date48-places-top{grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;padding:5px 2px 12px;display:grid}.date48-places-top>div{text-align:center}.date48-places-top p{color:#ba2152;letter-spacing:.13em;margin:0 0 4px;font-size:9px;font-weight:850}.date48-places-top h1{color:#21181c;letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:500;line-height:1}.date48-places-back{color:#271b21;width:38px;height:38px;font:inherit;cursor:pointer;background:#ffffff80;border:0;border-radius:50%;font-size:28px;line-height:1}.date48-places-top__spark{color:#df3a6b;place-items:center;font-size:17px;display:grid}.date48-places-filters{gap:7px;padding:6px 2px 14px;display:flex;overflow-x:auto}.date48-places-filters span{box-sizing:border-box;color:#271b2191;background:#ffffff8c;border:1px solid #291b2212;border-radius:999px;flex:none;align-items:center;min-height:31px;padding:6px 13px;font-size:11px;font-weight:680;display:inline-flex}.date48-places-filters span.is-active{color:#b71d4d;background:#e6396d1b;border-color:#d42c5e21}.date48-places-intro p{color:#2c2025;margin:0;font-size:14px;font-weight:720}.date48-places-intro small{color:#2c202573;margin-top:4px;font-size:11px;display:block}.date48-place-cards{gap:14px;display:grid}.date48-place-card{cursor:pointer;background:#fffc;border:1px solid #2d1d2411;border-radius:27px;overflow:hidden;box-shadow:0 17px 42px #40232e13}.date48-place-card__visual{background:linear-gradient(#0c090a08,#0f080b7a),radial-gradient(circle at 18% 36%,#ffc581e6 0 2%,#0000 3%),radial-gradient(circle at 70% 29%,#ffb169cc 0 2%,#0000 3%),radial-gradient(circle at 44% 55%,#ffc988a6 0 2%,#0000 3%),linear-gradient(135deg,#57352d,#1c2923 52%,#6b4333);height:188px;position:relative;overflow:hidden}.date48-place-card--tone-2 .date48-place-card__visual{background:linear-gradient(#0a06060a,#0f070885),radial-gradient(circle at 72% 28%,#ffbd68e6 0 2%,#0000 3%),radial-gradient(circle at 28% 40%,#ff9b57b8 0 2%,#0000 3%),linear-gradient(135deg,#403427,#4e261f 48%,#182820)}.date48-place-card--tone-3 .date48-place-card__visual{background:linear-gradient(#0a060808,#0a07098a),radial-gradient(circle at 20% 30%,#ffd289db 0 2%,#0000 3%),radial-gradient(circle at 64% 43%,#fa6c 0 2%,#0000 3%),linear-gradient(135deg,#27352d,#6e4434 55%,#2b2221)}.date48-place-card__lights{background:linear-gradient(90deg,#0000 0 15%,#ffffff0d 15% 16%,#0000 16% 42%,#ffffff0a 42% 43%,#0000 43%),linear-gradient(#0000 45%,#0c070885);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__visual-label{color:#ffffffe6;text-shadow:0 2px 14px #0000006b;font-size:12px;font-weight:760;position:absolute;bottom:14px;left:16px}.date48-place-card__title-row{justify-content:space-between;gap:16px;display:flex}.date48-place-card__title-row h2{color:#21181c;letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500;line-height:1.04}.date48-place-card__title-row p{color:#21181c80;margin:5px 0 0;font-size:11px;line-height:1.3}.date48-place-card__title-row>span{color:#c52b59;font-size:27px;line-height:1}.date48-place-card__tags,.date48-place-detail-tags{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.date48-place-card__tags span,.date48-place-detail-tags span{color:#2a1c2294;background:#fbf5f2;border:1px solid #321e260e;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:700}.date48-place-card__meta{border-top:1px solid #2d1d2411;justify-content:space-between;align-items:end;gap:12px;margin-top:13px;padding-top:12px;display:flex}.date48-place-card__meta strong{color:#332228;font-size:13px}.date48-place-card__meta strong small{color:#33222870;font-size:10px;font-weight:600}.date48-place-card__meta>span{color:#b52150;font-size:12px;font-weight:760}.date48-places-loading{gap:14px;display:grid}.date48-places-loading i{background:linear-gradient(100deg,#35202809,#d32a5b12,#35202809) 0 0/220% 100%;border-radius:27px;height:285px;animation:1.3s ease-in-out infinite date48IdeasShimmer;display:block}.date48-places-error{color:#322228;text-align:center;background:#ffffffad;border-radius:24px;padding:28px 20px}.date48-places-error button{color:#bd2051;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:12px;font-weight:760}@media (max-width:560px){.date48-places-entry{border-radius:25px;grid-template-columns:58px minmax(0,1fr);gap:14px;padding:19px 17px}}@media (max-width:560px){.date48-places-entry__icon{width:54px;height:54px}}@media (max-width:560px){.date48-places-entry h2{font-size:25px}}@media (max-width:560px){.date48-places-page,.date48-place-detail-page,.date48-plan-page{width:100%}}@media (max-width:560px){.date48-place-card__visual{height:172px}}@media (max-width:560px){.date48-place-card__body{padding:15px 16px 17px}}@media (max-width:560px){.date48-place-card__title-row h2{font-size:22px}}.date48-places-page,.date48-place-detail-page,.date48-plan-page{--d48-ink:#24191e;--d48-muted:#24191e7a;--d48-pink:#e72d68;--d48-pink-soft:#f35c88;--d48-milk:#fffaf8;--d48-card:#ffffffe0;padding-left:18px;padding-right:18px;padding-bottom:calc(150px + env(safe-area-inset-bottom))}.date48-places-top{grid-template-columns:38px 1fr 38px;padding-top:5px;padding-bottom:13px}.date48-places-top h1{letter-spacing:-.045em;font-size:29px}.date48-places-top p{color:#ca2459;letter-spacing:.14em;font-size:9px}.date48-places-back{background:#ffffffb8;width:36px;height:36px;box-shadow:0 7px 22px #48263209}.date48-places-filters{gap:7px;padding-bottom:16px}.date48-places-filters span{background:#ffffffb8;border-color:#2f1c2411;min-height:33px;padding:6px 14px;font-size:11px}.date48-places-filters span.is-active{color:#c31f52;background:linear-gradient(135deg,#f9689124,#e1295f14)}.date48-places-intro{padding:2px 3px 17px}.date48-places-intro p{letter-spacing:-.015em;max-width:320px;font-size:15px;line-height:1.16}.date48-places-intro small{margin-top:5px;font-size:11px}.date48-place-cards{gap:13px}.date48-place-card{background:#ffffffe8;border-color:#331f270e;border-radius:25px;box-shadow:0 18px 45px #582c3b11,inset 0 1px #ffffffe6}.date48-place-card__visual{isolation:isolate;border-radius:0;height:148px}.date48-place-card__visual:before,.date48-place-detail-hero:before{content:"";z-index:0;opacity:.82;background:radial-gradient(at 21% 78%,#160d0be6 0 9%,#0000 10%),radial-gradient(at 50% 81%,#180e0be0 0 11%,#0000 12%),radial-gradient(at 79% 78%,#160d0bdb 0 9%,#0000 10%),linear-gradient(90deg,#0000 0 13%,#fcdaa90e 13% 15%,#0000 15% 42%,#fcdaa90a 42% 44%,#0000 44%);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__visual:after,.date48-place-detail-hero:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 16% 31%,#ffbe6bf7 0 1.3%,#ffbe6b3d 2.5%,#0000 5%),radial-gradient(circle at 68% 27%,#ffae5df2 0 1.2%,#ffae5d3b 2.6%,#0000 5%),radial-gradient(circle at 47% 54%,#ffcf89b8 0 1%,#0000 4%),linear-gradient(#0000 34%,#0d070985);position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__lights{z-index:2}.date48-place-card__visual-label{z-index:3;letter-spacing:-.01em;font-size:11px;bottom:13px;left:17px}.date48-place-card__body{padding:14px 17px 16px}.date48-place-card__title-row{align-items:start}.date48-place-card__title-row h2{max-width:305px;font-size:23px;line-height:.99}.date48-place-card__title-row p{margin-top:6px;font-size:10px}.date48-place-card__title-row>span{margin-top:1px;font-size:25px}.date48-place-card__tags{gap:5px;margin-top:10px}.date48-place-card__tags span{background:#fcf5f2;padding:4px 8px;font-size:8px}.date48-place-card__meta{margin-top:10px;padding-top:10px}.date48-place-card__meta strong{font-size:13px}.date48-place-card__meta>span{color:#d0255b;font-size:12px}.date48-places-entry{background:radial-gradient(circle at 104% -10%,#ef3d7421,#0000 38%),linear-gradient(145deg,#fffdfbf5,#fff6f7de);border-radius:26px;grid-template-columns:58px minmax(0,1fr);gap:15px;margin-top:17px;padding:20px 18px;box-shadow:0 20px 50px #682d3e11}.date48-places-entry__icon{width:56px;height:56px;box-shadow:0 12px 27px #d5275b38}.date48-places-entry__copy h2{font-size:26px}.date48-places-entry__preview{background:#ffffffb0;border-radius:16px;margin-top:13px;padding:12px 13px}.date48-places-entry button{background:linear-gradient(110deg,#f04e7d,#e42262);border-radius:15px;min-height:47px}@media (max-width:560px){.date48-places-page,.date48-plan-page{padding-left:16px;padding-right:16px}}@media (max-width:560px){.date48-place-card__visual{height:144px}}@media (max-width:560px){.date48-place-card__title-row h2{font-size:22px}}.date48-places-page{padding-top:4px!important}.date48-places-page,.date48-plan-page{padding-bottom:calc(145px + env(safe-area-inset-bottom))!important}.date48-place-card__title-row h2{max-width:82%}@media (max-width:560px){.date48-places-top{padding-top:8px}}.date48-place-card__image,.date48-place-detail-hero__image{object-fit:cover;object-position:center;z-index:0;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.date48-place-card__visual.has-photo:before,.date48-place-detail-hero.has-photo:before{z-index:1;opacity:1;background:linear-gradient(#140a0e08 0%,#140a0e05 45%,#140a0e7d 100%)}.date48-place-card__visual.has-photo:after,.date48-place-detail-hero.has-photo:after{z-index:2;background:linear-gradient(#180b0f12 0%,#0000 42%,#16080d66 100%)}.date48-place-card__visual.has-photo .date48-place-card__lights,.date48-place-detail-hero.has-photo .date48-place-detail-hero__lights{z-index:3;opacity:.12}.date48-place-card__visual.has-photo .date48-place-card__visual-label{z-index:4;color:#fff;text-shadow:0 2px 14px #0000004d}.date48-place-card__visual.has-photo .date48-place-heart{z-index:5}.date48-places-more-head{padding:24px 4px 2px}.date48-places-more-head p{letter-spacing:-.02em;color:#33232a;margin:0;font-size:22px;font-weight:650}.date48-places-more-head small{letter-spacing:.02em;color:#33232a8a;margin-top:4px;font-size:11px;display:block}.date48-places-filters{scrollbar-width:none}.date48-places-filters::-webkit-scrollbar{display:none}.date48-places-filters button{box-sizing:border-box;color:#271b2191;min-height:33px;font:inherit;white-space:nowrap;cursor:pointer;background:#ffffffb8;border:1px solid #2f1c2411;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:6px 14px;font-size:11px;font-weight:680;display:inline-flex}.date48-places-filters button:active{transform:scale(.97)}.date48-places-filters button.is-active{color:#c31f52;background:linear-gradient(135deg,#f9689124,#e1295f14);border-color:#d42c5e21}.date48-places-empty{text-align:center;background:#ffffffbd;border:1px solid #331f270e;border-radius:24px;margin-top:10px;padding:28px 20px}.date48-places-empty strong{color:#2b1d23;font-size:16px;font-weight:760;display:block}.date48-places-empty p{color:#2b1d237a;max-width:290px;margin:7px auto 0;font-size:12px;line-height:1.45}.date48-places-more-button{color:#b71f4f;width:100%;min-height:52px;font:inherit;cursor:pointer;background:#ffffffd1;border:1px solid #c426541a;border-radius:18px;margin-top:16px;font-size:13px;font-weight:760;box-shadow:0 12px 30px #4c26320b}.date48-places-more-button small{color:#bd2452;background:#e1295f13;border-radius:999px;margin-left:8px;padding:3px 7px;font-size:10px;font-weight:800;display:inline-block}.date48-place-card__description{color:#37252bb8;margin:10px 0 0;font-size:11px;line-height:1.42}.date48-place-card__meta strong.is-pending{color:#37252b8f;font-size:11px;font-weight:650}.date48-place-card__scenarios{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.date48-place-card__scenarios span{color:#702d43c7;background:#d32a5c0e;border-radius:999px;align-items:center;min-height:25px;padding:4px 8px;font-size:9px;font-weight:700;line-height:1.2;display:inline-flex}.date48-places-page .date48-discovery-subtitle{text-align:center;color:#88807f;margin:0 0 20px;font-size:14px;line-height:1.5}.date48-places-page .date48-discovery-search{background:#ffffffe0;border:1px solid #e7dfdd;border-radius:21px;align-items:center;gap:12px;min-height:58px;margin:0 0 18px;padding:0 16px;display:flex;box-shadow:0 3px 14px #3c1e2309}.date48-places-page .date48-discovery-search-icon{color:#a34a68;font-size:32px;line-height:1}.date48-places-page .date48-discovery-search input{color:#292525;background:0 0;border:0;outline:0;flex:1;width:100%;min-width:0;font-family:inherit;font-size:15px}.date48-places-page .date48-discovery-search input::placeholder{color:#999293}.date48-places-page .date48-discovery-search input::-webkit-search-cancel-button{display:none}.date48-places-page .date48-discovery-search button{color:#a34a68;cursor:pointer;background:0 0;border:0;flex:none;font-size:28px}@media (max-width:480px){.date48-places-page .date48-discovery-search{min-height:54px}}.date48-places-page .date48-discovery-collections{margin:16px 2px 22px}.date48-places-page .date48-discovery-section-heading h2{margin:0 0 5px;font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:400;line-height:1.15}.date48-places-page .date48-discovery-section-heading p{color:#887e7b;margin:0 0 14px;font-size:12px}.date48-places-page .date48-discovery-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.date48-places-page .date48-discovery-collection{text-align:left;color:#4d2837;cursor:pointer;background:linear-gradient(145deg,#f8e8dd,#dfb5ba);border:1px solid #8046501f;border-radius:19px;flex-direction:column;justify-content:flex-end;align-items:flex-start;min-width:0;min-height:142px;padding:15px 12px;display:flex}.date48-places-page .date48-discovery-collection--evening{background:linear-gradient(145deg,#ead8dc,#c795a3)}.date48-places-page .date48-discovery-collection__symbol{margin-bottom:auto;font-size:28px;line-height:1}.date48-places-page .date48-discovery-collection strong{font-family:Georgia,Times New Roman,serif;font-size:17px;font-weight:500;line-height:1.15}.date48-places-page .date48-discovery-collection small{margin-top:5px;font-size:11px}.date48-places-page .date48-place-cards{gap:11px}.date48-places-page .date48-place-cards>.date48-place-card{border-radius:19px;grid-template-columns:112px minmax(0,1fr);align-items:stretch;min-height:128px;display:grid}.date48-places-page .date48-place-card__visual{border-radius:18px 0 0 18px;height:100%;min-height:128px}.date48-places-page .date48-place-card__image{object-fit:cover;width:100%;height:100%}.date48-places-page .date48-place-card__visual-label{font-size:10px;bottom:9px;left:8px}.date48-places-page .date48-place-heart{top:7px;right:7px}.date48-places-page .date48-place-card__body{flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:12px;display:flex}.date48-places-page .date48-place-card__title-row{gap:5px;min-width:0}.date48-places-page .date48-place-card__title-row h2{overflow-wrap:anywhere;font-size:18px;line-height:1.12}.date48-places-page .date48-place-card__title-row p{margin-top:4px;font-size:11px}.date48-places-page .date48-place-card__description,.date48-places-page .date48-place-card__scenarios{display:none}.date48-places-page .date48-place-card__tags{flex-wrap:wrap;gap:4px;display:flex}.date48-places-page .date48-place-card__tags span{padding:3px 7px;font-size:10px}.date48-places-page .date48-place-card__meta{flex-wrap:wrap;gap:5px;margin-top:2px}@media (max-width:360px){.date48-places-page .date48-place-cards>.date48-place-card{grid-template-columns:100px minmax(0,1fr)}}@media (max-width:360px){.date48-places-page .date48-place-card__title-row h2{font-size:16px}}@media (max-width:360px){.date48-places-page .date48-discovery-collection{min-height:130px}}.date48-places-page .date48-discovery-collection{isolation:isolate;position:relative;overflow:hidden}.date48-places-page .date48-discovery-collection__photo{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.date48-places-page .date48-discovery-collection:has(.date48-discovery-collection__photo){color:#fff}.date48-places-page .date48-discovery-collection:has(.date48-discovery-collection__photo):before{content:"";z-index:-1;background:linear-gradient(#0f0a0f14,#1c0c1638 35%,#1c0c16cc);position:absolute;top:0;bottom:0;left:0;right:0}.date48-places-page .date48-discovery-collection strong,.date48-places-page .date48-discovery-collection small,.date48-places-page .date48-discovery-collection__symbol{z-index:1;position:relative}.date48-places-page .date48-discovery-collection:has(.date48-discovery-collection__photo) strong{color:#fff;text-shadow:0 1px 6px #0000004d}.date48-places-page .date48-discovery-collection:has(.date48-discovery-collection__photo) small{color:#fff;text-shadow:0 1px 6px #0000004d}.date48-places-page .date48-discovery-tools{gap:14px;margin:0 2px 14px;display:grid}.date48-places-page .date48-discovery-budget{scrollbar-width:none;gap:7px;padding:2px 0 6px;display:flex;overflow-x:auto}.date48-places-page .date48-discovery-budget button{color:#765b63;font:inherit;cursor:pointer;background:#fffaf8;border:1px solid #e4d5d4;border-radius:999px;flex:none;padding:9px 12px;font-size:12px}.date48-places-page .date48-discovery-budget button.is-active{color:#fff;background:#85445c;border-color:#85445c}.date48-places-page .date48-discovery-sort{color:#756b6b;justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.date48-places-page .date48-discovery-sort select{color:#4d3540;min-width:0;max-width:65%;font:inherit;background:#fffaf8;border:1px solid #e4d5d4;border-radius:12px;padding:9px 11px;font-size:12px}

/* DATE48 CSS SOURCE 159: /assets/date48-places-layout-v2a-20261016.css */

/* DATE48 PLACES SEARCH / LAYOUT V2A
   Layout-only overrides. Preserve both application themes.
   No global navigation or chat styles.
*/

@media screen and (max-width: 520px) {

  html body .date48-places-page {
    padding-top: 0 !important;
  }

  html body .date48-places-page .date48-places-top {
    padding-top: 0 !important;
    padding-bottom: 5px !important;
  }

  html body .date48-places-page .date48-places-top h1 {
    font-size: clamp(34px, 9vw, 42px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.025em !important;
  }

  html body .date48-places-page .date48-discovery-subtitle {
    font-size: 13px !important;
    line-height: 1.4 !important;
    margin-bottom: 12px !important;
  }

  html body .date48-places-page .date48-discovery-search {
    min-height: 52px !important;
    border-radius: 19px !important;
    margin-bottom: 14px !important;
    padding-left: 15px !important;
  }

  html body .date48-places-page .date48-discovery-search-icon {
    display: inline-block !important;
    position: relative !important;
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
    font-size: 0 !important;
  }

  html body .date48-places-page .date48-discovery-search-icon::before {
    content: "" !important;
    position: absolute !important;
    width: 13px !important;
    height: 13px !important;
    border: 2px solid currentColor !important;
    border-radius: 50% !important;
    top: 1px !important;
    left: 1px !important;
  }

  html body .date48-places-page .date48-discovery-search-icon::after {
    content: "" !important;
    position: absolute !important;
    width: 9px !important;
    height: 2px !important;
    background: currentColor !important;
    top: 18px !important;
    left: 15px !important;
    transform: rotate(45deg) !important;
    border-radius: 2px !important;
  }

  html body .date48-places-page .date48-discovery-collections {
    margin-top: 8px !important;
    margin-bottom: 13px !important;
  }

  html body .date48-places-page
  .date48-discovery-section-heading h2 {
    font-size: 21px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
    margin-bottom: 9px !important;
  }

  html body .date48-places-page
  .date48-discovery-section-heading p {
    display: none !important;
  }

  html body .date48-places-page
  .date48-discovery-collection-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    padding-bottom: 4px !important;
  }

  html body .date48-places-page
  .date48-discovery-collection-grid::-webkit-scrollbar {
    display: none !important;
  }

  html body .date48-places-page
  .date48-discovery-collection {
    flex: 0 0 min(48vw, 206px) !important;
    width: min(48vw, 206px) !important;
    min-height: 150px !important;
    max-height: 168px !important;
    padding: 12px !important;
    scroll-snap-align: start !important;
  }

  html body .date48-places-page
  .date48-discovery-collection strong {
    font-size: 19px !important;
    line-height: 1.1 !important;
  }

  html body .date48-places-page
  .date48-places-filters {
    padding-top: 2px !important;
    padding-bottom: 8px !important;
    gap: 7px !important;
  }

  html body .date48-places-page
  .date48-discovery-budget {
    padding-bottom: 2px !important;
  }

  html body .date48-places-page
  .date48-places-intro {
    padding-bottom: 13px !important;
  }

  html body .date48-places-page
  .date48-place-cards {
    gap: 10px !important;
  }
}


/* DATE48 CSS SOURCE 160: /assets/date48-places-reference-v2b-20261016.css */

/* Date48 Places Reference V2B.
   Scope: /places catalogue only.
   Existing light/dark theme variables retained.
*/

@media (max-width: 520px) {

  html body .date48-places-page {
    padding-top: 0 !important;
  }

  html body .date48-places-page .date48-places-top {
    padding-top: 0 !important;
    padding-bottom: 4px !important;
  }

  html body .date48-places-page .date48-places-top h1 {
    font-size: clamp(31px, 7.8vw, 38px) !important;
    line-height: 1.08 !important;
  }

  html body .date48-places-page .date48-discovery-subtitle {
    font-size: 12px !important;
    margin-bottom: 11px !important;
  }

  html body .date48-places-page .date48-discovery-search {
    min-height: 48px !important;
    margin-bottom: 10px !important;
    border-radius: 18px !important;
  }

  html body .date48-places-page .date48-places-filters {
    padding: 1px 0 4px !important;
    margin: 0 0 12px !important;
    gap: 7px !important;
  }

  html body .date48-places-page .date48-discovery-collections {
    margin: 0 0 10px !important;
  }

  html body .date48-places-page
  .date48-discovery-section-heading h2 {
    font-family: inherit !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    margin: 0 0 9px !important;
  }

  html body .date48-places-page
  .date48-discovery-section-heading p {
    display: none !important;
  }

  html body .date48-places-page
  .date48-discovery-collection-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    padding-bottom: 5px !important;
  }

  html body .date48-places-page
  .date48-discovery-collection {
    box-sizing: border-box !important;
    flex: 0 0 min(29vw, 132px) !important;
    width: min(29vw, 132px) !important;
    min-height: 158px !important;
    height: 158px !important;
    max-height: 158px !important;
    border-radius: 15px !important;
    padding: 10px !important;
    scroll-snap-align: start !important;
  }

  html body .date48-places-page
  .date48-discovery-collection strong {
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
  }

  html body .date48-places-page
  .date48-discovery-collection small {
    font-size: 11px !important;
    line-height: 1.2 !important;
  }

  html body .date48-places-page .date48-discovery-tools {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
    align-items: start !important;
    margin: 0 0 10px !important;
  }

  html body .date48-places-page
  .date48-places-filter-popover {
    position: relative !important;
    min-width: 0 !important;
    z-index: 1;
  }

  html body .date48-places-page
  .date48-places-filter-popover[open] {
    z-index: 30 !important;
  }

  html body .date48-places-page
  .date48-places-filter-popover summary {
    box-sizing: border-box !important;
    list-style: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    background: var(--d48-card, #fff) !important;
    color: var(--d48-ink, inherit) !important;
    border: 1px solid #aaa4a44d !important;
    border-radius: 13px !important;
    min-height: 37px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 5px 3px !important;
    font-size: clamp(10px, 2.65vw, 12px) !important;
    font-weight: 600 !important;
  }

  html body .date48-places-page
  .date48-places-filter-popover summary::-webkit-details-marker {
    display: none !important;
  }

  html body .date48-places-page .date48-filter-options,
  html body .date48-places-page
  .date48-places-filter-popover .date48-discovery-budget {
    position: absolute !important;
    top: calc(100% + 7px) !important;
    left: 0 !important;
    box-sizing: border-box !important;
    width: min(235px, calc(100vw - 36px)) !important;
    max-height: 300px !important;
    overflow-y: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    padding: 9px !important;
    background: var(--d48-milk, #fffaf8) !important;
    border: 1px solid #aaa4a44d !important;
    border-radius: 15px !important;
    box-shadow: 0 14px 34px #00000020 !important;
  }

  html body .date48-places-page
  .date48-places-filter-popover:nth-of-type(n+3)
  .date48-filter-options {
    left: auto !important;
    right: 0 !important;
  }

  html body .date48-places-page
  .date48-filter-options button {
    font: inherit !important;
    font-size: 13px !important;
    text-align: left !important;
    cursor: pointer !important;
    color: var(--d48-ink, inherit) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 9px !important;
    padding: 10px !important;
  }

  html body .date48-places-page .date48-places-intro {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 2px 8px !important;
    padding: 4px 2px 11px !important;
  }

  html body .date48-places-page .date48-places-intro > p {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    font-size: 16px !important;
  }

  html body .date48-places-page .date48-places-intro > small {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin: 0 !important;
  }

  html body .date48-places-page
  .date48-places-intro > .date48-discovery-sort {
    grid-column: 2 !important;
    grid-row: 1 / 3 !important;
  }

  html body .date48-places-page
  .date48-places-intro .date48-discovery-sort > span {
    display: none !important;
  }

  html body .date48-places-page
  .date48-places-intro .date48-discovery-sort select {
    max-width: 145px !important;
    font-size: 12px !important;
    padding: 8px !important;
  }
}


/* DATE48 CSS SOURCE 161: /assets/date48-places-dark-polish-v6-20261019.css */

/*
 * DATE48 — PLACES DARK POLISH V2D
 * Dark theme only. No geometry / no JS changes.
 */

:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
) {
  --d48-places-dark-surface-1: rgba(20, 13, 18, 0.96);
  --d48-places-dark-surface-2: rgba(33, 20, 28, 0.98);
  --d48-places-dark-surface-3: rgba(48, 27, 40, 0.98);
  --d48-places-dark-border: rgba(223, 186, 202, 0.14);
  --d48-places-dark-border-strong: rgba(223, 186, 202, 0.24);
  --d48-places-dark-ink: #f8eef3;
  --d48-places-dark-muted: rgba(248, 238, 243, 0.72);
  --d48-places-dark-accent: #d86b97;
  --d48-places-dark-accent-2: #a84c72;
  --d48-places-dark-shadow: 0 22px 52px rgba(0, 0, 0, 0.46);
}

/* FILTER TRIGGERS / CHIP-LIKE BUTTONS IN DARK THEME */
:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-filters button,
  .date48-discovery-filter-row button,
  .date48-places-filters button,
  .date48-places-toolbar button,
  .date48-discovery-budget button,
  .date48-discovery-nearby button,
  .date48-discovery-cuisine button,
  .date48-discovery-atmosphere button
) {
  background: var(--d48-places-dark-surface-2) !important;
  color: var(--d48-places-dark-ink) !important;
  border: 1px solid var(--d48-places-dark-border-strong) !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22) !important;
}

:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-filters button:hover,
  .date48-discovery-filter-row button:hover,
  .date48-places-filters button:hover,
  .date48-places-toolbar button:hover,
  .date48-discovery-budget button:hover,
  .date48-discovery-nearby button:hover,
  .date48-discovery-cuisine button:hover,
  .date48-discovery-atmosphere button:hover
) {
  background: var(--d48-places-dark-surface-3) !important;
  border-color: rgba(223, 186, 202, 0.32) !important;
}

:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-filters .is-active,
  .date48-discovery-filter-row .is-active,
  .date48-places-filters .is-active,
  .date48-places-toolbar .is-active,
  button[aria-pressed="true"],
  button[data-active="true"]
) {
  background: linear-gradient(
    180deg,
    rgba(176, 82, 120, 0.98),
    rgba(123, 51, 82, 0.98)
  ) !important;
  color: #fff !important;
  border-color: rgba(219, 145, 175, 0.34) !important;
}

/* POPOVER / DROPDOWN PANELS */
:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-popover,
  .date48-filter-popover,
  .date48-places-popover,
  [data-date48-popover],
  [data-date48-places-popover],
  [role="menu"],
  [role="listbox"],
  [role="dialog"]
) {
  background: var(--d48-places-dark-surface-1) !important;
  color: var(--d48-places-dark-ink) !important;
  border: 1px solid var(--d48-places-dark-border-strong) !important;
  box-shadow: var(--d48-places-dark-shadow) !important;
}

/* ITEMS INSIDE POPOVERS */
:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-popover *,
  .date48-filter-popover *,
  .date48-places-popover *,
  [data-date48-popover] *,
  [data-date48-places-popover] *,
  [role="menu"] *,
  [role="listbox"] *,
  [role="dialog"] *
) {
  color: var(--d48-places-dark-ink) !important;
  border-color: var(--d48-places-dark-border) !important;
}

:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-popover button,
  .date48-filter-popover button,
  .date48-places-popover button,
  [data-date48-popover] button,
  [data-date48-places-popover] button,
  [role="menu"] button,
  [role="listbox"] button,
  [role="option"],
  li
) {
  background: transparent !important;
  color: var(--d48-places-dark-ink) !important;
}

:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-popover button:hover,
  .date48-filter-popover button:hover,
  .date48-places-popover button:hover,
  [data-date48-popover] button:hover,
  [data-date48-places-popover] button:hover,
  [role="menu"] button:hover,
  [role="listbox"] button:hover,
  [role="option"]:hover,
  li:hover
) {
  background: rgba(154, 72, 107, 0.18) !important;
  color: #fff !important;
}

/* SELECTED / ACTIVE OPTION INSIDE POPUP */
:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .is-selected,
  [aria-selected="true"],
  [data-selected="true"],
  [data-state="checked"]
) {
  color: #fff !important;
}

/* SMALL LEFT COLOR SWATCH / MARKERS IN OPEN LISTS */
:is(
  html[data-theme="dark"],
  body[data-theme="dark"],
  html.dark,
  body.dark,
  html.theme-dark,
  body.theme-dark,
  [data-theme="dark"]
)
:is(.date48-date-places-page, .date48-discovery-page, .date48-discovery-root, .date48-places-top)
:is(
  .date48-discovery-popover input,
  .date48-filter-popover input,
  .date48-places-popover input,
  [data-date48-popover] input,
  [data-date48-places-popover] input
) {
  accent-color: var(--d48-places-dark-accent) !important;
}


/* DATE48 CSS SOURCE 162: /assets/date48-places-dark-fix-v6-20261019.css */

/* DATE48 PLACES DARK FIX V2E */
/* Exact selectors for the real Places JSX elements. */

:is(
  [data-theme="dark"],
  [data-color-scheme="dark"],
  [data-mode="dark"],
  .dark,
  .theme-dark
)
.date48-places-page
.date48-discovery-tools
.date48-places-filter-popover > summary {
  background: #291c25 !important;
  color: #f9edf3 !important;
  border: 1px solid rgba(223,165,190,.23) !important;
  box-shadow: 0 4px 15px rgba(0,0,0,.18) !important;
}

:is(
  [data-theme="dark"],
  [data-color-scheme="dark"],
  [data-mode="dark"],
  .dark,
  .theme-dark
)
.date48-places-page
.date48-discovery-tools
.date48-places-filter-popover[open] > summary {
  background: #47283a !important;
  color: #fff !important;
  border-color: rgba(227,138,177,.45) !important;
}

:is(
  [data-theme="dark"],
  [data-color-scheme="dark"],
  [data-mode="dark"],
  .dark,
  .theme-dark
)
.date48-places-page
.date48-discovery-tools
.date48-places-filter-popover
:is(.date48-filter-options, .date48-discovery-budget) {
  background: #21171e !important;
  color: #f9edf3 !important;
  border: 1px solid rgba(226,174,196,.23) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.48) !important;
}

:is(
  [data-theme="dark"],
  [data-color-scheme="dark"],
  [data-mode="dark"],
  .dark,
  .theme-dark
)
.date48-places-page
.date48-discovery-tools
.date48-places-filter-popover
:is(.date48-filter-options, .date48-discovery-budget) button {
  background: transparent !important;
  color: #f9edf3 !important;
  border-color: rgba(226,174,196,.16) !important;
  box-shadow: none !important;
}

:is(
  [data-theme="dark"],
  [data-color-scheme="dark"],
  [data-mode="dark"],
  .dark,
  .theme-dark
)
.date48-places-page
.date48-discovery-tools
.date48-places-filter-popover
:is(.date48-filter-options, .date48-discovery-budget)
button:is(:hover, :focus-visible, .is-active) {
  background: #4b293a !important;
  color: #fff !important;
  border-radius: 9px !important;
}


/* DATE48 CSS SOURCE 163: /assets/date48-places-dark-real-v2f-20261016.css */

/*
  DATE48 PLACES — DARK THEME REAL V2F
  Matches html[data-date48-theme="dark"].
  Scoped to four Places filters and their dropdowns.
*/

/* Four filter buttons */
html[data-date48-theme="dark"] body
.date48-places-page
.date48-discovery-tools
details.date48-places-filter-popover > summary {
  background: #2b1d27 !important;
  color: #f8edf3 !important;
  border: 1px solid rgba(223, 165, 190, .25) !important;
  box-shadow: 0 5px 16px rgba(0, 0, 0, .2) !important;
}

/* Open filter button */
html[data-date48-theme="dark"] body
.date48-places-page
.date48-discovery-tools
details.date48-places-filter-popover[open] > summary {
  background: #482a3b !important;
  color: #fff !important;
  border-color: rgba(227, 138, 177, .55) !important;
}

/* Dropdown panel including Budget and Cuisine */
html[data-date48-theme="dark"] body
.date48-places-page
.date48-discovery-tools
details.date48-places-filter-popover
:is(.date48-filter-options, .date48-discovery-budget) {
  background: #21171e !important;
  color: #f8edf3 !important;
  border: 1px solid rgba(226, 174, 196, .24) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .5) !important;
}

/* Options inside dropdowns */
html[data-date48-theme="dark"] body
.date48-places-page
.date48-discovery-tools
details.date48-places-filter-popover
:is(.date48-filter-options, .date48-discovery-budget) button {
  background: transparent !important;
  color: #f8edf3 !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Selected budget / hovered and keyboard-focused items */
html[data-date48-theme="dark"] body
.date48-places-page
.date48-discovery-tools
details.date48-places-filter-popover
:is(.date48-filter-options, .date48-discovery-budget)
button:is(.is-active, :hover, :focus-visible) {
  background: #513044 !important;
  color: #fff !important;
  border-color: rgba(229, 154, 186, .3) !important;
  border-radius: 9px !important;
}

