/* Uses the approved site typography and palette from readings.css. */
.sinnyeon{--card:#FBF6EA;--card-ink:#2A221B;--card-muted:#6B5D4E;--card-line:#E2D5BE}
.sinnyeon main{padding-top:20px}.sinnyeon .crumbs{gap:8px 16px;margin-bottom:25px}.sinnyeon .crumbs a:first-child{margin-right:auto}.sinnyeon .crumbs img{width:54px;height:54px}
.sinnyeon [hidden]{display:none!important}.sinnyeon h1{line-height:1.2}.year-hero h1{font-size:clamp(2.3rem,10vw,3.45rem);margin-bottom:18px}.seal-text{color:var(--seal)}.year-hero .intro{margin-bottom:0}.year-hero .intro strong{color:var(--ink);font-weight:600}
.book-scene{position:relative;height:250px;margin:20px 0 6px;overflow:hidden;isolation:isolate}.hero-book{position:absolute;top:14px;left:50%;width:166px;height:202px;transform:translateX(-50%) rotate(-7deg);border:1px solid #A99B7E;background:var(--card);color:var(--card-ink);box-shadow:7px 6px 0 #C5B899,9px 7px 0 #8C8067,14px 18px 28px -15px #1D262166;display:flex;align-items:center;flex-direction:column;padding:18px 14px}.hero-book:before{content:"";position:absolute;left:10px;inset-block:0;border-left:2px dashed #BBAA87}.book-year{font-size:14px;letter-spacing:.3em;color:#795C30}.book-name{font:32px/1.3 var(--display);margin-top:9px;white-space:nowrap}.book-rule{height:1px;width:75%;background:#D5C6A8;margin:13px 0 2px}.hero-book img{margin:0;width:59px;height:59px;object-fit:contain}.scene-line{position:absolute;inset-inline:0;height:92px;border-top:1px solid var(--line);border-radius:50%;opacity:.6;transform:rotate(-10deg)}.line-one{top:111px}.line-two{top:139px;transform:rotate(7deg)}.coin{position:absolute;display:grid;place-items:center;border-radius:50%;border:2px solid #9E7835;background:#D7B76A;box-shadow:inset 0 0 0 5px #D7B76A,inset 0 0 0 6px #9E7835;transform:rotate(-15deg);z-index:-1}.coin i{width:18px;height:18px;background:var(--paper);border:1px solid #9E7835;display:block}.coin-one{width:68px;height:68px;left:calc(50% - 145px);top:121px}.coin-two{width:53px;height:53px;left:calc(50% + 90px);top:54px}.coin-two i{width:14px;height:14px}.scene-caption{position:absolute;bottom:0;inset-inline:0;text-align:center;color:var(--muted);font-size:14px;letter-spacing:.03em}
.chapters{list-style:none;padding:18px 0;margin:20px 0;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);gap:8px;text-align:center;font-size:15px}.chapters li{margin:0;display:grid;gap:4px}.chapters span{font:21px var(--display);color:var(--seal)}.plain-note{font-size:15px;color:var(--muted);line-height:1.75;margin-bottom:30px}
.sinnyeon form{display:grid;gap:26px;border-top:1px solid var(--line);padding-top:26px}.sinnyeon .label{display:block;font-weight:600;font-size:1.02rem;margin-bottom:8px}.optional{font-weight:400;color:var(--muted);font-size:14px;margin-left:8px}.sinnyeon .hint{margin:6px 0 0;color:var(--muted);font-size:15px;line-height:1.65}.sinnyeon input[type=text],.sinnyeon input[type=number],.sinnyeon select{width:100%;font:inherit;font-size:1.08rem;color:var(--ink);background:var(--paper-2);border:1px solid var(--line);border-radius:6px;padding:10px 12px;min-height:54px}.sinnyeon input::placeholder{color:var(--muted);opacity:.8}.sinnyeon select{appearance:auto}.sinnyeon input[type=radio],.sinnyeon input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--seal);flex-shrink:0}.birthday-field{margin:0;padding:0;border:0;min-width:0}.calendar-choices{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;margin-bottom:10px}.calendar-choices label{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:16px}.birth-slots{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:8px}.sinnyeon #longitudeField{margin-top:15px}
.sinnyeon .primary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:14px 20px;border:0;border-radius:6px;background:var(--ink);color:var(--paper);text-decoration:none;font:1.35rem/1.4 var(--display);cursor:pointer}.primary:hover{opacity:.92}.primary:disabled{opacity:.55;cursor:wait}.privacy-note{font-size:14px;line-height:1.75;text-align:center;color:var(--muted);margin:12px 0 0}.error{color:var(--seal);font-size:15px;min-height:1em;margin:0 0 8px}.how-section{margin-top:54px;border-top:1px solid var(--line);padding-top:28px}.how-section h2{margin-top:7px}.how-list{list-style:none;counter-reset:how;padding:0;margin:22px 0}.how-list li{counter-increment:how;position:relative;padding-left:36px;margin:20px 0}.how-list li:before{content:counter(how,decimal-leading-zero);position:absolute;left:0;top:0;font:18px/1.7 var(--display);color:var(--seal)}.how-list strong{display:block}.how-list span{display:block;font-size:15px;color:var(--muted);margin-top:4px}.reading-shortcuts{margin-top:32px}.reading-shortcuts a{display:flex;gap:12px;justify-content:space-between;align-items:center;min-height:56px;border-bottom:1px solid var(--line);text-decoration:none;font-size:15px;padding:10px 0}.sinnyeon footer{margin-top:54px}
#sealDialog{background:#18251F;color:#FBF6EA;border:1px solid #637264;border-radius:14px;max-width:420px;width:calc(100% - 32px);padding:30px 22px;box-shadow:0 20px 90px #0008}#sealDialog::backdrop{background:#0B140FDD;backdrop-filter:blur(4px)}.seal-ritual{text-align:center;position:relative}.seal-ritual .eyebrow{color:#D8BC82;font-size:15px}.seal-ritual h2{color:#FBF6EA;font:2rem/1.35 var(--display);margin:16px 0}.sealed-envelope{width:180px;height:218px;background:var(--card);border:1px solid #B19C78;margin:24px auto 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--card-ink);box-shadow:7px 7px 0 #938466;animation:seal-breathe 2.4s ease-in-out infinite}.sealed-envelope span{font:30px var(--display);letter-spacing:.06em}.sealed-envelope img{object-fit:contain;animation:seal-stamp 2s ease-out}.seal-ritual #sealStatus{font-size:15px;min-height:3.2em;color:#CBD6CA;margin-bottom:20px}.seal-ritual .primary{background:#E2E9DF;color:#18251F;font-size:1.18rem}.ritual-skip,.ritual-cancel{font:14px/1.6 var(--body);border:0;background:none;color:#D3DED3;cursor:pointer;min-height:44px;padding:8px}.ritual-cancel{position:absolute;right:-6px;top:-12px}.ritual-skip{margin-top:9px;text-decoration:underline;text-underline-offset:4px}.year-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:12px 18px;max-width:calc(100% - 32px);width:max-content;border-radius:8px;background:var(--ink);color:var(--paper);font-size:15px;z-index:200;transition:opacity .2s,transform .2s}.year-toast.on{opacity:1;transform:translate(-50%,0)}
.result-head .eyebrow{margin-bottom:10px}.result-head h1{font-size:clamp(2.2rem,9vw,3rem);margin-bottom:14px}.result-head .intro{margin-bottom:18px}.result-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 14px;color:var(--muted);font-size:15px}.text-button{font:inherit;font-size:15px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);min-height:44px;cursor:pointer;padding:7px 2px}.fortune-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fortune-card{border:1px solid var(--card-line);background:var(--card);color:var(--card-ink);border-radius:10px;overflow:hidden;min-width:0}.closed-card{display:grid;justify-items:center;align-content:center;gap:12px;width:100%;min-height:240px;padding:24px 12px;background:transparent;border:0;color:var(--card-ink);font:inherit;cursor:pointer;position:relative}.closed-card:before{content:"";position:absolute;inset:9px;border:1px solid var(--card-line);border-radius:4px;pointer-events:none}.chapter-number{font:27px var(--display);color:#A12E28}.closed-card strong{font:1.5rem var(--display)}.closed-card img{width:52px;height:52px;object-fit:contain;opacity:.9}.closed-card small{font-size:14px;color:var(--card-muted)}.fortune-card.is-open{grid-column:1/-1}.card-face{padding:25px 22px;animation:unfold .45s ease-out;transform-origin:left center}.card-face .card-kicker{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#A12E28;font-size:15px;margin:0 0 15px}.card-face .card-kicker img{width:39px;height:39px}.card-face h2{font:1.85rem/1.35 var(--display);margin:0 0 12px;text-wrap:balance}.card-face .card-line{font-size:18px;color:var(--card-ink);margin:0 0 20px}.card-face p{font-size:18px}.card-watch{padding-top:17px;border-top:1px solid var(--card-line);margin-top:21px;font-size:16px!important}.card-watch strong{display:block;font-size:14px;letter-spacing:.06em;color:#A12E28;margin-bottom:6px}.card-basis{font-size:14px!important;color:var(--card-muted);margin-bottom:0!important}.card-face details{border-top:1px solid var(--card-line);margin-top:19px;padding-top:10px}.card-face summary{font-size:14px;color:var(--card-muted);min-height:38px;cursor:pointer}.year-overview{border-top:1px solid var(--line);margin-top:34px;padding-top:24px}.year-overview h2{margin:8px 0 14px;font-size:1.85rem}.keyword-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 18px}.keyword-list li{border:1px solid var(--line);border-radius:4px;padding:4px 9px;margin:0;font-size:14px;color:var(--muted)}.strength-note{display:grid;gap:14px;margin:24px 0}.strength-note div{border-left:2px solid var(--line);padding-left:13px}.strength-note dt{font-size:14px;color:var(--muted);margin-bottom:4px}.strength-note dd{margin:0;font-size:17px}.share-panel{border-block:1px solid var(--line);padding:22px 0;margin:28px 0}.share-panel h2{margin:0 0 10px;font-size:1.45rem}.share-panel p{font-size:15px;color:var(--muted)}.share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.share-actions button{font:16px var(--body);border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--ink);min-height:52px;padding:10px 12px;cursor:pointer}.share-actions button:first-child{grid-column:1/-1;background:var(--ink);color:var(--paper);border-color:var(--ink)}.share-actions button:disabled{opacity:.55;cursor:wait}.month-toggle{width:100%;justify-content:space-between;display:flex;gap:14px;align-items:center;text-align:left;padding:16px 0}.month-toggle span:first-child{font:1.5rem var(--display)}.month-intro{font-size:15px;color:var(--muted)}.month-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 26px}.month-item{border:1px solid var(--line);padding:16px;border-radius:8px;min-width:0}.month-item h3{font-size:1.2rem;margin:0 0 8px}.month-item .month-dates{font-size:14px;color:var(--muted);margin-bottom:9px}.month-item .month-theme{font-weight:600;font-size:16px}.month-item p{font-size:15px;margin-bottom:8px}.month-item .month-change{font-size:14px;color:var(--seal);padding-top:8px;border-top:1px solid var(--line);margin:12px 0 0}.method-panel{border-block:1px solid var(--line);margin:26px 0;padding:18px 0}.method-panel>summary{font-size:17px;cursor:pointer;min-height:40px;display:flex;justify-content:space-between;align-items:center}.method-panel p,.method-panel li{font-size:15px;color:var(--muted)}.method-panel h3{font-size:1.2rem}.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.pillar-tile{background:var(--paper-2);border:1px solid var(--line);border-radius:6px;text-align:center;padding:12px 4px}.pillar-tile span{display:block;font-size:14px;color:var(--muted)}.pillar-tile strong{display:block;font:26px var(--display);letter-spacing:.12em;padding:9px 0;color:var(--ink)}.method-source{font-size:14px!important}.method-panel table{width:100%;border-collapse:collapse;font-size:14px;margin:15px 0}.method-panel th,.method-panel td{padding:9px 5px;border-bottom:1px solid var(--line);text-align:left}.end-actions{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;margin:30px 0}.end-actions a{min-height:44px;display:inline-flex;align-items:center;font-size:16px}.empty-note{font-size:15px;color:var(--muted)}
@keyframes seal-breathe{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-5px) rotate(0)}}@keyframes seal-stamp{0%{transform:scale(1.35);opacity:0}35%,100%{transform:scale(1);opacity:1}}@keyframes unfold{from{opacity:.2;transform:perspective(800px) rotateY(-14deg)}to{opacity:1;transform:none}}
@media(max-width:370px){.sinnyeon main{padding-inline:16px}.fortune-grid{gap:10px}.closed-card{min-height:218px;padding-inline:8px}.closed-card strong{font-size:1.27rem}.card-face{padding:22px 17px}.card-face h2{font-size:1.65rem}.month-grid{grid-template-columns:1fr}.birth-slots{gap:6px}.sinnyeon select{padding-inline:8px;font-size:16px}.sinnyeon .crumbs{gap:6px 12px}.sinnyeon .crumbs a{font-size:14px}.pillar-grid{gap:6px}.pillar-tile strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){.sinnyeon *,.sinnyeon *:before,.sinnyeon *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.sinnyeon footer{display:flex;flex-wrap:wrap;gap:6px 18px;border-top:1px solid var(--line);padding-top:18px;font-size:14px;color:var(--muted)}
.sinnyeon footer a{display:inline-flex;align-items:center;min-height:36px;text-decoration:none}
.card-face .card-signal{font-size:14px;color:var(--card-muted);margin:-3px 0 10px}
