/* Dating shares the site's paper and wine palette, with quieter form surfaces. */
.dating-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin:30px 0; }
.dating-heading h1 { font-size:clamp(30px,4vw,52px); line-height:1.08; margin:10px 0 14px; letter-spacing:-1px; }
.dating-heading p { max-width:600px; color:var(--muted); font-size:15px; line-height:1.6; }
.dating-status { white-space:nowrap; padding:9px 13px; border:1px solid var(--line); border-radius:999px; font-size:12px; background:var(--paper); }
.dating-status.is-published { color:#286649; background:#e6f2e9; border-color:#c2dfcc; }
.dating-editor { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr); gap:28px; align-items:start; }
.dating-media-panel,.dating-form-section,.dating-save-panel { padding:24px; background:var(--paper); border:1px solid var(--line); border-radius:18px; min-width:0; }
.dating-media-panel { position:sticky; top:98px; max-height:calc(100dvh - 120px); overflow-y:auto; scrollbar-width:thin; }
.dating-media-panel h2 { margin:8px 0; font-size:24px; }
.dating-section-number { font-size:12px; color:var(--wine); font-weight:700; letter-spacing:1px; }
.dating-media-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:18px 0; }
.dating-media-item { position:relative; min-width:0; border-radius:10px; background:#e8dfd5; overflow:hidden; }
.dating-media-item:first-child { grid-column:1 / -1; }
.dating-media-item img { width:100%; aspect-ratio:1; object-fit:cover; display:block; }
.dating-media-item:first-child img { aspect-ratio:3/4; }
.dating-media-kind { position:absolute; top:8px; left:8px; font-size:10px; border-radius:99px; padding:5px 7px; color:white; background:rgba(35,20,20,.65); }
.dating-media-actions { display:flex; justify-content:space-between; gap:2px; background:var(--paper); padding:5px; }
.dating-media-actions button { border:0; background:transparent; color:var(--wine); min-width:28px; min-height:32px; font-size:16px; cursor:pointer; }
.dating-media-actions button:disabled { opacity:.3; }
.dating-upload { position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:8px; border:1px dashed #ba9295; border-radius:12px; padding:20px 12px; background:#f7f0e9; cursor:pointer; }
.dating-upload > span { font-size:30px; color:var(--wine); }
.dating-upload small,.dating-privacy-note { font-size:12px; color:var(--muted); line-height:1.5; }
.dating-upload input { position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; }
.dating-upload:focus-within { outline:2px solid var(--wine); outline-offset:3px; }
.dating-upload:has(input:disabled) { opacity:.55; cursor:default; }
.dating-privacy-note { margin-top:14px; }
.dating-media-panel progress { width:100%; accent-color:var(--wine); margin-top:12px; }
.dating-fields { display:grid; gap:18px; min-width:0; }
.dating-form-section { display:grid; gap:14px; margin:0; }
.dating-form-section h2 { font-size:20px; font-weight:700; margin:0; }
.dating-form-section h2 span { margin-right:8px; }
.dating-form-section label { display:grid; gap:7px; font-size:13px; font-weight:600; min-width:0; }
.dating-form-section input:not([type=radio]):not([type=checkbox]),.dating-form-section select,.dating-form-section textarea { width:100%; min-width:0; padding:12px 13px; font-size:15px; color:var(--ink); background:#fffdf9; border:1px solid var(--line); border-radius:9px; font-family:inherit; font-weight:400; }
.dating-form-section textarea { resize:vertical; line-height:1.5; }
.dating-field-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.dating-field-label { font-size:13px; font-weight:600; }
.dating-field-label small { font-weight:400; color:var(--muted); }
.dating-goals { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.dating-goals label,.dating-interests label { display:block; position:relative; cursor:pointer; }
.dating-goals input,.dating-interests input { position:absolute; opacity:0; width:1px; height:1px; }
.dating-goals span,.dating-interests span { display:block; border:1px solid var(--line); border-radius:9px; padding:11px 12px; font-size:12px; font-weight:500; }
.dating-goals input:checked + span,.dating-interests input:checked + span { background:#f2e0e0; color:var(--wine); border-color:#b9838c; }
.dating-goals input:focus-visible + span,.dating-interests input:focus-visible + span { outline:2px solid var(--wine); outline-offset:2px; }
.dating-interests { display:flex; flex-wrap:wrap; gap:6px; }
.dating-interests span { border-radius:999px; padding:7px 10px; font-size:11px; }
.dating-about-count { font-size:12px; color:var(--muted); text-align:right; margin-top:-8px; }
.dating-save-panel p,.dating-pause p { font-size:13px; line-height:1.5; color:var(--muted); margin:0 0 14px; }
.dating-editor-actions { display:flex; flex-wrap:wrap; gap:8px; }
.dating-editor-actions .button { font-size:13px; padding:11px 15px; }
.dating-pause { margin:22px 0; padding:20px; border:1px dashed var(--line); border-radius:14px; }
.dating-preview-dialog { width:min(960px,calc(100% - 24px)); max-height:90dvh; padding:28px; border:0; border-radius:18px; background:var(--paper); color:var(--ink); overflow:auto; }
.dating-preview-dialog::backdrop { background:rgba(25,13,13,.6); }
.dating-preview-dialog .modal-close { position:absolute; right:12px; top:10px; }
.dating-preview-dialog > .eyebrow { display:block; margin-bottom:18px; }
.dating-profile-view { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; padding-top:16px; }
.dating-gallery { min-width:0; }
.dating-gallery-main { width:100%; aspect-ratio:3/4; border-radius:16px; overflow:hidden; background:#e7dfd5; display:flex; align-items:center; justify-content:center; }
.dating-gallery-main img,.dating-gallery-main video { width:100%; height:100%; object-fit:contain; }
.dating-gallery-thumbs { display:flex; gap:8px; margin-top:10px; overflow:auto; }
.dating-gallery-thumbs button { flex:0 0 64px; padding:0; position:relative; border:2px solid transparent; border-radius:8px; overflow:hidden; background:transparent; }
.dating-gallery-thumbs button[aria-pressed=true] { border-color:var(--wine); }
.dating-gallery-thumbs img { width:60px; height:60px; object-fit:cover; display:block; }
.dating-gallery-thumbs span { position:absolute; bottom:3px; right:5px; color:white; text-shadow:0 1px 4px #000; }
.dating-profile-copy { min-width:0; }
.dating-profile-copy h1 { font-size:clamp(28px,3.5vw,44px); line-height:1.15; overflow-wrap:anywhere; }
.dating-profile-city { color:var(--muted); font-size:14px; margin:12px 0 20px; }
.dating-profile-goal { display:inline-block; font-size:13px; padding:9px 12px; border-radius:99px; background:#efdddd; color:var(--wine); margin-bottom:20px; }
.dating-profile-about { white-space:pre-wrap; overflow-wrap:anywhere; font-size:15px; line-height:1.7; margin-bottom:22px; }
.dating-profile-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:20px 0; }
.dating-profile-facts div { border-top:1px solid var(--line); padding-top:10px; min-width:0; }
.dating-profile-facts dt { font-size:11px; color:var(--muted); margin-bottom:5px; }
.dating-profile-facts dd { margin:0; font-size:14px; overflow-wrap:anywhere; }
.dating-profile-tags { display:flex; gap:6px; flex-wrap:wrap; }
.dating-profile-tags span { padding:6px 10px; font-size:12px; border-radius:99px; border:1px solid var(--line); }
.dating-detail-page { padding-block:30px 50px; }
.dating-catalog-page { padding-block:24px 50px; }
.dating-catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.dating-person-card { display:block; color:var(--ink); background:var(--paper); border:1px solid var(--line); border-radius:16px; overflow:hidden; text-decoration:none; }
.dating-person-card-cover { position:relative; }
.dating-person-card img { width:100%; aspect-ratio:3/4; object-fit:cover; display:block; }
.dating-person-card-cover > span { position:absolute; bottom:12px; right:12px; color:white; background:rgba(40,20,20,.5); border-radius:99px; padding:5px 10px; font-size:12px; }
.dating-person-card-copy { padding:16px; }
.dating-person-card h2 { font-size:22px; margin-bottom:6px; overflow-wrap:anywhere; }
.dating-person-card p { font-size:12px; color:var(--muted); line-height:1.5; }
.dating-person-card .dating-profile-goal { margin:10px 0 0; font-size:11px; }
.dating-pagination { display:flex; align-items:center; justify-content:center; gap:12px; margin:24px 0; }
@media(max-width:1000px){.dating-editor { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:18px; }.dating-media-panel,.dating-form-section,.dating-save-panel { padding:18px; }.dating-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:768px){.mobile-bottom-nav { grid-template-columns:repeat(4,minmax(0,1fr)); }.mobile-bottom-nav a { font-size:10px; min-width:0; padding-inline:2px; }.dating-heading { flex-wrap:wrap; gap:14px; margin:20px 0; }.dating-heading h1 { letter-spacing:-.6px; }.dating-heading p { font-size:13px; line-height:1.5; }.dating-heading .button { font-size:13px; padding:11px 15px; }.dating-editor,.dating-profile-view { grid-template-columns:minmax(0,1fr); gap:18px; }.dating-media-panel { position:static; max-height:none; overflow:visible; }.dating-form-section h2 { font-size:18px; }.dating-form-section input:not([type=radio]):not([type=checkbox]),.dating-form-section select,.dating-form-section textarea { font-size:16px; }.dating-editor-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.dating-editor-actions .wine { grid-column:1 / -1; }.dating-editor-actions .button { width:100%; text-align:center; }.dating-gallery-main { aspect-ratio:3/4; width:min(100%,48.75dvh); max-height:none; margin-inline:auto; }.dating-profile-copy h1 { font-size:30px; }.dating-preview-dialog { padding:24px 14px 18px; }.dating-catalog-grid { gap:12px; }.dating-person-card-copy { padding:12px; }.dating-person-card h2 { font-size:19px; }.dating-person-card .dating-profile-goal { padding:6px 8px; font-size:10px; }.dating-profile-about { font-size:14px; line-height:1.6; }}
@media(max-width:380px){.dating-field-pair,.dating-goals { grid-template-columns:minmax(0,1fr); }.dating-catalog-grid { grid-template-columns:minmax(0,1fr); }}
@media(prefers-reduced-motion:reduce){.dating-person-card { transition:none; }}

.dating-editor label,.dating-editor input,.dating-editor select { -webkit-tap-highlight-color:transparent; }
.dating-height { min-width:0; display:grid; gap:7px; }
.dating-height label { display:flex; justify-content:space-between; align-items:center; }
.dating-height output { font-weight:400; color:var(--muted); font-size:13px; }
.dating-form-section .dating-height input[type=range] { padding:0; border:0; background:transparent; height:28px; accent-color:var(--wine); cursor:pointer; }
.dating-height-scale { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:11px; color:var(--muted); }
.dating-height-scale button { border:0; padding:4px 0; background:transparent; font:inherit; color:var(--wine); text-decoration:underline; cursor:pointer; }
@media(max-width:767px) { .dating-form-section input:not([type=hidden]),.dating-form-section select,.dating-form-section textarea { font-size:16px; font-weight:400; } .dating-form-section label { font-weight:500; } }

.dating-personal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dating-interest-grid,.dating-artist-selected{display:flex;gap:8px;flex-wrap:wrap}.dating-interest{position:relative;display:block!important;margin:0!important}.dating-interest input{position:absolute;opacity:0;width:1px!important;height:1px}.dating-interest span{display:block;border:1px solid #e5dde1;border-radius:18px;padding:8px 13px;font-size:13px;font-weight:400;background:white;cursor:pointer}.dating-interest input:checked+span{color:#9c1636;background:#f7e8ee;border-color:#9c1636}.dating-interest input:focus-visible+span{outline:2px solid #9c1636;outline-offset:2px}.dating-music h2 small{font-size:13px;font-weight:400;color:#857780;margin-left:8px}.dating-artist-selected button,.dating-artist-results button{font-size:14px;font-weight:400;padding:9px 12px;border:1px solid #e5dde1;border-radius:8px;background:white;color:#30282d}.dating-artist-selected button{background:#f7e8ee;color:#9c1636}.dating-artist-results{display:grid;gap:5px;margin-top:8px}.dating-artist-results button{text-align:left}.dating-profile-chips{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 22px}.dating-profile-chips span{padding:7px 11px;border-radius:16px;background:#f7f2f5;font-size:14px}.dating-profile-copy h2{font-size:18px;margin-top:24px}.dating-fields .dating-form-section{margin-top:0;margin-bottom:20px}button,input,select,label{-webkit-tap-highlight-color:transparent}@media(max-width:600px){.dating-personal-grid{grid-template-columns:1fr}.dating-fields label{font-size:13px!important;font-weight:400!important}.dating-fields input,.dating-fields select,.dating-fields textarea{font-size:16px!important;font-weight:400!important}.dating-profile-chips span{font-size:13px}}

.dating-personal-editor summary{color:var(--wine);font-size:14px;cursor:pointer;padding:8px 0}.dating-personal-editor[open] summary{margin-bottom:14px}

.dating-personal-editor[hidden],[data-personal-open][hidden]{display:none!important}.dating-section-edit{border:0;background:transparent;color:var(--wine);font-size:14px;padding:8px 0;text-align:left;cursor:pointer}.dating-step-dialog,.dating-wish-dialog{border:1px solid #e9dfe3;border-radius:20px;padding:26px;width:min(540px,calc(100% - 32px));max-height:85dvh;overflow:auto;background:white;color:var(--ink)}.dating-step-dialog::backdrop,.dating-wish-dialog::backdrop{background:#25151d88;backdrop-filter:blur(3px)}.dating-step-bar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px}.dating-step-bar button{border:0;background:#f7f2f5;border-radius:50%;width:36px;height:36px;font-size:24px}.dating-step-bar h2{font-size:23px;margin:0}.dating-step-dialog h2{font-size:25px;line-height:1.2;margin:26px 0 12px}.dating-step-dialog progress{width:100%;height:5px;accent-color:var(--wine)}.dating-step-answers{display:grid;gap:8px;margin:24px 0}.dating-step-answer{padding:14px 16px;background:white;border:1px solid #e5dde1;border-radius:12px;text-align:left;color:var(--ink);font-size:16px;cursor:pointer}.dating-step-answer[aria-pressed=true]{border-color:var(--wine);color:var(--wine);background:#f7e8ee}.dating-step-actions{display:flex;justify-content:space-between;gap:14px;margin:18px 0}.dating-step-actions button{background:transparent;border:0;color:var(--wine);padding:9px;font-size:14px}.dating-step-actions button:disabled{opacity:.4}.dating-wish-selected{display:grid;gap:8px;margin:12px 0}.dating-wish-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e5dde1;border-radius:10px;padding:12px;color:var(--ink);text-decoration:none}.dating-wish-item div{min-width:0}.dating-wish-item strong,.dating-wish-item small{display:block;overflow-wrap:anywhere}.dating-wish-item strong{font-size:14px;font-weight:500}.dating-wish-item small{font-size:12px;color:var(--muted);margin-top:4px}.dating-wish-item button{background:transparent;border:0;color:var(--wine);font-size:22px;flex:none}.dating-wish-results{display:grid;gap:10px}.dating-wish-card{display:flex;width:100%;align-items:center;gap:12px;background:white;border:1px solid #e5dde1;border-radius:12px;padding:10px;text-align:left;color:var(--ink)}.dating-wish-card img{width:64px;height:64px;object-fit:cover;border-radius:7px}.dating-wish-card div{flex:1;min-width:0}.dating-wish-card strong,.dating-wish-card small{display:block;overflow-wrap:anywhere}.dating-wish-card strong{font-size:14px;font-weight:500}.dating-wish-card small{font-size:12px;color:var(--muted);margin-top:4px}.dating-wish-card:disabled{opacity:.55}.dating-wish-dialog input{width:100%;font-size:16px;padding:12px;border:1px solid #e5dde1;border-radius:8px}.dating-wish h2 small{font-size:13px;font-weight:400;color:var(--muted)}@media(max-width:600px){.dating-step-dialog,.dating-wish-dialog{width:100%;max-width:none;margin:auto 0 0;max-height:88dvh;border-radius:20px 20px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom))}}

@keyframes dating-answer-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.dating-step-answer{animation:dating-answer-enter .22s ease both}.dating-step-answer:nth-child(2){animation-delay:.025s}.dating-step-answer:nth-child(3){animation-delay:.05s}.dating-step-answer:nth-child(4){animation-delay:.075s}.dating-step-answer:nth-child(5){animation-delay:.1s}@media(prefers-reduced-motion:reduce){.dating-step-answer{animation:none}}

.dating-wish-card[aria-pressed=true]{border-color:var(--wine);background:#f7e8ee}.dating-interest input:checked~span{color:var(--wine);background:#f7e8ee;border-color:var(--wine)}

.dating-wish-item.is-unavailable{background:#f3f3f3;border-color:#dedede}.dating-wish-item.is-unavailable strong,.dating-wish-item.is-unavailable small{color:#888}.dating-wish-warning{color:#a21836;font-size:12px;line-height:1.5;margin:8px 0 0}

.dating-gallery-main{position:relative;background:#181417;box-shadow:0 12px 32px rgba(48,20,31,.1)}
.dating-video-sound{position:absolute;top:12px;right:12px;z-index:1;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:8px 12px;background:rgba(25,16,22,.65);backdrop-filter:blur(8px);color:#fff;font-size:12px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}.dating-video-sound:focus-visible{outline:2px solid #fff;outline-offset:3px}

.dating-media-zone{position:absolute;top:0;bottom:60px;width:50%;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.dating-media-zone.left{left:0}.dating-media-zone.right{right:0}.dating-media-zone:focus-visible{outline:2px solid white;outline-offset:-4px}
.dating-discover{max-width:1000px;margin:0 auto}.dating-discover .dating-profile-view{grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:40px;align-items:start}.dating-discover .dating-profile-copy{padding:20px 0}.dating-discover .dating-gallery{position:sticky;top:100px}.dating-discover-actions{display:flex;justify-content:center;gap:24px;margin:24px auto 36px}.dating-discover-actions[hidden]{display:none}.dating-discover-actions button{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;box-shadow:0 5px 18px #35122212;-webkit-tap-highlight-color:transparent;transition:transform .15s}.dating-discover-actions button:active{transform:scale(.93)}.dating-discover-actions button:disabled{opacity:.5;cursor:wait}.dating-discover-actions svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dating-skip{color:#7c7277}.dating-discover-actions .dating-like{color:var(--wine);background:#f8eaf0;border-color:#eed6df}.dating-empty{text-align:center;padding:50px 20px;color:var(--muted)}.dating-interest:has(input:disabled){opacity:.4}
@media(max-width:768px){.dating-discover .dating-profile-view{grid-template-columns:minmax(0,1fr);gap:12px}.dating-discover .dating-gallery{position:static}.dating-discover .dating-profile-copy{padding:12px 0}.dating-discover-actions{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(76px + env(safe-area-inset-bottom));width:max-content;margin:0;gap:14px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);z-index:2}.dating-discover .dating-gallery-main{width:min(100%,52dvh)}}

.dating-gallery-main:has(img) .dating-media-zone{bottom:0}

@media(max-width:768px){.dating-catalog-page{padding-bottom:110px}}

@media(max-width:768px){.dating-discover-actions button{width:44px;height:44px;box-shadow:0 2px 8px #3512220c}.dating-discover-actions svg{width:22px;height:22px}}

.dating-exposure{max-width:560px;margin:0 0 24px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fcf8fa}.dating-exposure>div{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}.dating-exposure strong{font-size:22px;color:var(--wine)}.dating-exposure progress{display:block;width:100%;height:6px;margin:10px 0;accent-color:var(--wine)}.dating-exposure p{font-size:12px;line-height:1.5;margin:6px 0 0}.dating-exposure .dating-exposure-hidden{color:var(--wine)}

.dating-discover{overflow:clip}.dating-enter{animation:dating-arrive .28s ease-out both}@keyframes dating-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.dating-profile-chips .is-match,.dating-wish-item.is-match{background:#fbeaf0;border:1px solid #b41c48;color:#9e163e}.dating-match-label{display:block;font-size:11px;font-weight:500;color:#a71942;margin-top:3px}.dating-wish-item.is-match{flex-wrap:wrap}
@media(prefers-reduced-motion:reduce){.dating-enter{animation:none}}

.dating-wish-photo{width:76px;height:76px;object-fit:cover;border-radius:10px;flex:none}.dating-wish-item>div{flex:1;min-width:0}.dating-wish-item.is-match{flex-wrap:nowrap}

/* Compact, regular-weight profile chips. */
.dating-profile-chips span,.dating-interest span,.dating-artist-selected button{font-family:"Segoe UI",Arial,sans-serif;font-weight:400;letter-spacing:0;line-height:1.4}
.dating-profile-chips span{padding:5px 11px}.dating-interest span{padding:6px 13px}.dating-artist-selected button{padding:6px 12px}

.dating-gallery-main,.dating-gallery-thumbs button{overflow:hidden}.dating-gallery img.is-photo-blurred,.dating-gallery video.is-photo-blurred{filter:blur(24px);pointer-events:none;user-select:none}.dating-reveal-photo{width:100%;margin-top:12px;font-weight:400}

.dating-discover-actions{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none}

/* Mutual likes: small transform animations, no animation libraries or polling. */
.dating-section-nav{display:flex;gap:20px;margin:0 0 22px;border-bottom:1px solid var(--line);padding-bottom:12px}.dating-section-nav a{color:var(--wine);font-weight:500}.dating-section-nav [aria-current=page]{text-decoration:underline;text-underline-offset:8px}
.dating-toast{position:fixed;z-index:1100;bottom:100px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:16px 22px;border-radius:16px;background:#351222;color:white;box-shadow:0 10px 30px #35122225;text-align:center;font-size:15px}.dating-toast[hidden]{display:none}
.dating-celebration,.dating-match-confirm{border:1px solid #ead7de;border-radius:28px;padding:0;width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;color:#351222;background:#fff9fc;box-shadow:0 24px 90px #35122230}.dating-celebration::backdrop,.dating-match-confirm::backdrop{background:#25121acc;backdrop-filter:blur(5px)}
.dating-celebration-body{position:relative;overflow:hidden;text-align:center;padding:46px 28px 30px;background:radial-gradient(ellipse at 50% 25%,#fbd4e3,transparent 65%)}.dating-celebration h2{font-size:clamp(32px,7vw,48px);margin:24px 0 10px;color:var(--wine)}.dating-celebration p{line-height:1.6}.dating-match-portraits{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:30px;position:relative;z-index:1}.dating-match-avatar{width:clamp(88px,24vw,134px);height:clamp(88px,24vw,134px);border:5px solid white;border-radius:50%;overflow:hidden;background:#e7b6c8;box-shadow:0 10px 30px #9e163e20;display:grid;place-items:center;font-size:40px;color:var(--wine)}.dating-match-avatar img{width:100%;height:100%;object-fit:cover}.dating-match-avatar.self{animation:dating-match-self .65s cubic-bezier(.2,.8,.2,1) both}.dating-match-avatar.peer{animation:dating-match-peer .65s cubic-bezier(.2,.8,.2,1) both}.dating-match-heart{color:#b41c48;font-size:36px;animation:dating-match-pulse .8s ease-in-out .5s 2 both}.dating-match-dialog-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px;position:relative;z-index:1}
.dating-match-sparkles{position:absolute;inset:0;pointer-events:none}.dating-match-sparkles span{position:absolute;left:calc(7% + var(--i)*6.4%);top:45%;color:#b41c48;font-size:calc(12px + mod(var(--i),3)*5px);opacity:0;animation:dating-match-float 1.6s ease-out calc(var(--i)*.045s) both}
@keyframes dating-match-self{from{opacity:0;transform:translateX(-65px) rotate(-12deg) scale(.75)}to{opacity:1;transform:none}}@keyframes dating-match-peer{from{opacity:0;transform:translateX(65px) rotate(12deg) scale(.75)}to{opacity:1;transform:none}}@keyframes dating-match-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}@keyframes dating-match-float{0%{opacity:0;transform:translateY(25px) scale(.5)}25%{opacity:.8}100%{opacity:0;transform:translateY(-190px) rotate(25deg) scale(1.2)}}
.dating-matches-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0}.dating-matches-heading h1{margin:8px 0}.dating-matches-heading p{margin:0}.dating-match-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px;margin:24px 0}.dating-match-card{position:relative;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:white;touch-action:pan-y}.dating-match-card-body{display:block;color:inherit;text-decoration:none}.dating-match-card-body>img,.dating-match-placeholder{width:100%;height:240px;object-fit:cover;-webkit-touch-callout:none;user-select:none}.dating-match-placeholder{display:grid;place-items:center;background:#fbeaf0;font-size:70px;color:#be7792}.dating-match-caption{padding:16px}.dating-match-caption h2{font-size:19px;margin:0}.dating-match-caption p{font-size:14px;margin:8px 0 0;color:#745762}.dating-match-remove{position:absolute;right:12px;top:12px;border:0;border-radius:50%;background:#fffffff0;color:#351222;width:44px;height:44px;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 10px #35122215}.dating-match-remove:focus-visible{outline:3px solid var(--wine);outline-offset:2px}.dating-matches-empty{text-align:center;padding:45px 20px;background:#fff8fb;border-radius:22px}.dating-matches-empty>span{font-size:70px;color:var(--wine)}.dating-matches-empty[hidden]{display:none}.dating-match-confirm{padding:28px}.dating-match-confirm h2{margin-top:0}.dating-match-confirm p{line-height:1.6}.dating-match-confirm [role=alert]{color:#b41c48}
@media(max-width:600px){.dating-match-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dating-match-card-body>img,.dating-match-placeholder{height:190px}.dating-match-caption{padding:12px}.dating-match-caption h2{font-size:16px}.dating-matches-heading{align-items:flex-start}.dating-matches-heading .button{padding:10px 12px}.dating-celebration-body{padding:32px 18px 24px}.dating-match-dialog-actions{flex-direction:column}.dating-match-dialog-actions .button{width:100%}.dating-match-confirm{padding:22px}.dating-matches-page{padding-bottom:110px}}
@media(prefers-reduced-motion:reduce){.dating-match-avatar.self,.dating-match-avatar.peer,.dating-match-heart,.dating-match-sparkles span{animation:none}.dating-match-sparkles{display:none}}

/* Stable SVG menu alignment across mobile fonts; explicit feedback for writes. */
.dating-match-remove{display:grid;place-items:center;padding:0;line-height:0;appearance:none;-webkit-appearance:none}.dating-match-remove svg{display:block;width:22px;height:22px;fill:currentColor;pointer-events:none}
.dating-discover-actions button:disabled{cursor:default}.dating-discover-actions .dating-like.is-pending{position:relative;opacity:1;cursor:default;background:#fbe2ec}.dating-like.is-pending svg{animation:dating-like-await .9s ease-in-out infinite;fill:#b41c4830}.dating-like.is-pending::after{content:"";position:absolute;inset:-4px;border:2px solid #b41c4860;border-radius:50%;pointer-events:none;animation:dating-like-halo 1.2s ease-out infinite}
.dating-action-status{display:flex;align-items:center;justify-content:center;gap:8px;margin:-20px auto 24px;min-height:22px;color:var(--wine);font-size:13px}.dating-action-status[hidden]{display:none}.dating-action-dots{display:flex;gap:4px}.dating-action-dots i{width:4px;height:4px;background:currentColor;border-radius:50%;animation:dating-like-dot 1s ease-in-out infinite}.dating-action-dots i:nth-child(2){animation-delay:.15s}.dating-action-dots i:nth-child(3){animation-delay:.3s}
@keyframes dating-like-await{0%,100%{transform:scale(.92)}45%{transform:scale(1.14)}70%{transform:scale(1)}}@keyframes dating-like-halo{from{transform:scale(.93);opacity:.7}to{transform:scale(1.25);opacity:0}}@keyframes dating-like-dot{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.dating-like.is-pending svg,.dating-like.is-pending::after,.dating-action-dots i{animation:none}.dating-like.is-pending::after{opacity:.6}}
.dating-location{margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff8fb}.dating-location h3{margin-top:0}.dating-location-actions{display:flex;flex-wrap:wrap;gap:8px}.dating-location-actions .button{font-size:13px;padding:10px 12px}.dating-location-map{width:100%;height:320px;margin:12px 0;border-radius:12px;overflow:hidden}.dating-location [type=checkbox]{width:auto;margin-right:8px}.dating-location [type=range]{width:100%;accent-color:var(--wine)}.dating-profile-distance{font-size:14px;color:var(--wine);margin:8px 0}

@media(max-width:700px){.dating-editor-page .dating-password-link{margin-bottom:20px}}

.dating-optional{font-size:12px;font-weight:500;color:#887580;margin-left:8px}.dating-symbol-card{padding:18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(125deg,#fff,#fcf5f8);margin:12px 0}.dating-symbol-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.dating-symbol-heading h3{margin:0;font-size:16px}.dating-symbol-switch{display:inline-flex!important;align-items:center;gap:8px;position:relative;cursor:pointer;flex-shrink:0}.dating-symbol-switch input{position:absolute;opacity:0;width:1px;height:1px}.dating-symbol-switch>span{width:38px;height:22px;border-radius:20px;background:#d8ced3;position:relative;transition:background .18s}.dating-symbol-switch>span:after{content:"";position:absolute;width:16px;height:16px;top:3px;left:3px;background:white;border-radius:50%;transition:transform .18s}.dating-symbol-switch input:checked+span{background:var(--wine)}.dating-symbol-switch input:checked+span:after{transform:translateX(16px)}.dating-symbol-switch input:focus-visible+span{outline:2px solid var(--wine);outline-offset:3px}.dating-symbol-switch b{font-size:12px;font-weight:500}.dating-symbol-choice{display:grid;gap:6px;font-size:13px}.dating-symbol-preview{margin-top:12px}.dating-symbol-preview>span,.dating-symbol-chips>span{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:9px 14px;background:#f5e8ef;color:#77374f;font-size:14px;border:1px solid #ead1de}.dating-symbol-icon{font-style:normal;font-size:23px;line-height:1}.dating-symbol-chips>span.is-match{background:#e4f3eb;color:#246a48;border-color:#b9dcc9}.dating-symbol-preview .is-hidden{opacity:.55}.dating-symbol-card:has(input[type=checkbox]:not(:checked)){background:#faf9fa}
@media(max-width:600px){.dating-symbol-card{padding:14px}.dating-symbol-heading h3{font-size:15px}.dating-symbol-switch b{font-size:11px}}
@media(prefers-reduced-motion:reduce){.dating-symbol-switch>span,.dating-symbol-switch>span:after{transition:none}}

/* Separate lists of pending likes; matches stay on their own page. */
.dating-likes-page{padding-bottom:110px}.likes-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:36px 0 28px}.likes-heading h1{font-size:clamp(32px,5vw,48px);line-height:1.15;margin:10px 0 12px;letter-spacing:-.035em}.likes-heading h1>span{display:inline-block;color:var(--wine,#8e2848);margin-left:14px}.likes-heading p{color:#796570;margin:0}.likes-matches-link{display:inline-flex;align-items:center;gap:10px;color:var(--wine,#8e2848);background:#fff;border:1px solid #eadbe2;border-radius:99px;padding:13px 18px;text-decoration:none;font-weight:650;white-space:nowrap}.likes-tabs{display:flex;gap:6px;background:#f0e8ed;border-radius:16px;padding:6px;width:fit-content;max-width:100%;margin-bottom:24px}.likes-tabs a{display:flex;gap:10px;align-items:center;justify-content:center;padding:13px 24px;border-radius:12px;color:#725763;text-decoration:none;font-weight:650}.likes-tabs a.active{background:#fff;color:var(--wine,#8e2848);box-shadow:0 3px 12px #3b13200a}.likes-tabs a>span{font-size:22px;line-height:1}.likes-intro{display:flex;align-items:center;gap:18px;background:linear-gradient(110deg,#fff1f3,#fbf5ee);border:1px solid #f0dfe4;border-radius:20px;padding:22px 24px}.likes-intro-icon{width:52px;height:52px;flex-shrink:0;background:#fff;border-radius:16px;display:grid;place-items:center;color:var(--wine,#8e2848);font-size:29px}.likes-intro h2{font-size:19px;margin:0 0 6px}.likes-intro p{color:#796570;max-width:680px;font-size:14px;line-height:1.6;margin:0}.likes-refresh{margin-left:auto;background:#fff8;border:1px solid #dcc9d2;border-radius:12px;padding:11px 15px;cursor:pointer;color:#653445;font:inherit;font-size:14px;flex-shrink:0}.likes-status:empty{display:none}.likes-status{margin:20px 0;color:#96314e}.likes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:22px;margin:26px 0}.likes-card{background:#fff;border:1px solid #eadfe5;border-radius:22px;overflow:hidden;min-width:0}.likes-card-body{display:block;color:inherit;text-decoration:none;height:100%}.likes-photo{position:relative;aspect-ratio:3/4;background:linear-gradient(140deg,#dfbac8,#c8becf);overflow:hidden}.likes-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.likes-photo-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:70px;color:#fff9}.likes-photo-badge{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);border:1px solid #fff7;background:#fffE;border-radius:99px;padding:7px 11px;color:#762b47;font-size:12px;font-weight:650}.likes-caption{padding:17px 18px 20px}.likes-caption h3{font-size:21px;line-height:1.3;margin:0;overflow-wrap:anywhere}.likes-caption p{font-size:13px;line-height:1.5;color:#806775;margin:7px 0 0}.likes-open{display:inline-block;margin-top:14px;color:var(--wine,#8e2848);font-weight:650;font-size:13px}.likes-card:has(a):hover{box-shadow:0 8px 26px #5e284512}.likes-empty{text-align:center;background:#fff;border:1px dashed #dfcbd5;border-radius:24px;padding:44px 24px;margin-top:26px}.likes-empty>div{font-size:60px;color:var(--wine,#8e2848);line-height:1}.likes-empty h2{font-size:25px;margin:16px 0 10px}.likes-empty p{max-width:420px;margin:0 auto 24px;color:#806775;line-height:1.6}.likes-empty[hidden],.likes-more[hidden]{display:none}.likes-more{display:block;margin:12px auto 0}.likes-refresh:disabled{opacity:.5;cursor:wait}.likes-tabs a:focus-visible,.likes-matches-link:focus-visible,.likes-card a:focus-visible,.likes-refresh:focus-visible{outline:3px solid var(--wine,#8e2848);outline-offset:3px}
@media(max-width:600px){.likes-heading{align-items:flex-start;flex-direction:column;gap:18px;margin:24px 0}.likes-heading p{font-size:14px;line-height:1.5}.likes-matches-link{padding:11px 15px;font-size:14px}.likes-tabs{width:100%;gap:4px}.likes-tabs a{flex:1;padding:12px 7px;font-size:13px;gap:6px}.likes-intro{padding:18px;gap:12px;flex-wrap:wrap}.likes-intro-icon{width:40px;height:40px;border-radius:12px;font-size:24px}.likes-intro>div:nth-child(2){flex:1;min-width:190px}.likes-intro h2{font-size:17px}.likes-intro p{font-size:13px}.likes-refresh{margin-left:52px;padding:9px 13px}.likes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.likes-card{border-radius:17px}.likes-caption{padding:12px}.likes-caption h3{font-size:17px}.likes-caption p{font-size:12px}.likes-photo-badge{left:8px;bottom:8px;font-size:10px;padding:6px 8px;max-width:calc(100% - 16px)}.likes-open{font-size:12px}.likes-empty{padding:32px 18px}.likes-empty h2{font-size:22px}}

/* Cabinet and editor: restrained type, regular spacing and native controls. */
.dating-own-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 18px}.dating-own-heading h1{font-size:30px;font-weight:600;letter-spacing:-.03em;line-height:1.2;margin:0}.dating-own-heading .button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 13px;font-size:13px;font-weight:500;white-space:nowrap;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:9px}.dating-own-heading svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dating-own-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 24px}.dating-own-status .dating-status{display:inline-flex;align-items:center;gap:7px;padding:0;border:0;background:none;font-size:13px;color:var(--muted)}.dating-own-status .dating-status:before{content:'';width:6px;height:6px;border-radius:50%;background:#b8adb3}.dating-own-status .dating-status.is-published{color:#416954}.dating-own-status .dating-status.is-published:before{background:#438062}.dating-own-status p{font-size:13px;line-height:1.5;color:var(--muted);margin:0}.dating-own-status p:empty{display:none}.dating-own-page>.alert{margin:0 0 20px}.dating-own-card{min-width:0;padding:0;background:none;border:0;border-radius:0}.dating-own-card .dating-profile-view{margin:0;gap:30px}.dating-own-card .dating-profile-copy h1{font-size:28px;letter-spacing:-.025em;margin-top:0}.dating-own-card .dating-profile-city{font-size:14px}.dating-own-card .dating-profile-about{font-size:15px;line-height:1.65;color:#413a3f;margin:22px 0}.dating-own-card .dating-gallery-main{border-radius:14px}.dating-own-card .dating-profile-copy h2{font-size:16px;font-weight:600;line-height:1.4;margin:24px 0 12px}.dating-own-exposure{margin:30px 0 0;padding:22px 0;border-top:1px solid var(--line);background:none;border-radius:0}.dating-own-exposure>div{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}.dating-own-exposure strong{font-size:13px;font-weight:500;color:var(--muted)}.dating-own-exposure progress{appearance:none;display:block;width:100%;height:4px;border:0;border-radius:99px;margin:12px 0 0;background:#eee6eb;accent-color:var(--wine);overflow:hidden}.dating-own-exposure progress::-webkit-progress-value{background:#ad6078;border-radius:99px}.dating-own-exposure progress::-webkit-progress-bar{background:#eee6eb;border-radius:99px}.dating-own-exposure progress::-moz-progress-bar{background:#ad6078}.dating-own-exposure p{font-size:12px;line-height:1.5;color:var(--muted);margin:10px 0 0}.dating-own-visibility{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.dating-own-visibility h2{font-size:15px;font-weight:600;margin:0 0 6px}.dating-own-visibility p{font-size:13px;line-height:1.5;color:var(--muted);margin:0;max-width:440px}.dating-own-visibility form{margin:0;flex-shrink:0}.dating-own-visibility .button{font-size:13px;font-weight:500;padding:10px 14px;white-space:normal}.dating-own-settings{padding:16px 0 24px;border-top:1px solid var(--line)}.dating-own-settings a{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:13px;text-decoration:none;padding:8px 0}.dating-own-settings a:hover{color:var(--wine)}.dating-own-empty{padding:38px 24px;text-align:center;background:#faf8f9;border-radius:14px}.dating-own-empty>span{display:none}.dating-own-empty h2{font-size:21px;font-weight:600;line-height:1.4;margin:0 0 12px}.dating-own-empty p{font-size:14px;line-height:1.6;max-width:380px;margin:0 auto 22px;color:var(--muted)}
.dating-editor-page .dating-heading{margin:12px 0 24px}.dating-editor-page .dating-heading>div{min-width:0;max-width:100%}.dating-editor-page .dating-heading h1{font-size:32px;line-height:1.2;letter-spacing:-.025em;overflow-wrap:anywhere}.dating-editor-page .dating-heading .eyebrow{display:none}.dating-editor-page .dating-heading p{font-size:14px;line-height:1.6;margin:12px 0 0;max-width:520px}.dating-editor-back{display:inline-flex;align-items:center;min-height:40px;margin-bottom:4px;text-decoration:none;color:var(--muted);font-size:13px}.dating-form-section{gap:18px}.dating-form-section label{gap:8px}.dating-field-pair{row-gap:18px}.dating-save-panel .dating-save-copy strong{font-size:15px;line-height:1.5;font-weight:600}.dating-save-panel .dating-save-copy p{font-size:13px;line-height:1.6;margin:8px 0 18px}.dating-save-panel .dating-editor-actions .wine{order:-1}.dating-save-panel .dating-editor-actions .dating-preview-action{border:0;background:transparent;box-shadow:none;color:var(--wine)}
/* Do not rely on adjacent siblings: Thymeleaf inserts a hidden checkbox marker. */
.dating-editor .dating-symbol-switch{position:relative;display:inline-flex!important;width:46px;min-width:46px;height:32px;align-items:center;justify-content:center;flex-shrink:0}.dating-editor .dating-symbol-switch input[type=checkbox]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;padding:0;z-index:2;cursor:pointer}.dating-symbol-switch>span{pointer-events:none;width:38px;height:22px;flex:none;background:#d8ced3}.dating-symbol-switch:has(input[type=checkbox]:checked)>span{background:var(--wine)}.dating-symbol-switch:has(input[type=checkbox]:checked)>span:after{transform:translateX(16px)}.dating-symbol-switch:has(input[type=checkbox]:focus-visible)>span{outline:2px solid var(--wine);outline-offset:4px}.dating-symbol-card{padding:16px 0;margin:0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}.dating-symbol-card:has(input[type=checkbox]:not(:checked)){background:none}.dating-symbol-heading{gap:14px;margin-bottom:12px}.dating-symbol-heading h3{font-size:14px;line-height:1.4;font-weight:600;min-width:0}.dating-symbol-choice{font-size:12px!important;font-weight:400!important}.dating-symbol-preview{margin-top:10px}.dating-symbol-preview>span,.dating-symbol-chips>span{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;width:fit-content;max-width:100%;padding:5px 9px;font-size:12px;line-height:1.4;border-radius:7px;background:#f7f1f4;border-color:#eadfe5}.dating-symbol-preview .dating-symbol-icon,.dating-symbol-chips .dating-symbol-icon{font-size:16px;line-height:1;flex:none}.dating-symbol-preview .is-hidden{opacity:.6}.dating-profile-chips.dating-symbol-chips{gap:7px}.dating-numerology>h2{margin:0}.dating-numerology>[data-symbol-status]:empty{display:none}.dating-numerology>[data-symbol-reset]{font-size:12px;line-height:1.5;text-align:left}
.dating-editor .dating-location{margin:12px 0 0;padding:16px;background:#faf8f9;min-width:0}.dating-location h3{font-size:15px;margin:0 0 10px}.dating-editor .dating-location .dating-any-switch{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;margin:16px 0;padding:14px 0;border-block:1px solid var(--line);cursor:pointer}.dating-any-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.dating-any-copy strong{font-size:14px;font-weight:500}.dating-any-copy small{font-size:12px;line-height:1.4;color:var(--muted)}.dating-editor .dating-any-switch input[type=checkbox]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;padding:0;z-index:2;cursor:pointer}.dating-any-track{display:block!important;position:relative;pointer-events:none;flex:0 0 38px;width:38px;height:22px;border-radius:99px;background:#d8ced3;transition:background .18s}.dating-any-track:after{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:white;transition:transform .18s}.dating-any-switch:has(input[type=checkbox]:checked)>.dating-any-track{background:var(--wine)}.dating-any-switch:has(input[type=checkbox]:checked)>.dating-any-track:after{transform:translateX(16px)}.dating-any-switch:has(input[type=checkbox]:focus-visible)>.dating-any-track{outline:2px solid var(--wine);outline-offset:4px}.dating-location>label:not(.dating-any-switch){display:grid;gap:8px;min-width:0}.dating-location-actions .button{max-width:100%;white-space:normal}
@media(max-width:768px){.dating-own-page{padding-top:20px!important;padding-bottom:100px!important}.dating-own-heading{gap:12px;margin:4px 0 14px}.dating-own-heading h1{font-size:25px}.dating-own-heading .button{font-size:12px;padding:10px 11px}.dating-own-status{margin-bottom:20px;gap:8px}.dating-own-status p{font-size:12px}.dating-own-card .dating-profile-view{gap:20px}.dating-own-card .dating-gallery-main{width:100%;aspect-ratio:3/4}.dating-own-card .dating-profile-copy{padding:0 2px}.dating-own-card .dating-profile-copy h1{font-size:26px}.dating-own-card .dating-profile-about{font-size:14px}.dating-own-card .dating-profile-copy h2{font-size:15px;margin-top:22px}.dating-own-exposure{margin-top:24px;padding:20px 0}.dating-own-visibility{align-items:flex-start;gap:14px;padding:20px 0}.dating-own-visibility>div{min-width:0;flex:1}.dating-own-visibility p{font-size:12px}.dating-own-visibility .button{font-size:12px;padding:10px 12px;max-width:130px}.dating-own-settings{padding-bottom:22px}.dating-own-empty{padding:30px 18px}.dating-own-empty h2{font-size:20px}.dating-editor-page .dating-heading h1{font-size:27px}.dating-editor-page .dating-heading p{font-size:13px}.dating-save-panel{padding:18px!important;border-radius:12px}.dating-save-panel .dating-editor-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.dating-save-panel .dating-editor-actions .button{padding:12px 9px;font-size:12px;line-height:1.4;white-space:normal;min-height:44px;width:100%}.dating-save-panel .dating-editor-actions .wine{font-size:14px;grid-column:1/-1}.dating-save-panel.is-published .dating-editor-actions{grid-template-columns:minmax(0,1fr)}.dating-save-panel.is-published .dating-preview-action{justify-self:center;width:auto}.dating-editor .dating-location{padding:14px}.dating-location-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.dating-location-actions .button{width:100%;min-width:0}.dating-symbol-card{padding:14px 0;margin:0}.dating-symbol-heading h3{font-size:14px}.dating-symbol-switch b.sr-only{font-size:12px}.dating-exposure{margin:16px 0 22px}.dating-editor-page>.alert{margin:0 0 20px}}
@media(max-width:360px){.dating-own-heading{align-items:flex-start}.dating-own-heading h1{font-size:23px;padding-top:7px}.dating-own-heading .button{font-size:11px;padding:10px}.dating-own-heading svg{width:14px;height:14px}.dating-own-visibility{flex-direction:column}.dating-own-visibility .button{max-width:none}.dating-symbol-heading h3{font-size:13px}}
@media(prefers-reduced-motion:reduce){.dating-any-track,.dating-any-track:after{transition:none}}
.dating-symbol-switch>b.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Premium-preview actions sit centered over the bottom of the incoming photo. */
.likes-card-actions{position:absolute;left:0;right:0;bottom:12px;z-index:1;display:flex;align-items:center;justify-content:center;gap:10px;margin:0}.likes-card-action{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid #e9dfe4;border-radius:50%;background:#fff;color:#8b7a83;padding:0;box-shadow:0 2px 10px #29131c20;cursor:pointer;transition:background .15s,transform .15s}.likes-card-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.likes-card-action.is-like{color:var(--wine);background:#fbf3f6;border-color:#eedbe3}.likes-card-action:hover{background:#f5eef2}.likes-card-action:active{transform:scale(.94)}.likes-card-action:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
.likes-premium-dialog{width:380px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);margin:auto;padding:32px 26px 26px;border:1px solid #eadfe5;border-radius:20px;box-shadow:0 20px 80px #32142325;color:var(--ink);background:#fff;overflow:auto;text-align:center}.likes-premium-dialog::backdrop{background:#24131c70;backdrop-filter:blur(3px)}.likes-premium-dialog form{margin:0}.likes-premium-close{position:absolute;right:9px;top:9px;width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#85727d;font:26px/1 system-ui;cursor:pointer}.likes-premium-close:hover{background:#faf4f7}.likes-premium-mark{display:grid;place-items:center;width:52px;height:52px;margin:4px auto 18px;border-radius:16px;background:#faf0f4;color:var(--wine)}.likes-premium-mark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}.likes-premium-dialog h2{font-size:23px;line-height:1.3;letter-spacing:-.02em;font-weight:600;margin:0 0 14px}.likes-premium-dialog p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 24px}.likes-premium-dialog .likes-premium-buy{display:block;width:100%;font-size:14px;min-height:44px}.likes-premium-close:focus-visible{outline:2px solid var(--wine);outline-offset:1px}
@media(max-width:380px){.likes-premium-dialog{padding:30px 20px 22px}.likes-premium-dialog h2{font-size:21px}.likes-card-actions{gap:8px}}
@media(prefers-reduced-motion:reduce){.likes-card-action{transition:none}}

/* Incoming photo links and action buttons occupy separate layers. */
.likes-photo .likes-profile-link{position:absolute;inset:0;z-index:1;border-radius:inherit}
.likes-photo .likes-profile-link:focus-visible{outline:3px solid var(--wine);outline-offset:-4px}
.likes-card-actions{z-index:2}
.likes-card-action[disabled]{cursor:wait;opacity:.65}
.likes-card-actions[aria-busy="true"]::after{content:"";position:absolute;width:18px;height:18px;border:2px solid #fff;border-top-color:#8b3149;border-radius:50%;animation:likes-pending .7s linear infinite;pointer-events:none}
@keyframes likes-pending{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.likes-card-actions[aria-busy="true"]::after{animation:none}}

/* Persistent match notice never replaces the profile being browsed. */
.match-notice{position:fixed;right:22px;bottom:24px;z-index:1200;display:flex;align-items:center;gap:14px;width:min(390px,calc(100vw - 40px));box-sizing:border-box;padding:18px;background:#fff;border:1px solid #ead4de;border-radius:18px;box-shadow:0 12px 40px #49203324;animation:match-notice-enter .2s ease-out}
.match-notice[hidden]{display:none}.match-notice-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:#fbeef3;color:var(--wine);font-size:23px}.match-notice>div{min-width:0;flex:1}.match-notice strong{display:block;font-size:15px;line-height:1.5}.match-notice a{display:block;margin-top:5px;font-size:13px;line-height:1.5;color:var(--wine);text-decoration:none}.match-notice button{align-self:flex-start;flex:0 0 32px;height:32px;border:0;background:transparent;border-radius:50%;font:25px/1 system-ui;color:#856e79;cursor:pointer}.match-notice a:focus-visible,.match-notice button:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
[data-match-indicator].has-unread-matches::after{content:"";display:inline-block;flex:0 0 7px;width:7px;height:7px;margin-left:6px;background:var(--wine);border-radius:50%;vertical-align:middle}
@keyframes match-notice-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.match-notice{left:16px;right:16px;bottom:calc(86px + env(safe-area-inset-bottom));width:auto;padding:15px;gap:10px;border-radius:15px}}
@media(prefers-reduced-motion:reduce){.match-notice{animation:none}}
