html[lang=en] body{word-break:normal;background:#fbfafc}
.site-header{display:flex;align-items:center;gap:28px;min-height:64px;padding:10px 4vw;border-bottom:1px solid var(--line);background:#fff}
.site-header .dy-brand{font-weight:750;color:var(--violet);margin-right:auto}
.site-header nav{display:flex;gap:22px;font-size:14px}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--violet);text-decoration:underline;text-underline-offset:5px}
.dy-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;padding:58px 0 18px}
.dy-hero h1{font-size:clamp(38px,5vw,62px);line-height:1.04;letter-spacing:-.045em}.dy-hero h1 em{font-style:normal;color:var(--violet)}
.dy-hero .lead{font-size:18px;color:var(--muted);max-width:590px;margin:20px 0 28px}.dy-actions{display:flex;gap:10px;flex-wrap:wrap}
.dy-stage{margin:0;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 18px 50px rgba(36,33,44,.08)}
.dy-room{aspect-ratio:4/3;background-image:url('/diary/img/room-atlas-1.jpg');background-size:300% 200%;background-position:var(--room-x,0%) var(--room-y,0%)}
.dy-stage figcaption{display:flex;justify-content:space-between;gap:16px;padding:18px 20px}.dy-stage figcaption b{display:block}.dy-stage figcaption span{font-size:13px;color:var(--muted)}
.dy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.dy-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.dy-card:hover{border-color:var(--violet)}
.dy-card .dy-room{aspect-ratio:3/1.65}.dy-card-body{padding:18px 20px 20px}.dy-card-body h3{font-size:19px}.dy-card-body p{font-size:14px;color:var(--muted);line-height:1.55;margin:7px 0 10px}.dy-card-body small{color:var(--muted)}
.dy-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--c);margin-right:8px}
.dy-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;counter-reset:step}.dy-steps li{counter-increment:step;border-top:3px solid var(--violet);background:#fff;padding:18px;border-radius:0 0 12px 12px}.dy-steps li::before{content:counter(step,decimal-leading-zero);display:block;color:var(--violet);font-size:13px;font-weight:700;margin-bottom:16px}.dy-steps b{display:block}.dy-steps p{font-size:13.5px;color:var(--muted);margin:6px 0 0}
.dy-book-head{display:grid;grid-template-columns:1fr 300px;gap:42px;align-items:center;padding:36px 0 10px}.dy-book-head h1{font-size:44px}.dy-book-head p{font-size:17px;color:var(--muted);max-width:650px}.dy-book-head .dy-room{border:1px solid var(--line);border-radius:14px}
.dy-month{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.dy-day{aspect-ratio:1;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:650}.dy-day:hover,.dy-day:focus-visible{border-color:var(--violet);color:var(--violet)}.dy-day.filled{background:var(--violet-soft);color:var(--violet);border-color:#c9c2ee}
.dy-tip{min-height:1.6em;color:var(--muted);font-size:14px;margin-top:10px}.dy-tip b{color:var(--violet);margin-right:10px}
.dy-spread{display:grid;grid-template-columns:1fr 1fr;min-height:650px;margin-top:30px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 18px 50px rgba(36,33,44,.08)}
.dy-page{padding:42px 44px;position:relative}.dy-page.color{background:var(--book);color:var(--book-ink,#fff)}.dy-page.color .kind{color:inherit;opacity:.8}.dy-page.color h1{font-size:34px;margin:18px 0 26px}.dy-reading{display:grid;gap:16px;font-size:18px;line-height:1.75}.dy-reading p{margin:0}.dy-page.write{display:flex;flex-direction:column;gap:16px}
.dy-field label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.06em}.dy-field textarea{width:100%;min-height:76px;border:0;border-bottom:1px solid var(--line);padding:8px 0;resize:vertical;background:transparent;line-height:1.55}.dy-field textarea:focus{outline:0;border-color:var(--violet);box-shadow:0 2px 0 var(--violet)}
.dy-emotions{display:flex;flex-wrap:wrap;gap:7px}.dy-emotions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 10px;font-size:12.5px}.dy-emotions button[aria-pressed=true]{background:var(--violet-soft);border-color:var(--violet);color:var(--violet)}
.dy-saved{font-size:12px;color:var(--muted);min-height:1.5em}.dy-nav{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.dy-nav a{max-width:48%}
.dy-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dy-summary article{border:1px solid var(--line);border-radius:14px;background:#fff;padding:20px}.dy-summary b{font-size:28px;color:var(--violet);display:block}.dy-summary span{color:var(--muted);font-size:14px}
.dy-note{margin-top:30px;border-left:3px solid var(--violet);padding:4px 0 4px 16px;color:var(--muted);font-size:14px}
.dy-footer{display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--line);padding:26px 4vw 36px;color:var(--muted);font-size:13px;background:#fff}.dy-footer b{color:var(--ink)}
@media(max-width:900px){.dy-hero,.dy-book-head{grid-template-columns:1fr}.dy-hero{padding-top:36px}.dy-book-head .dy-room{max-width:420px}.dy-steps{grid-template-columns:1fr 1fr}.dy-month{grid-template-columns:repeat(6,1fr)}.dy-spread{grid-template-columns:1fr}.dy-page{padding:34px}.dy-summary{grid-template-columns:1fr 1fr}}
@media(max-width:640px){main{padding-left:18px;padding-right:18px}.site-header{flex-wrap:wrap;gap:10px 16px}.site-header nav{width:100%;overflow-x:auto}.dy-grid,.dy-steps,.dy-summary{grid-template-columns:1fr}.dy-month{grid-template-columns:repeat(5,1fr)}.dy-book-head h1{font-size:34px}.dy-page{padding:28px 22px}.dy-page.color h1{font-size:29px}.dy-reading{font-size:16px}.dy-nav{align-items:stretch}.dy-nav a{font-size:13px;padding:10px 12px}}
