:root{--paper:#f8f8f3;--white:#fffefa;--ink:#293c31;--green:#46664b;--soft-green:#edf0e7;--muted:#858a7b;--line:#e2e5da;--error:#a34f3f;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;--serif:"Noto Serif CJK SC","Songti SC",SimSun,serif;color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}button{color:inherit}button,textarea,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--green)}button{border:0;background:none}img{display:block;max-width:100%}svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{width:0;height:0;position:absolute;overflow:hidden}.wrap{max-width:1248px;width:calc(100% - 112px);margin:auto}.site-header{height:104px;display:flex;align-items:center;border-bottom:1px solid var(--line);justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;font-family:var(--serif);font-size:23px;font-weight:600;letter-spacing:3px}.brand-mark{background:#e9eddf;border-radius:50%;width:43px;height:43px;display:grid;place-items:center}.brand-mark .icon{width:26px;height:26px;stroke-width:1.25}.brand-en{display:block;font:8px var(--sans);letter-spacing:3.2px;margin-top:5px;color:#7b8270}.main-nav{display:flex;gap:37px;font-size:13px;height:100%;align-items:center;padding-left:60px}.main-nav a,.main-nav button{position:relative;height:100%;display:flex;align-items:center;padding:0;font-size:13px;color:#7b8273}.main-nav .active{color:var(--green)}.main-nav .active:after{content:"";width:17px;height:2px;position:absolute;bottom:24px;left:50%;transform:translateX(-50%);background:var(--green)}.connection-button{border:1px solid #dce1d3;border-radius:6px;height:37px;display:flex;align-items:center;gap:9px;padding:0 13px;font-size:11px}.connection-button .icon{width:15px;height:15px;color:#6e7a67}.connection-dot,.tiny-dot{display:inline-block;background:#a4ad93;width:5px;height:5px;border-radius:50%;flex-shrink:0}.connection-button.connected .connection-dot{background:#5e8d56;box-shadow:0 0 0 3px #e4ebdc}.hero{display:grid;grid-template-columns:1.07fr 1fr;gap:70px;padding:63px 18px 65px 0;align-items:center}.hero-copy{padding:8px 0 5px}.eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:2.5px;font-size:9px;font-weight:500;color:#7d876c}.little-line{height:1px;width:27px;background:#9ba588}.hero h1{position:relative;font:500 clamp(40px,4.2vw,62px)/1.48 var(--serif);letter-spacing:5px;margin:24px 0 21px}.green-text{color:#5e7954}.title-leaf.icon{width:37px;height:37px;stroke-width:1;transform:rotate(9deg);margin:0 0 2px 11px}.hero-description{font-size:12px;line-height:2.2;letter-spacing:.7px;color:#838777;margin:0 0 29px}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:43px;border-radius:4px;padding:0 19px;font-size:12px;font-weight:500;transition:background .18s,transform .18s}.button .icon{width:16px;height:16px}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{background:#456348;color:#fffef6;border:1px solid #456348}.primary:hover:not(:disabled){background:#344e37}.secondary{border:1px solid #dce0d4;background:var(--white);color:#64745d}.secondary:hover:not(:disabled){background:var(--soft-green)}.end-icon{margin-left:24px}.hero-footnote{margin-top:20px;font-size:10px;color:#9a9c8e;display:flex;align-items:center;gap:7px;letter-spacing:.3px}.hero-footnote .tiny-dot{width:3px;height:3px}.hero-visual{height:345px;position:relative;padding-left:0}.hero-photo-frame{height:100%;position:relative;overflow:hidden;border-radius:120px 4px 4px 4px;background:#e8ebe3}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 56%;filter:saturate(.67)}.photo-label{position:absolute;bottom:0;width:100%;padding:25px 21px 18px;background:linear-gradient(transparent,rgba(25,44,29,.48));display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:9px;letter-spacing:1.3px}.photo-label span:last-child{font-size:8px;letter-spacing:1.6px}.vertical-note{position:absolute;right:-26px;top:48px;writing-mode:vertical-rl;letter-spacing:3px;font-size:9px;color:#969d88}.hero-stamp{position:absolute;bottom:-17px;left:-25px;border-radius:50%;background:#eaf0e2;border:5px solid var(--paper);width:81px;height:81px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transform:rotate(-13deg);color:#708262}.hero-stamp .icon{width:19px;height:19px}.hero-stamp span{font-size:7px;text-align:center;letter-spacing:1.8px;line-height:1.4}.journal-section{scroll-margin-top:25px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:3px 0 24px}.section-kicker{color:#959c88;font-size:8px;letter-spacing:2.3px}.section-heading h2{font:500 25px/1.4 var(--serif);letter-spacing:2px;margin:8px 0 0}.heading-dot{color:#88a174;font-size:30px;margin-left:2px}.journal-summary{display:flex;align-items:center;gap:6px;color:#949987;font-size:11px;padding-bottom:3px}.journal-summary .icon{width:15px;height:15px;margin-right:3px}.journal-summary strong{font:500 20px Georgia,serif;color:var(--green);margin:0 2px}.calendar-card{background:var(--white);border:1px solid #dde2d4;border-radius:7px;overflow:hidden}.calendar-toolbar{height:82px;display:flex;justify-content:space-between;align-items:center;padding:0 24px}.month-controls{display:flex;align-items:center;gap:9px}.icon-button{width:32px;height:32px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;padding:6px;flex-shrink:0}.icon-button:hover:not(:disabled){background:#ecf0e5}.month-label{position:relative;display:flex;align-items:baseline;gap:10px;margin:0 6px}.month-label input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.month-label input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;cursor:pointer}.month-label:focus-within{outline:2px solid var(--green);outline-offset:5px;border-radius:2px}#month-title{font:500 23px Georgia,var(--serif);letter-spacing:.8px}#month-english{font-size:9px;color:#a4a895;letter-spacing:1.1px}.today-button{border:1px solid var(--line);border-radius:4px;font-size:9px;padding:6px 9px;color:#8c937e;margin-left:7px}.today-button:hover{background:var(--soft-green)}.month-meta{font-size:10px;color:#91997f;display:flex;align-items:center;gap:7px;letter-spacing:.3px}.month-meta .tiny-dot{background:#9dac81;width:4px;height:4px}.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:42px;background:#f1f3eb;border-top:1px solid #e8ebdf;border-bottom:1px solid #e5e9db;align-items:center;text-align:center;font-size:10px;color:#778069;letter-spacing:.7px}.weekdays small{font-size:7px;color:#a1a891;margin-left:5px;letter-spacing:.6px}.weekdays .weekend{color:#a0a78c}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#e9ecdf}.day{position:relative;display:flex;flex-direction:column;align-items:stretch;min-height:112px;padding:12px;background:var(--white);text-align:left;overflow:hidden;transition:background .18s}.day:hover:not(:disabled){background:#f2f5eb}.day:focus-visible{z-index:2;outline-offset:-3px}.day.outside{background:#fafbf6;color:#c4c8b8}.day.future{color:#b8bdac;background:#fdfdf8;opacity:1}.day-number{font-family:Georgia,serif;font-size:13px;line-height:23px;position:relative;z-index:1;display:flex;align-items:center;gap:6px}.day.today{background:#f3f6ec;box-shadow:inset 0 0 0 1px #a0b28b}.day.today .day-number>span:first-child{width:24px;height:24px;display:grid;place-items:center;background:var(--green);color:#fff;border-radius:50%;margin-top:-1px;margin-left:-3px;font-size:12px}.today-word{font:8px var(--sans);color:#7a8d65}.day-plus{margin:auto;opacity:0;color:#94a185;transition:opacity .18s}.day:hover .day-plus{opacity:1}.day-plus.icon{width:18px;height:18px;stroke-width:1}.day-hint{font:8px var(--sans);color:#a7af97;text-align:center;margin:auto 0 7px}.day.has-entry{padding:7px;min-height:112px;justify-content:flex-end}.day.has-entry img{position:absolute;inset:7px;width:calc(100% - 14px);height:calc(100% - 14px);object-fit:cover;border-radius:3px;transition:transform .3s,filter .3s}.day.has-entry:hover img{filter:brightness(.9)}.day.has-entry .day-number{position:absolute;top:11px;left:13px;background:#fffdefe8;border-radius:50%;min-width:23px;height:23px;justify-content:center;font-size:11px;color:var(--ink)}.day.has-entry.today .day-number{background:var(--green);color:#fff}.day.has-entry.today .day-number>span:first-child{margin:0}.day.has-entry .today-word{display:none}.day-entry-title{z-index:1;color:white;background:linear-gradient(transparent,#1b302c9c);padding:20px 7px 7px;border-radius:0 0 3px 3px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:9px;letter-spacing:.5px}.day.photo-unavailable:before{content:"照片暂不可用";font-size:10px;text-align:center;margin:auto;color:#87937b}.calendar-bottom{height:45px;display:flex;justify-content:space-between;align-items:center;padding:0 22px;font-size:9px;color:#a0a58f;letter-spacing:.5px;border-top:1px solid var(--line)}.calendar-bottom>span{display:flex;align-items:center;gap:7px}.calendar-bottom .icon{width:13px;height:13px;margin-left:5px}.legend-dot{background:#b7c2a5;width:5px;height:5px;border-radius:50%}.load-bar{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:10px}.load-bar p{font-size:9px;line-height:1.8;color:#969d88;margin:0}.load-bar button{font-size:9px;white-space:nowrap;color:#8f987e;padding:3px 0;border-bottom:1px solid #d8ddcd}.load-bar .warning{color:#9b8560}.load-bar .error,.form-status.error{color:var(--error)}.empty-month{padding:23px 0;display:flex;align-items:center;gap:17px;border-bottom:1px solid var(--line);margin-top:9px}.empty-leaf{width:43px;height:43px;border-radius:50%;background:#edf0e6;display:grid;place-items:center;color:#8b9a76}.empty-leaf .icon{width:22px;height:22px;stroke-width:1.2}.empty-month h3{font-family:var(--serif);font-size:14px;letter-spacing:1px;font-weight:500;margin:0 0 6px}.empty-month p{font-size:10px;color:#9b9f8e;margin:0;line-height:1.8}.text-button{font-size:10px;display:inline-flex;gap:10px;align-items:center;color:#6b7d59;padding:7px 0}.text-button .icon{width:14px;height:14px}.empty-month .text-button{margin-left:auto;white-space:nowrap}.closing-note{text-align:center;padding:57px 0 53px;color:#818c73}.closing-note>.icon{width:24px;height:24px;stroke-width:1;display:block;margin:0 auto 15px;color:#9aa886}.closing-note p{font:400 16px/1.9 var(--serif);letter-spacing:2px;margin:0 0 14px}.closing-note>span{font-size:7px;letter-spacing:2.1px;color:#b1b5a2}.mobile-break{display:none}.site-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;min-height:74px;font-size:9px;letter-spacing:.5px;color:#9bA18d}.footer-divider{padding:0 10px;color:#c0c6b4}.site-footer a{display:flex;align-items:center;gap:7px}.site-footer .icon{width:13px;height:13px}.site-footer .small-icon{width:11px;height:11px;margin-left:3px}.dialog{border:1px solid #e0e4d6;border-radius:12px;padding:30px;background:var(--white);color:var(--ink);max-width:calc(100% - 32px);max-height:calc(100dvh - 48px);box-shadow:0 24px 100px #20352422;overscroll-behavior:contain}.dialog::backdrop{background:#24382970;backdrop-filter:blur(5px)}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:24px}.dialog-header h2{font:500 25px/1.6 var(--serif);letter-spacing:1px;margin:8px 0 0}.dialog-header>.icon-button{margin-top:-7px;margin-right:-9px}.entry-dialog{width:850px}.editor-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:30px}.upload-area{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #c7cfb9;border-radius:6px;background:#f2f5eb;min-height:325px;height:calc(100% - 35px);cursor:pointer;overflow:hidden}.upload-area:hover,.upload-area.dragging{border-color:var(--green);background:#eaf0e0}.upload-area:focus-within{outline:2px solid var(--green)}#upload-hint{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px;text-align:center}.upload-icon{width:52px;height:52px;display:grid;place-items:center;border:1px solid #d9e0cd;border-radius:50%;margin-bottom:4px;color:#83946f}.upload-icon .icon{width:24px;height:24px;stroke-width:1.2}#upload-hint strong{font:400 17px var(--serif)}#upload-hint>span:not(.upload-icon){font-size:10px;color:#8b967c}#upload-hint small{font-size:9px;line-height:1.9;color:#a4ac96}#photo-preview{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.replace-photo{position:absolute;bottom:14px;background:#fffef5e8;backdrop-filter:blur(4px);padding:9px 16px;border-radius:4px;font-size:11px;display:flex;align-items:center;gap:7px}.replace-photo .icon{width:15px;height:15px}.photo-tip{font-size:9px;color:#a1a88e;line-height:1.7;margin:11px 0 0;text-align:center}label:not(.upload-area){font-size:11px;display:block;margin:0 0 8px;color:#627354}label>span{font-size:9px;color:#afb49f;margin-left:7px}input:not([type=checkbox]):not([type=file]):not([type=month]),textarea{width:100%;border:1px solid #dfe4d5;background:#fcfdf8;border-radius:5px;padding:11px 12px;min-width:0;color:var(--ink);font-size:12px;line-height:1.5}input::placeholder,textarea::placeholder{color:#b2b8a4;font-size:11px}input[type=date]{min-height:42px}input[type=date]::-webkit-calendar-picker-indicator{opacity:.5}.editor-fields input{margin-bottom:19px}textarea{resize:vertical;min-height:155px;max-height:40vh;line-height:1.9}.character-count{display:flex;justify-content:space-between;font-size:8px;gap:8px;color:#a9af9b;margin-top:7px}.form-status{font-size:11px;line-height:1.8;margin:15px 0 0;white-space:pre-line}.form-status:empty{margin:0}.dialog-footer{border-top:1px solid var(--line);margin-top:24px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-footer>div{display:flex;gap:10px}.editor-footer>span{font-size:9px;color:#9ba48b;display:flex;gap:7px;align-items:center}.editor-footer>span .icon{width:15px;height:15px}.connect-dialog{width:470px}.dialog-intro{font-size:12px;color:#8a947d;line-height:2;margin:0 0 22px}.connect-steps{font-size:11px;line-height:1.9;color:#7b886d;padding:18px 20px 18px 35px;background:var(--soft-green);border-radius:6px;margin:0 0 23px}.connect-steps li{padding-left:4px;margin-bottom:9px}.connect-steps li:last-child{margin-bottom:0}.connect-steps a{text-decoration:underline;text-underline-offset:3px}.connect-steps strong{color:#546947;font-weight:500}.checkbox-label{display:flex!important;align-items:center;gap:8px;margin-top:15px!important;color:#8a957b!important;font-size:10px!important}input[type=checkbox]{accent-color:var(--green);width:14px;height:14px;margin:0}.privacy-note{font-size:9px;line-height:1.9;color:#a5ad98;margin:15px 0 21px}.full-width{width:100%}.connected-message{display:flex;gap:15px;align-items:center;background:var(--soft-green);padding:20px;border-radius:6px;margin-bottom:15px}.connected-message>.icon{color:#678755}.connected-message strong{font-size:13px;font-weight:500}.connected-message p{font-size:11px;color:#8d987e;margin:7px 0 0}.detail-dialog{width:670px;padding:0}.detail-top{display:flex;align-items:center;justify-content:space-between;padding:17px 23px;font-size:11px;color:#82916e;letter-spacing:.6px}.detail-photo{width:100%;max-height:53vh;object-fit:contain;background:#edf0e7}.detail-body{padding:26px 32px 12px}.detail-body h2{font:500 26px/1.6 var(--serif);letter-spacing:1px;margin:0 0 17px;overflow-wrap:anywhere}.detail-body .note{font:400 13px/2.2 var(--sans);white-space:pre-wrap;color:#758167;margin:0;overflow-wrap:anywhere}.detail-body .note:empty:after{content:"今天，把这片绿意留在这里。";color:#a1ab94}.entry-updated{font-size:9px;color:#afb6a1;margin:22px 0 0}.detail-footer{margin:17px 32px 25px;display:flex;justify-content:space-between;gap:15px;align-items:center}.detail-navigation{display:flex;align-items:center;gap:8px;font-size:9px;color:#9aa68b}.detail-navigation .icon{width:15px;height:15px}#detail-status{margin:0 32px 20px}#detail-status:empty{margin:0}.delete-entry{display:block;font-size:9px;margin:15px 0 0 auto;padding:5px 0;color:#af9b89}.empty-detail{text-align:center;padding:60px 30px}.empty-detail>.icon{width:44px;height:44px;stroke-width:1;color:#a3b48b;margin-bottom:20px}.empty-detail h2{font:400 25px var(--serif)}.empty-detail p{color:#9ca58f;font-size:12px;line-height:1.9}.about-dialog{width:490px;text-align:center;padding-bottom:35px}.about-dialog .dialog-header{margin-bottom:26px;align-items:center}.about-dialog .section-kicker{font-size:7px;letter-spacing:1.5px}.about-leaf.icon{width:45px;height:45px;stroke-width:1;color:#8aa073}.about-dialog h2{font:400 30px/1.8 var(--serif);letter-spacing:3px;margin:18px 0 23px}.about-dialog p{font-size:11px;line-height:2.3;color:#8c977f;margin:0 0 18px}.about-note{border-top:1px solid var(--line);padding-top:20px;margin:24px 0;font-size:9px;color:#a3ad96;line-height:2}.confirm-dialog{width:380px}.confirm-dialog h2{font:400 24px var(--serif);margin:0 0 15px}.confirm-dialog p{font-size:12px;line-height:2;color:#88957b}.confirm-buttons{display:flex;gap:10px;justify-content:flex-end;margin-top:26px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#3f5b42;box-shadow:0 5px 30px #20352420;border:1px solid #607658;border-radius:6px;color:#fffdf4;display:flex;align-items:center;gap:10px;z-index:10;padding:14px 20px;font-size:12px;max-width:calc(100% - 32px);width:max-content}.toast .icon{width:16px;height:16px}.conflict-actions{display:flex;gap:20px;margin-top:10px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-50px;left:20px;background:var(--green);color:white;padding:10px;z-index:5;font-size:12px}.skip-link:focus{top:10px}.noscript{text-align:center;color:var(--error);padding:25px;font-size:14px}[hidden]{display:none!important}
@media(min-width:1450px){.hero{padding-top:75px;padding-bottom:80px;gap:90px}.hero-visual{height:385px}.hero h1{font-size:65px}.day{min-height:123px}.hero-description{font-size:13px}}
@media(max-width:1050px){.wrap{width:calc(100% - 72px)}.hero{gap:40px;padding-top:50px;padding-bottom:55px}.hero-visual{height:320px}.hero h1{font-size:45px;letter-spacing:3px}.hero-description{font-size:11px}.main-nav{padding-left:0;gap:26px}.day{min-height:98px;padding:9px}.day.has-entry{min-height:98px}.weekdays small{display:none}.title-leaf.icon{width:28px;height:28px;margin-left:4px}.month-english{display:none}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:81px}.brand{font-size:20px;gap:9px;letter-spacing:2px}.brand-mark{width:37px;height:37px}.brand-mark .icon{width:23px;height:23px}.brand-en{font-size:6px;letter-spacing:2.7px}.main-nav{margin-left:auto;margin-right:22px;gap:18px}.main-nav a,.main-nav button{font-size:11px}.main-nav .active:after{bottom:18px}.connection-button{font-size:0;gap:0;padding:9px;width:33px;height:33px;justify-content:center;border:1px solid #dce1d3}.connection-button .icon{width:16px;height:16px}.connection-dot{display:none}.connection-button.connected{background:#e6eddc}.hero{gap:27px;grid-template-columns:1fr 1fr;padding:42px 12px 43px 0}.hero h1{font-size:34px;letter-spacing:2px;margin-top:19px;margin-bottom:18px}.eyebrow{font-size:6px;letter-spacing:1.2px;gap:7px}.little-line{width:17px}.hero-description{font-size:10px;line-height:2.2;letter-spacing:0}.hero-description br{display:none}.hero-visual{height:300px}.hero-photo-frame{border-top-left-radius:90px}.photo-label{padding:20px 12px 15px}.photo-label span{font-size:8px;letter-spacing:.7px}.photo-label span:last-child{display:none}.vertical-note{font-size:8px;letter-spacing:2px;right:-22px;top:40px}.hero-stamp{width:63px;height:63px;left:-19px;bottom:-13px;border-width:4px}.hero-stamp span{font-size:5px;letter-spacing:1.3px}.hero-stamp .icon{width:16px;height:16px}.title-leaf.icon{display:none}.hero .button{min-height:39px;font-size:11px;padding:0 12px;gap:6px}.end-icon{margin-left:10px}.hero-footnote{font-size:8px;margin-top:16px;line-height:1.8}.section-heading{margin-bottom:20px}.section-kicker{font-size:7px;letter-spacing:1.8px}.section-heading h2{font-size:22px}.journal-summary{font-size:9px;gap:4px}.journal-summary .icon{display:none}.journal-summary strong{font-size:18px}.calendar-toolbar{height:70px;padding:0 12px}.month-controls{gap:0}.month-label{gap:7px;margin:0 3px}#month-title{font-size:21px}#month-english{font-size:7px}.today-button{font-size:8px;margin-left:4px;padding:5px 7px}.month-meta{font-size:8px;gap:5px}.icon-button{width:28px;height:32px}.weekdays{height:36px;font-size:9px}.day{min-height:83px;padding:8px}.day.has-entry{min-height:83px;padding:4px}.day.has-entry img{inset:4px;width:calc(100% - 8px);height:calc(100% - 8px);border-radius:2px}.day-number{font-size:11px}.day.has-entry .day-number{left:7px;top:7px;font-size:10px;min-width:20px;height:20px}.day-entry-title{font-size:8px;padding:14px 4px 5px;letter-spacing:0}.today-word{display:none}.day.today .day-number>span:first-child{width:22px;height:22px;margin-left:-3px;font-size:10px}.day-hint{font-size:7px;line-height:1.6;white-space:nowrap}.calendar-bottom{font-size:8px;padding:0 12px;height:39px;letter-spacing:0}.calendar-bottom>span{gap:5px}.calendar-bottom .icon{display:none}.empty-month{gap:12px;padding:20px 0}.empty-leaf{width:36px;height:36px;flex-shrink:0}.empty-leaf .icon{width:20px;height:20px}.empty-month h3{font-size:12px}.empty-month p{font-size:9px}.empty-month .text-button{font-size:9px;gap:5px}.closing-note{padding:45px 0 40px}.closing-note p{font-size:14px;letter-spacing:1.5px}.closing-note>span{font-size:6px;letter-spacing:1.5px}.site-footer{font-size:8px;min-height:65px;letter-spacing:0}.footer-divider{padding:0 5px}.site-footer a{gap:5px}.site-footer .small-icon{display:none}.dialog{padding:24px;max-height:calc(100dvh - 32px)}.editor-layout{gap:20px;grid-template-columns:1fr 1.15fr}.dialog-header h2{font-size:23px}.upload-area{min-height:285px}.character-count>span:first-child{display:none}.character-count{justify-content:flex-end}.editor-footer>span{max-width:150px;line-height:1.8}.editor-footer .button{padding:0 14px}.editor-footer>div{gap:8px}}
@media(max-width:480px){.wrap{width:calc(100% - 36px)}.main-nav{margin-right:17px;gap:15px}.main-nav a,.main-nav button{font-size:10px}.brand{font-size:18px;letter-spacing:1.5px}.brand-mark{width:32px;height:32px}.brand-en{letter-spacing:2px}.hero{grid-template-columns:1fr 42%;gap:20px;padding:34px 10px 36px 0}.hero-visual{height:270px}.hero h1{font-size:31px;letter-spacing:1px;line-height:1.55;margin:18px 0}.eyebrow{font-size:5px;letter-spacing:.9px;white-space:nowrap}.little-line{width:13px}.hero-description{font-size:9px;line-height:2.15;margin-bottom:22px}.hero-footnote{font-size:7px;gap:5px;white-space:nowrap}.hero .button{min-height:37px;font-size:10px}.hero .button .icon{width:14px;height:14px}.hero-photo-frame{border-top-left-radius:65px}.vertical-note{font-size:7px;right:-20px;top:35px;letter-spacing:1.7px}.photo-label{padding:20px 10px 16px}.photo-label span{font-size:7px;letter-spacing:0}.hero-stamp{width:54px;height:54px;bottom:-13px;left:-14px;gap:3px}.hero-stamp .icon{width:14px;height:14px}.hero-stamp span{font-size:5px;letter-spacing:.8px}.section-heading h2{font-size:21px;letter-spacing:1px}.section-heading{margin-bottom:17px}.journal-summary{font-size:8px;gap:3px}.journal-summary strong{font-size:17px}.section-kicker{font-size:6px;letter-spacing:1.6px}.month-controls{gap:0}.month-label{margin:0 2px}#month-title{font-size:18px}#month-english{display:none}.calendar-toolbar{height:61px;padding:0 8px}.month-meta{font-size:7px;gap:4px}.month-meta .tiny-dot{width:3px;height:3px}.today-button{font-size:7px;padding:5px 6px;margin-left:3px}.calendar-toolbar .icon-button{width:25px}.weekdays{font-size:8px;height:32px}.day{min-height:65px;padding:5px}.day.has-entry{min-height:65px;padding:3px}.day.has-entry img{inset:3px;width:calc(100% - 6px);height:calc(100% - 6px)}.day-number{font-size:10px;line-height:20px}.day.today .day-number>span:first-child{width:19px;height:19px;margin-left:-1px;font-size:9px}.day.has-entry .day-number{left:5px;top:5px;font-size:9px;min-width:17px;height:17px}.day.has-entry.today .day-number>span:first-child{width:17px;height:17px;font-size:9px}.day-entry-title{display:none}.day-hint{font-size:6px;margin-bottom:5px}.day-plus.icon{width:13px;height:13px}.calendar-bottom{font-size:6px;padding:0 10px;height:34px}.legend-dot{width:4px;height:4px}.load-bar{gap:9px;margin-top:8px}.load-bar p,.load-bar button{font-size:8px}.empty-month{gap:10px;flex-wrap:wrap}.empty-month h3{font-size:11px;letter-spacing:.5px}.empty-month p{font-size:8px;max-width:210px}.empty-month .text-button{font-size:8px;margin-left:auto;gap:4px}.empty-month .text-button .icon{width:12px}.empty-leaf{width:30px;height:30px}.empty-leaf .icon{width:17px;height:17px}.closing-note p{font-size:13px;line-height:2}.closing-note>.icon{width:21px;height:21px}.mobile-break{display:block}.site-footer{font-size:7px;gap:9px;align-items:flex-start;padding-top:21px;min-height:64px}.site-footer a{font-size:7px;gap:4px;white-space:nowrap}.site-footer .icon{width:11px;height:11px}.footer-divider{padding:0 3px}.dialog{padding:21px;max-width:calc(100% - 24px);border-radius:9px}.dialog-header{margin-bottom:21px}.dialog-header h2{font-size:23px;margin-top:8px}.dialog-header>.icon-button{margin-right:-6px}.editor-layout{grid-template-columns:1fr;gap:18px}.upload-area{height:235px;min-height:0}#upload-hint{gap:9px;padding:17px}.upload-icon{width:42px;height:42px;margin:0}#upload-hint strong{font-size:16px}#upload-hint>span:not(.upload-icon){font-size:9px}#upload-hint small{font-size:8px;line-height:1.7}.photo-tip{font-size:8px;margin-top:7px}.editor-fields input{margin-bottom:15px}.editor-fields textarea{min-height:130px}.editor-footer{flex-wrap:wrap;gap:13px;padding-top:17px;margin-top:18px}.editor-footer>span{max-width:none;flex-basis:100%;font-size:8px}.editor-footer>div{width:100%;justify-content:flex-end}.editor-footer .primary{flex:1}.editor-footer .secondary{min-width:65px}.detail-dialog{padding:0}.detail-top{padding:13px 18px;font-size:10px}.detail-body{padding:23px 22px 10px}.detail-body h2{font-size:24px}.detail-body .note{font-size:12px;line-height:2.1}.detail-footer{margin:16px 22px 23px}.detail-footer .button{font-size:10px;min-height:38px;padding:0 12px}.detail-navigation{gap:3px}.detail-navigation .icon-button{width:25px}.detail-photo{max-height:47vh}.connect-steps{font-size:10px;padding:16px 14px 16px 29px}.dialog-intro{font-size:11px}.privacy-note{font-size:8px}.checkbox-label{font-size:9px!important}.about-dialog .section-kicker{font-size:5px}.about-dialog h2{font-size:27px}.about-dialog p{font-size:10px}.about-note{font-size:8px}.confirm-dialog h2{font-size:22px}.conflict-actions{gap:12px}.conflict-actions .text-button{font-size:9px}.toast{font-size:11px;bottom:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:480px){.hero h1{font-size:clamp(22px,6.6vw,29px);letter-spacing:.5px;white-space:nowrap}.hero-copy{min-width:0}}
@media(max-width:480px){input:not([type=checkbox]):not([type=file]):not([type=month]),textarea{font-size:16px}input::placeholder,textarea::placeholder{font-size:12px}}
