:root{--ink:#26372f;--ink-soft:#6f756b;--paper:#f6f0e4;--paper-deep:#e9dfcc;--accent:#b75539}.app-shell{min-height:100dvh;padding:max(18px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));isolation:isolate;touch-action:pan-y;background:radial-gradient(circle at 16% 12%,#ffffff80,#0000 30%),linear-gradient(135deg,#d8d1c2 0%,#cfc8b9 52%,#ded7ca 100%);display:grid;position:relative;overflow:hidden}.app-shell:before{z-index:-1;pointer-events:none;content:"";opacity:.26;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");position:absolute;inset:0}.ambient-shape{z-index:-1;border:1px solid #26372f21;border-radius:50%;position:absolute}.ambient-shape-top{width:54vmin;height:54vmin;top:-20vmin;right:-11vmin}.ambient-shape-bottom{width:66vmin;height:66vmin;bottom:-30vmin;left:-16vmin;box-shadow:0 0 0 9vmin #26372f09}.memo-book{background:linear-gradient(90deg, transparent 0 28px, #b7553938 28px 29px, transparent 29px), var(--paper);border:1px solid #453b2c21;border-radius:4px 16px 16px 4px;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(100%,760px);min-height:min(780px,100dvh - 36px);margin:auto;padding:clamp(22px,5vw,52px) clamp(20px,7vw,64px) clamp(18px,4vw,36px);display:grid;position:relative;overflow:hidden;box-shadow:0 2px 2px #302a2214,0 22px 60px #302a222e,inset 14px 0 22px #453b2c0b}.memo-book:after{z-index:3;pointer-events:none;content:"";background:linear-gradient(100deg,#fff3,#0000 18% 82%,#594b340b);position:absolute;inset:0}.book-header,.month-navigation,.editor-wrap,.book-footer{z-index:4;position:relative}.book-header{justify-content:flex-end;align-items:center;display:flex}.today-button{color:var(--ink);letter-spacing:.08em;cursor:pointer;background:0 0;border:1px solid #26372f47;border-radius:999px;padding:7px 12px;font-size:11px;font-weight:600;transition:color .16s,background .16s,opacity .16s}.today-button:disabled{opacity:.28;cursor:default}.month-navigation{grid-template-columns:42px 1fr 42px;align-items:center;gap:clamp(10px,4vw,28px);padding:clamp(30px,6vh,58px) 0 clamp(24px,5vh,45px);display:grid}.month-title{text-align:center}.date-selectors{justify-content:center;align-items:center;gap:7px;margin-bottom:5px;display:flex}.select-shell{display:inline-flex;position:relative}.select-shell:after{pointer-events:none;content:"⌄";color:var(--ink-soft);font-size:13px;line-height:1;position:absolute;top:50%;right:10px;transform:translateY(-62%)}.select-shell select{appearance:none;height:38px;color:var(--ink);letter-spacing:.08em;cursor:pointer;background:#fff3;border:1px solid #26372f38;border-radius:7px;padding:0 29px 0 12px;font-size:12px;font-weight:600;transition:background .16s,border-color .16s}.year-select-shell select{width:98px}.month-select-shell select{width:72px}.month-title h1{justify-content:center;align-items:flex-end;gap:clamp(14px,4vw,26px);margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,BIZ UDPMincho,serif;font-weight:400;line-height:1;display:flex}.year-display,.month-display{align-items:flex-end;display:inline-flex}.year-display{color:var(--ink-soft);gap:4px;margin-bottom:14px}.year-number{font-variant-numeric:lining-nums;letter-spacing:-.03em;font-size:clamp(28px,7vw,46px)}.year-suffix{color:var(--accent);margin-bottom:3px;font-size:clamp(13px,3vw,17px)}.month-display{gap:7px}.month-number{font-variant-numeric:lining-nums;letter-spacing:-.07em;font-size:clamp(76px,19vw,132px)}.month-suffix{color:var(--accent);letter-spacing:.08em;margin-bottom:13px;font-size:clamp(19px,4vw,27px)}.nav-button{width:42px;height:42px;color:var(--ink);cursor:pointer;background:#ffffff2e;border:1px solid #26372f2e;border-radius:50%;place-items:center;padding:0;transition:color .16s,background .16s,transform .16s;display:grid}.nav-button:active{transform:scale(.95)}.nav-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:19px}.editor-wrap{grid-template-rows:auto auto minmax(0,1fr);min-height:0;display:grid}.editor-label-row{border-bottom:1px solid #26372f3d;justify-content:space-between;align-items:center;gap:18px;padding-bottom:10px;display:flex}.editor-label-row h2{letter-spacing:.12em;margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:13px;font-weight:600}.save-status{color:var(--ink-soft);letter-spacing:.06em;align-items:center;gap:7px;font-size:10px;display:inline-flex}.save-dot{background:#73856f;border-radius:50%;width:5px;height:5px}.schedule-composer{padding:15px 0 16px}.schedule-composer>label{color:var(--ink-soft);letter-spacing:.12em;margin-bottom:7px;font-size:10px;font-weight:600;display:block}.composer-controls{grid-template-columns:minmax(0,1fr) auto;gap:9px;display:grid}.composer-controls input{width:100%;height:46px;color:var(--ink);letter-spacing:.025em;caret-color:var(--accent);background:#ffffff57;border:1px solid #26372f33;border-radius:8px;outline:none;padding:0 15px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:16px}.composer-controls input::placeholder{color:#4d524861}.composer-controls input:focus{background:#ffffff94;border-color:#b7553994}.composer-controls button{min-width:72px;height:46px;color:var(--paper);letter-spacing:.1em;background:var(--ink);cursor:pointer;border:0;border-radius:8px;padding:0 16px;font-size:12px;font-weight:700;transition:opacity .16s,transform .16s,background .16s}.composer-controls button:active{transform:scale(.97)}.composer-controls button:disabled{opacity:.26;cursor:default}.schedule-list-wrap{overscroll-behavior:contain;scrollbar-color:#26372f3d transparent;scrollbar-width:thin;min-height:0;padding-right:3px;overflow-y:auto}.schedule-list{border-top:1px solid #26372f2e;margin:0;padding:0;list-style:none}.schedule-item{border-bottom:1px solid #26372f29;grid-template-columns:30px minmax(0,1fr) auto auto 40px;align-items:center;gap:10px;min-height:62px;padding:9px 0;display:grid}.schedule-index{color:var(--accent);letter-spacing:.08em;align-self:start;padding-top:6px;font-size:9px;font-weight:700}.schedule-item p{overflow-wrap:anywhere;color:var(--ink);letter-spacing:.025em;white-space:pre-wrap;margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(15px,3vw,17px);line-height:1.55}.schedule-edit-form{gap:7px;min-width:0;display:grid}.schedule-edit-form input{width:100%;min-width:0;height:38px;color:var(--ink);background:#ffffff73;border:1px solid #b7553980;border-radius:6px;outline:none;padding:0 10px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:15px}.edit-actions{flex-wrap:wrap;gap:6px;display:flex}.edit-actions button{letter-spacing:.06em;cursor:pointer;border-radius:5px;min-height:28px;padding:3px 9px;font-size:10px;font-weight:700}.edit-save-button{color:var(--paper);background:var(--ink);border:1px solid var(--ink)}.edit-cancel-button{color:var(--ink-soft);background:0 0;border:1px solid #26372f38}.edit-actions button:disabled{opacity:.3;cursor:default}.edit-button{color:#26372f7a;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;width:32px;height:38px;padding:0;transition:color .16s,background .16s,border-color .16s;display:grid}.edit-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:16px}.delete-button{color:#26372f80;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;transition:color .16s,background .16s,border-color .16s;display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.reorder-controls{gap:2px;display:grid}.reorder-button{color:#26372f7a;cursor:pointer;background:#ffffff2e;border:1px solid #26372f24;border-radius:5px;place-items:center;width:30px;height:24px;padding:0;transition:color .16s,background .16s,border-color .16s,opacity .16s;display:grid}.reorder-button:disabled{opacity:.2;cursor:default}.reorder-glyph{font-size:15px;line-height:1}.delete-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:17px}.empty-state{color:#26372f57;text-align:center;place-content:center;gap:10px;min-height:150px;display:grid}.empty-state span{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:32px;font-weight:300;line-height:1}.empty-state p{letter-spacing:.08em;margin:0;font-size:11px}.book-footer{color:#26372f6b;letter-spacing:.24em;justify-content:center;align-items:center;gap:10px;padding-top:20px;font-size:8px;font-weight:700;display:flex}.swipe-line{background:currentColor;width:26px;height:1px;position:relative}.swipe-line:after{content:"";border-top:1px solid;border-right:1px solid;width:4px;height:4px;position:absolute;top:-2px;right:0;transform:rotate(45deg)}.from-right{animation:.32s cubic-bezier(.22,.7,.3,1) both enter-from-right}.from-left{animation:.32s cubic-bezier(.22,.7,.3,1) both enter-from-left}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@keyframes enter-from-right{0%{opacity:0;transform:translate(18px)}}@keyframes enter-from-left{0%{opacity:0;transform:translate(-18px)}}@media (width<=540px){.app-shell{padding:0}.memo-book{width:100%;min-height:100dvh;padding:max(22px, env(safe-area-inset-top)) 23px max(16px, env(safe-area-inset-bottom));background:linear-gradient(90deg, transparent 0 15px, #b7553933 15px 16px, transparent 16px), var(--paper);box-shadow:none;border:0;border-radius:0}.month-navigation{grid-template-columns:38px 1fr 38px}.nav-button{width:38px;height:38px}.month-navigation{padding:10px 0 18px}.editor-label-row{align-items:flex-end}}@media (hover:hover) and (pointer:fine){.today-button:not(:disabled):hover{color:var(--paper);background:var(--ink)}.nav-button:hover{color:var(--paper);background:var(--ink);transform:scale(1.06)}.select-shell select:hover{background:#ffffff80;border-color:#26372f6b}.composer-controls button:not(:disabled):hover{background:var(--accent)}.delete-button:hover{color:var(--accent);background:#b7553914;border-color:#b7553933}.reorder-button:not(:disabled):hover{color:var(--paper);background:var(--ink);border-color:var(--ink)}.edit-button:hover{color:var(--accent);background:#b7553914;border-color:#b7553933}.edit-save-button:hover{background:var(--accent);border-color:var(--accent)}.edit-cancel-button:hover{color:var(--ink);background:#ffffff5c}}@media (height<=670px){.memo-book{min-height:100dvh}.month-navigation{padding:20px 0 18px}.month-number{font-size:70px}.editor-wrap{grid-template-rows:auto auto minmax(120px,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{color:#26372f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#d7d0c1;font-family:Avenir Next,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;min-height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none;min-height:100dvh}button,textarea,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}
