:root{--ink:#302b3a;--muted:#77707f;--line:#3a2b491c;--paper:#f5f1f3;--red:#9b4264;--accent:#9b4264;font-family:Nocturne Sans,'Microsoft YaHei',sans-serif;background:#2b2635}
h1,h2,h3{font-family:Nocturne Serif,'Songti SC',serif}body{background:#2b2635}.experience{padding:16px;background:#2b2635}.surface{max-width:1220px;border:1px solid #ffffff12;background:var(--paper);border-radius:24px;box-shadow:none;min-height:calc(100svh - 32px)}
.nocturne-entry{display:grid;grid-template-columns:1.03fr 1fr;min-height:calc(100svh - 34px);background:#ede7ed}.entry-visual{position:relative;min-height:660px;overflow:hidden}.entry-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.86)}.photo-annotation{position:absolute;inset:0;padding:38px 32px;display:flex;flex-direction:column;justify-content:space-between;color:#e6e2eb;font-size:13px;letter-spacing:.24em}.photo-annotation span:last-child{align-self:flex-end;writing-mode:vertical-rl;line-height:2;letter-spacing:.35em}.invitation{padding:70px clamp(32px,4.9vw,68px);display:flex;align-items:flex-start;justify-content:center;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:.12em;color:#746b80}.invitation h1{font-size:clamp(33px,3.6vw,47px);font-weight:600;line-height:1.45;letter-spacing:.03em;margin:25px 0 0}.title-edition{display:block;font-size:.66em;letter-spacing:.08em;margin-top:4px}.invitation-line{white-space:pre-line;font-family:Nocturne Serif,serif;font-size:23px;line-height:1.85;letter-spacing:.04em;margin-top:30px;color:#71617c}.invitation-copy{max-width:380px;margin-top:21px;font-size:14px;line-height:2.1;color:#746b7b}.primary{font-family:Nocturne Sans,sans-serif;background:#4c3b57;min-height:52px;border-radius:5px;padding:14px 25px;letter-spacing:.04em}.primary:hover:not(:disabled){background:#654a6c}.invitation .primary{margin-top:34px}.entry-meta{font-size:12px;color:#77707f;margin-top:16px}.fiction-note{font-size:11px;color:#82798b;line-height:1.9;margin-top:32px;max-width:310px}.secondary{border-radius:5px;border-color:#5c45642b}.secondary:hover{background:#e8dfe9}.text-button{color:#7b6b82}.text-button:hover{color:#4c3b57}
.question-layout{max-width:none;padding:36px max(32px,calc((100% - 780px)/2)) 34px;position:relative;isolation:isolate;background:#f4f0f3;min-height:calc(100svh - 34px)}.question-layout:before{content:'';position:absolute;z-index:-1;inset:0 0 auto;height:94px;background:#2f2739 url("./assets/rain-landscape-v1.webp?v=20261024T055816Z") center 48%/cover no-repeat}.question-top{color:#e9e2ef}.counter,.counter strong,.question-top .text-button{color:#f3ecf7}.counter strong{font-size:19px}.question-top .text-button{opacity:.88}.progress{background:#fff3;height:2px;margin-top:14px}.progress span{background:#dbc0d7}.question-body{padding:61px 0 46px;margin:auto 0}.question-context{color:#9a5577;font-size:12px;letter-spacing:.12em;margin-bottom:20px}.question-body h1{font-size:clamp(23px,2.7vw,29px);line-height:1.9;min-height:0;letter-spacing:.015em}.options{margin-top:29px;gap:11px}.option{border:1px solid #d9cfdc;background:#fcfafc66;border-radius:7px;min-height:67px;padding:17px 20px;gap:16px}.option:hover{background:#ebe3ee;border-color:#b5a3bc}.option:has(input:checked){background:#9b42640c;border-color:#9b4264}.option-label{font-size:14px;line-height:1.9}.option input{border-color:#b2a0b7;flex-basis:17px;width:17px;height:17px}.question-navigation .text-button{font-size:13px}
.nocturne-result.result{max-width:none;padding:0 0 54px}.letter-hero{padding:0}.letter-photo{position:relative;min-height:360px;display:flex;align-items:flex-end;overflow:hidden}.result-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.55)}.letter-title{position:relative;padding:58px 8% 42px;color:#f1eaf5}.letter-title .eyebrow{color:#d0c2d8}.letter-title h1{font-size:clamp(34px,5vw,58px);margin:17px 0 13px;letter-spacing:.09em;line-height:1.45}.type-english{font-family:Georgia,serif;font-size:12px;letter-spacing:.23em;color:#c5b9d0}.love-quote{font-family:Nocturne Serif,serif;color:#6f4d76;text-align:center;padding:33px 24px 0;font-size:clamp(19px,2.4vw,26px);line-height:1.9;letter-spacing:.035em}.letter-body{max-width:820px;margin:auto;padding:0 40px}.identity{padding-top:28px}.type-tags{text-align:center;font-size:12px;color:#8d738f;letter-spacing:.04em}.identity-intro{font-size:15px;line-height:2.2;margin-top:30px;color:#5e5466}.letter-section{padding-top:32px;margin-top:32px;border-top:1px solid var(--line)}.letter-section h2{font-size:21px;line-height:1.6;font-weight:600;margin-bottom:16px;letter-spacing:.025em}.letter-section p{font-size:14px;line-height:2.15;color:#716678}.attraction-scene{padding:30px 32px;background:#eae3ed;border:0;margin-top:32px;border-radius:5px}.attraction-scene h2{font-size:18px;color:#755a80}.attraction-scene p{font-family:Nocturne Serif,serif;font-size:16px;line-height:2.25;color:#675270}.reason-list{display:grid;gap:21px}.reason-list h3{font-size:16px;color:#87658b;margin-bottom:5px}.boundary-note p{color:#7b6b80}.section-note{margin-top:-8px}.alternate-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.type-preview{min-width:0;background:#ece6ef;border-radius:6px;padding:21px}.type-preview summary{cursor:pointer;min-height:44px;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;position:relative;list-style:none;padding-right:22px;gap:7px}.type-preview summary:after{content:'+';position:absolute;right:0;top:2px;font-size:20px;color:#806486}.type-preview[open] summary:after{content:'−'}.type-preview summary::-webkit-details-marker{display:none}.type-preview summary span{font-family:Nocturne Serif,serif;font-size:18px;font-weight:600;color:#55425f}.type-preview summary small{font-size:11px;color:#86758c;line-height:1.8}.type-preview p{font-size:13px;line-height:2.1;margin-top:14px;color:#716278}.type-preview .type-phrase{font-family:Nocturne Serif,serif;font-size:15px;color:#85628a}.preference-fold{border-top:1px solid var(--line);margin-top:29px;padding-top:23px}.preference-fold>summary{cursor:pointer;font-size:14px;min-height:44px;line-height:1.8;color:#74617e}.preference-rows{margin:13px 0 0}.preference-row{display:grid;grid-template-columns:115px 1fr;border-top:1px solid var(--line);padding:16px 0;gap:16px;font-size:13px}.preference-row span{color:#8b7d92}.preference-row strong{font-weight:450;color:#5d4b68}.archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.archive-grid .type-preview{padding:18px}.editorial-note{font-size:11px;color:#93859a;line-height:1.9;margin-top:28px}.nocturne-result>.actions,.nocturne-result>.result-links,.nocturne-result>.notice{max-width:740px;margin-left:auto;margin-right:auto}.nocturne-result>.actions{padding:0;gap:12px;margin-top:34px}.nocturne-result>.notice{font-size:12px}.quiz-dialog{background:#f4eff5;border-color:#fff7;color:#493a53}.quiz-dialog::backdrop{background:#1c152c88}.close-dialog{background:#e7ddeb}.jump-grid button.answered{background:#e7ddeb}.jump-grid button.current{border-color:#9b4264;color:#9b4264}
@media(min-width:1450px){.entry-visual{min-height:740px}}
@media(max-width:850px){.nocturne-entry{grid-template-columns:.9fr 1fr}.invitation{padding:48px 30px}.entry-visual{min-height:630px}.invitation h1{font-size:34px}.invitation-line{font-size:21px}.letter-title{padding-left:6%;padding-right:6%}.nocturne-result>.actions,.nocturne-result>.result-links,.nocturne-result>.notice{margin-left:40px;margin-right:40px}}
@media(max-width:620px){.experience{padding:16px}.surface{border-radius:21px;min-height:calc(100svh - 32px)}.nocturne-entry{grid-template-columns:1fr;min-height:calc(100svh - 34px)}.entry-visual{min-height:0;height:265px}.entry-photo{object-position:50% 55%}.photo-annotation{padding:24px;font-size:11px}.photo-annotation span:last-child{writing-mode:horizontal-tb;letter-spacing:.19em}.invitation{padding:31px 29px 37px}.invitation>.eyebrow{font-size:11px}.invitation h1{font-size:32px;margin-top:17px}.title-edition{display:inline;font-size:20px;letter-spacing:0;white-space:nowrap}.invitation-line{font-size:23px;margin-top:20px;line-height:1.75}.invitation-copy{font-size:13px;margin-top:17px;line-height:2.05}.invitation .primary{margin-top:24px;width:100%}.entry-meta{font-size:11px;margin-top:13px}.fiction-note{font-size:10px;margin-top:20px}.question-layout{padding:25px 24px 27px;min-height:calc(100svh - 34px)}.question-layout:before{height:83px}.question-body{padding-top:46px;padding-bottom:30px}.question-body h1{font-size:23px;line-height:1.85}.question-context{font-size:11px;margin-bottom:17px}.options{margin-top:24px;gap:10px}.option{padding:15px;min-height:68px;gap:12px}.option-label{font-size:13px;line-height:1.9}.letter-photo{min-height:285px}.letter-title{padding:42px 25px 31px}.letter-title h1{font-size:34px;letter-spacing:.06em}.letter-title .eyebrow{font-size:11px}.type-english{font-size:10px;letter-spacing:.18em}.love-quote{padding:27px 22px 0;font-size:20px}.letter-body{padding:0 24px}.identity{padding-top:21px}.type-tags{font-size:11px}.identity-intro{font-size:14px;line-height:2.15;margin-top:23px}.letter-section{padding-top:25px;margin-top:26px}.letter-section h2{font-size:19px;margin-bottom:13px}.letter-section p{font-size:13px;line-height:2.15}.attraction-scene{padding:23px 21px}.attraction-scene h2{font-size:17px}.attraction-scene p{font-size:15px;line-height:2.15}.reason-list{gap:18px}.reason-list h3{font-size:15px}.alternate-grid{grid-template-columns:1fr;gap:11px}.type-preview{padding:19px}.archive-grid{grid-template-columns:1fr}.archive-grid .type-preview{padding:17px 19px}.preference-row{grid-template-columns:95px 1fr;gap:9px;font-size:12px}.preference-fold>summary{font-size:13px}.editorial-note{font-size:10px}.nocturne-result>.actions,.nocturne-result>.result-links,.nocturne-result>.notice{margin-left:24px;margin-right:24px}.nocturne-result>.actions{flex-direction:column;margin-top:28px}.actions .primary,.actions .secondary{font-size:13px;min-height:49px}.result-links{justify-content:center;gap:25px}}
@media(max-width:360px){.invitation{padding:27px 22px 31px}.invitation h1{font-size:29px}.title-edition{font-size:18px}.invitation-line{font-size:21px}.question-layout{padding-left:19px;padding-right:19px}.question-body h1{font-size:21px}.letter-body{padding:0 20px}.letter-title{padding-left:21px;padding-right:21px}.letter-title h1{font-size:30px}.love-quote{font-size:18px}.attraction-scene{padding:21px 18px}.nocturne-result>.actions,.nocturne-result>.result-links,.nocturne-result>.notice{margin-left:20px;margin-right:20px}}
