/* FSJLSJ v5 — warm soft pink. Visual only; no auth/storage/database changes. */
:root {
  --bg: #fff9fb;
  --paper: #fffdfd;
  --ink: #483b42;
  --muted: #907c85;
  --accent: #c6748f;
  --accent2: #dfa8b9;
  --accent-light: #fff0f4;
  --line: #f1e2e8;
  --shadow: 0 18px 55px rgba(162,91,117,.075);
  --rose: #d9a1b3;
  --pink: #ffe9ef;
  color-scheme: light;
}
html {scroll-padding-top:72px}
body {background:#fff9fb;color:var(--ink);letter-spacing:0}
::selection {background:#f5dbe5;color:#513c46}
button:focus-visible, a:focus-visible {outline:2px solid #ba738c!important;outline-offset:3px}
/* Header: plain site name, no graphic mark and no branding capsule. */
.fs-site .ios-nav {background:rgba(255,250,252,.94);border-bottom:1px solid #f4e7eb;box-shadow:0 3px 20px #bb75920a}
.fs-site .fs-nav-inner{height:68px}
.fs-site .fs-plain-title {font-size:20px;font-weight:640;letter-spacing:-.05em;color:#55414b;white-space:nowrap;padding:0;background:none;border:none;line-height:1.3}
.fs-site .fs-plain-title:hover{color:#bb6b88}
.fs-site .ios-link {color:#8e7d85;font-size:12px}
.fs-site .ios-link.active,.fs-site .ios-link:hover{color:#b65e7e}
.fs-site .ios-link.active:after {background:#d98da7}
.fs-site .fs-create {background:#c97994;border-radius:999px;color:#fff;font-weight:600;box-shadow:0 6px 18px #c9799426}
.fs-site .fs-create:hover {background:#b96883}
.fs-site .status-orb.connected{background:#91b9a3}
.fs-site .fs-more-menu {background:#fffbfcf5;border-color:#f2e3e9;box-shadow:0 16px 40px #98627b20}
.fs-site .fs-more-menu button:hover {background:#fff0f5}
.fs-site .ios-demo{background:#fff3f6;border:1px solid #f6e3e9;color:#997985}
.fs-site .ios-demo button{color:#ad637d}
/* Home: readable, romantic but restrained. */
.fs-hero {min-height:615px;grid-template-columns:1.05fr .95fr;padding:50px 0 12px;gap:clamp(30px,5vw,75px)}
.fs-hero-copy {padding:28px 0 18px}
.fs-overline {color:#bb869b;font-size:11px;letter-spacing:.07em;text-transform:none}
.fs-overline-dot {background:#e6adbf;width:6px;height:6px}
.fs-hero-copy h1 {font-size:clamp(44px,4.7vw,68px);line-height:1.38;letter-spacing:-.065em;color:#48363f;font-weight:570;margin:28px 0 20px}
.fs-hero-copy h1>span {color:#c07792}
.fs-hero-en{font-size:14px;color:#c28198;font-weight:500;letter-spacing:.01em;margin-bottom:16px}
.fs-hero-desc {color:#8b7a82;font-size:14px;line-height:2.15}
.fs-hero-cta{margin-top:30px}
.fs-button-dark,.fs-site .btn {background:#c5758e;color:white;border-radius:999px;box-shadow:0 8px 20px #bd6b8524;font-weight:590}
.fs-button-dark:hover,.fs-site .btn:hover {background:#b76580;box-shadow:0 10px 26px #bd6b8536}
.fs-button-text,.fs-inline-link {color:#a96d81}
.fs-button-text:hover,.fs-inline-link:hover {color:#8e4f66}
.fs-site .btn.secondary {background:#fff0f4;color:#af6680;box-shadow:none}
.fs-site .btn.ghost {color:#9c7280;box-shadow:none}
.fs-hero-media {height:min(565px,48vw);min-height:460px;background:#ffe9ef;border:1px solid #f3dce5;border-radius:29px;box-shadow:0 24px 70px #cc93a51c}
.fs-hero-art {object-fit:cover}
.fs-hero-media:after{height:32%;background:linear-gradient(transparent,#52344261)}
.fs-cover-placeholder {position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 20% 20%,#fff9f8 0%,transparent 55%),radial-gradient(ellipse at 87% 12%,#ffdee9 0%,transparent 55%),linear-gradient(148deg,#f9dce6 0%,#fceaf0 42%,#e8b8c9 100%)}
.fs-cover-placeholder:before {content:"";position:absolute;inset:7% 8%;border:1px solid #ffffff8c;border-radius:19px;pointer-events:none}
.fs-cover-placeholder:after {content:"";position:absolute;left:-20%;bottom:-22%;width:105%;height:55%;border-radius:50%;transform:rotate(-12deg);background:#fff9f640;filter:blur(20px)}
.fs-pink-light {position:absolute;width:63%;aspect-ratio:1;right:-18%;top:16%;border-radius:50%;background:#ffffffa1;filter:blur(65px)}
.fs-pink-note {position:absolute;z-index:1;left:11%;right:9%;top:32%;display:flex;flex-direction:column;gap:17px;color:#8d5268}
.fs-pink-note>span{font-family:Georgia,serif;font-style:italic;font-size:16px;letter-spacing:.02em;color:#bc8498}
.fs-pink-note>strong{font-size:clamp(25px,2.75vw,39px);font-weight:530;line-height:1.55;letter-spacing:-.05em}
.fs-pink-note>small{color:#ad8291;font-size:12px;letter-spacing:.04em}
.fs-hero-media:not(.fs-hero-media-photo):after{display:none}
.fs-photo-caption {bottom:24px;left:28px;right:28px}
.fs-photo-caption strong {font-weight:510;font-size:20px}
.fs-photo-caption small {font-size:10px;letter-spacing:.03em}
.fs-hero-media:not(.fs-hero-media-photo) .fs-photo-caption {color:#92687b}
.fs-hero-media:not(.fs-hero-media-photo) .fs-photo-caption small,.fs-hero-media:not(.fs-hero-media-photo) .fs-photo-number{color:#ae8698}
.fs-cover-change{border:1px solid #ffffffd1;background:#fffafcdb;color:#a45f79;box-shadow:0 4px 17px #ad69801c}
.fs-stats,.fs-next {border-color:#efdee5}
.fs-stat{border-color:#efdee5}
.fs-mini-eyebrow,.fs-trailing,.fs-overline {color:#bc889b}
.fs-section-top,.fs-section-header {border-color:#f1e2e8}
.fs-section-header h2,.fs-site .page-heading h1 {color:#483842;font-weight:580}
.fs-section-header h2 span {color:#c4819a}
.fs-section-header p{color:#96818a}
.fs-feature{border-radius:24px;box-shadow:0 3px 14px #b47a900d}
.fs-feature:hover {box-shadow:0 15px 30px #bd799225}
.fs-feature-photo {background:#fcebf0}
.fs-feature-photo-art {background:#f6d9e4;border-radius:17px}
.fs-placeholder-art{background:radial-gradient(circle at 22% 20%,#fff9fd,transparent 53%),linear-gradient(145deg,#f6cedd,#fbe8ed 58%,#db9ab4)}
.fs-placeholder-art>span{font-size:95px;color:#fff8fbdc;text-shadow:0 8px 30px #af789024}
.fs-placeholder-art>small{border-color:#ffffff6b;color:#ae7a8c;font-size:11px;letter-spacing:.03em;text-transform:none}
.fs-feature-text h3{color:#674b58}
.fs-feature-text p{color:#937783}
.fs-feature-time {background:#f9e6ed}
.fs-feature-letter {background:#fff0f2}
.fs-feature-time h3,.fs-feature-letter h3 {color:#664953;font-weight:570}
.fs-feature-time p,.fs-feature-letter p{color:#987b86}
.fs-time-lines,.fs-letter-line{color:#bd8a9a}
.fs-time-rule{background:#dfbdc8}
/* A light map feature rather than the dark editorial block. */
.fs-atlas {background:linear-gradient(125deg,#f2cbd8 0%,#fce8ef 57%,#fff4f6 100%);color:#654653;box-shadow:inset 0 0 0 1px #f0cfda;}
.fs-atlas-top,.fs-atlas-bottom {color:#b0778e;border-color:#dbaab95c}
.fs-atlas-body h2{color:#784e60;font-weight:570}
.fs-atlas-body p{color:#926f7d}
.fs-atlas-ring{border-color:#fff9fb80}
.fs-atlas-ring-one{box-shadow:0 0 0 34px #fffbff16,0 0 0 78px #fff6fa22}
.fs-atlas-ring-two{border-color:#ffffffa1}
.fs-atlas-marker{background:#fff;box-shadow:0 0 0 8px #ffffff35}
.fs-atlas-label{color:#bc8498}
.fs-button-light {background:white!important;color:#ac657d!important;border-radius:999px!important;box-shadow:0 7px 21px #c38a9922}
.fs-story-row {border-color:#efdee5}
.fs-story-row:hover{background:#fff0f4}
.fs-story-content strong{color:#634a55}
.fs-story-content small,.fs-story-content>span{color:#ab8795}
/* Anniversary: blushed paper, no giant metallic ring illustration. */
.fs-chapter {background:linear-gradient(115deg,#f9e0e7,#ffeef2);border:1px solid #f3d7e0}
.fs-chapter-number {color:#c78ea0}
.fs-chapter-copy h2,.fs-chapter h2{color:#6a4757}
.fs-chapter p{color:#ac8493}
.fs-chapter-art {background:none}
.fs-chapter-circle {border-color:#edc5d2;box-shadow:none}
.fs-chapter-circle.two {border-color:#fbe8ed}
.fs-anniv-hero {background:#fbe3eb}
.fs-anniv-hero:before {background:radial-gradient(circle at 80% 26%,#ffffff9b,transparent 43%),linear-gradient(135deg,#ffeef1 0%,#fad9e3 53%,#efbdcf 100%)}
.fs-anniv-hero:after {border-color:#ffffff36;box-shadow:none}
.fs-anniv-top,.fs-anniv-bottom {color:#a8798d;border-color:#dca6b9a1}
.fs-anniv-number {color:#d3a1b354}
.fs-anniv-number span {color:#a97c8c}
.fs-anniv-hero-copy h1 {color:#684653;font-weight:580}
.fs-anniv-hero-copy p {color:#8e6e7c}
.fs-anniv-letter {border-color:#f1e0e7;box-shadow:0 20px 50px #b7708913}
.fs-anniv-letter>div{color:#705663}
.fs-anniv-chapters>div{border-color:#f2e1e8;background:#fffdfd}
.fs-anniv-chapters b {color:#ce9fb1}
.fs-anniv-chapters p{color:#9e818f}
.fs-anniv-gallery p,.fs-anniv-end p{color:#9d808d}
.fs-anniv-photos {background:#fae5ed}
.fs-anniv-photos-placeholder{display:grid;place-items:center;flex:1;min-height:320px;background:linear-gradient(135deg,#fff3f6,#edbacb);color:#a3657e;text-align:center;font-size:17px;border-radius:15px;padding:20px}
/* Inner pages, cards, fields and navigation: consistent blush accents. */
.fs-site .page-heading h1{font-weight:580}
.fs-site .page-heading p{color:#987f8b}
.fs-site .page-heading .eyebrow,.fs-site .eyebrow{color:#c18da2}
.fs-site .card {border-color:#f0e0e6;background:#fffdfd;box-shadow:0 3px 20px #b5728b0a}
.fs-site .filter-row button.active {background:#c17690;border-color:#c17690}
.fs-site .feed-date b,.fs-site .settings-card h3,.fs-site .invite-code{color:#a4667b}
.fs-site input,.fs-site textarea,.fs-site select {background:#fff;color:#54414a;border-color:#efdae2}
.fs-site input:focus,.fs-site textarea:focus,.fs-site select:focus {border-color:#d38da5;box-shadow:0 0 0 3px #f6d6e251}
.fs-site .mapbox {border-color:#f3e0e6}
.fs-site .photo-tile,.fs-site .photo-image{border-radius:18px}
.fs-site .foot-note{color:#ab8f9c}
.fs-footer{border-color:#f0e1e7;color:#a88c99}
.fs-footer>div>strong {color:#6e4c5b;font-size:20px;font-weight:630}
.fs-footer>div>small{color:#b18c9c;font-size:11px;letter-spacing:0}
.fs-footer>span{color:#ad8998;font-size:11px;letter-spacing:0}
.fs-footer>button{color:#a4667d}
.fs-site .fs-mobile-nav {background:#fffafdF5;border-color:#efdce4;box-shadow:0 -4px 22px #a4718514}
.fs-site .fs-mobile-nav button {color:#ae929d}
.fs-site .fs-mobile-nav button.active {color:#bf708a}
/* Auth: no F x L logo, no pseudo-brand symbols. */
.fs-auth {background:#fff9fa}
.fs-auth-art {background:radial-gradient(ellipse at 25% 15%,#fffafa,transparent 55%),linear-gradient(160deg,#ffeef1,#f1c6d7)}
.fs-auth-art:after{display:none}
.fs-auth-art h1{color:#774f60;font-weight:560}
.fs-auth-art p{color:#9d7384}
.fs-auth-art .fs-mini-eyebrow,.fs-auth-foot{color:#bb7f98}
.fs-auth .auth-form-wrap{background:#fffbfc}
.fs-auth-logo {font-size:24px;font-weight:620;letter-spacing:-.045em;color:#b16d85;margin-bottom:35px}
.fs-auth .auth-form h2{color:#654856;font-weight:580}
.fs-auth .auth-form form .btn{background:#c27791}
.fs-reset-help{color:#ae909b}
@media(max-width:1100px) {
 .fs-hero{min-height:0;gap:35px}
 .fs-hero-media{height:500px;min-height:0}
}
@media(max-width:800px) {
 .fs-site .fs-nav-inner{height:60px}
 .fs-hero{padding-top:34px;grid-template-columns:1fr;gap:28px}
 .fs-hero-copy{padding:0}
 .fs-hero-copy h1{font-size:clamp(40px,7.8vw,57px);margin:22px 0 14px}
 .fs-hero-media{height:min(550px,100vw);min-height:360px}
 .fs-pink-note{top:32%}
 .fs-pink-note>strong{font-size:30px}
}
@media(max-width:580px) {
 .fs-site .fs-nav-inner{height:56px}
 .fs-site .fs-plain-title{font-size:20px}
 .fs-hero{padding-top:16px;gap:22px}
 .fs-hero-copy h1{font-size:clamp(34px,9vw,48px);line-height:1.43;margin:19px 0 9px}
 .fs-overline{font-size:10px}
 .fs-hero-en{font-size:13px;margin-bottom:10px}
 .fs-hero-desc{font-size:12px;line-height:2}
 .fs-hero-cta{margin-top:20px}
 .fs-hero-media{height:min(430px,105vw);min-height:320px;border-radius:21px}
 .fs-pink-note{top:31%;left:10%;right:7%;gap:12px}
 .fs-pink-note>strong{font-size:clamp(23px,6.9vw,30px)}
 .fs-pink-note>small{font-size:10px}
 .fs-photo-caption{bottom:18px;left:20px;right:20px}
 .fs-photo-caption strong{font-size:17px}
 .fs-photo-caption small{font-size:9px}
 .fs-stats{margin-top:30px}
 .fs-feature-photo{min-height:390px}
 .fs-feature-stack .fs-feature{min-height:228px}
 .fs-atlas{margin-top:70px}
 .fs-atlas-body h2{font-size:36px}
 .fs-chapter{margin-top:75px}
 .fs-anniv-hero{background:#ffe2eb}
 .fs-anniv-photos-placeholder{min-height:210px;font-size:13px}
 .fs-footer>span{font-size:10px}
 .fs-auth-logo{font-size:23px}
}
@media(prefers-reduced-motion:reduce) {.fs-home,.fs-anniversary {animation:none!important}}
