:root{--bg:#f4f1ea;--paper:#fffdf8;--ink:#2c2a26;--ink-soft:#6b6459;--line:#e3ddd0;--accent:#b5502f;--accent-soft:#e7c9bd;--a:#c0392b;--b:#d68910;--c:#7f8c8d;--q2:#1e824c;--delegate:#6c5ce7;--radius:12px;--shadow:0 1px 3px #0000000f, 0 6px 20px #0000000a;--font-hand:"Zen Kurenaido", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;--font-head:"Klee One", "Hiragino Mincho ProN", "Yu Mincho", serif;font-family:var(--font-hand);color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg)}button{cursor:pointer;font-family:inherit}input,textarea{color:var(--ink);font-family:inherit}.desk{background:radial-gradient(at 50% -10%,#ffffff0f,#0000 60%),repeating-linear-gradient(100deg,#4b382b 0 22px,#493628 22px 44px),#4b382b;justify-content:center;align-items:flex-start;min-height:100vh;padding:clamp(10px,3vw,36px);display:flex}.book{background:linear-gradient(135deg,#7a4a33,#5f3826 60%,#4f2f20);border-radius:16px;width:100%;max-width:1080px;padding:16px;position:relative;box-shadow:inset 0 0 0 2px #ffffff0f,inset 0 0 22px #0006,0 22px 48px #00000073}.book:before{content:"";pointer-events:none;border:1.5px dashed #fff0dc59;border-radius:11px;position:absolute;inset:8px}.ribbon{z-index:3;background:linear-gradient(#c0392b,#97281d);width:22px;height:92px;position:absolute;top:0;right:46px;box-shadow:0 2px 6px #00000059}.ribbon:after{content:"";border-top:11px solid #97281d;border-left:11px solid #0000;border-right:11px solid #0000;position:absolute;bottom:-11px;left:0}.topband{z-index:2;align-items:center;gap:12px;padding:6px 14px 14px;display:flex;position:relative}.centerpin{min-width:0;font-family:var(--font-head);letter-spacing:.04em;color:#f6e7d6;text-shadow:0 1px 1px #0006;background:0 0;border:none;border-bottom:1px dashed #0000;flex:1;padding:4px 0;font-size:clamp(14px,2.4vw,19px);font-weight:600}.centerpin::placeholder{color:#f6e7d680}.centerpin:focus{border-bottom-color:#f6e7d680;outline:none}.topband__right{flex-shrink:0;align-items:center;gap:10px;display:flex}.topband__signout{color:#f6e7d6;background:0 0;border:1px solid #f6e7d666;border-radius:999px;padding:4px 12px;font-size:12px}.savebadge{color:#f6e7d6d9;white-space:nowrap;font-size:12px}.savebadge--saving{color:#ffd8a8}.savebadge--error{color:#ff9c8f}.sheet{background-color:#fbf7ea;background-image:radial-gradient(circle at 20% 30%,#b496640d,#0000 40%),radial-gradient(circle at 80% 70%,#b496640d,#0000 40%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-radius:6px;padding:18px clamp(14px,3vw,30px) 26px;position:relative;box-shadow:inset 0 0 40px #785a3214,0 2px 4px #00000040}.daynav{border-bottom:2px solid var(--accent);justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:2px 0 14px;display:flex}.daynav__arrow{border:1px solid var(--line);width:40px;height:40px;color:var(--ink-soft);background:#fffdf6;border-radius:50%;flex-shrink:0;font-size:22px;line-height:1}.daynav__arrow:hover{border-color:var(--accent);color:var(--accent)}.daynav__center{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.daynav__date{font-family:var(--font-head);color:var(--ink);font-size:clamp(20px,4.4vw,30px);font-weight:600}.daynav__controls{align-items:center;gap:8px;display:flex}.daynav__picker{border:1px solid var(--line);background:#fffdf6;border-radius:8px;padding:3px 8px;font-size:13px}.daynav__today{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:999px;padding:4px 12px;font-size:12px}.spread{grid-template-columns:1fr 40px 1fr;align-items:start;display:grid}.page{min-width:0;padding:6px 4px}.page--left{border-right:1px solid #0000;padding-right:18px}.page--right{padding-left:18px}.binding{background:linear-gradient(90deg,#0000001f,#0000 40% 60%,#0000001f),repeating-linear-gradient(#0000 0 12px,#c9ccd1 12px 15px,#9aa0a8 15px 17px,#0000 17px 34px);border-radius:4px;align-self:stretch;min-height:100%;margin:4px 0}@media (width<=720px){.spread{grid-template-columns:1fr}.binding{display:none}.page--left{border-bottom:1px dashed var(--line);padding-bottom:10px;padding-right:4px}.page--right{padding-top:6px;padding-left:4px}}.card{box-shadow:none;background:0 0;border:none;margin-bottom:18px}.card__head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.card__title{font-family:var(--font-head);color:var(--accent);margin:0;padding-left:20px;font-size:15px;font-weight:600;position:relative}.card__title:before{content:"";background:var(--accent);border-radius:3px;width:12px;height:12px;position:absolute;top:3px;left:0;transform:rotate(45deg);box-shadow:inset 0 0 0 2px #fbf7ea}.card__hint{color:var(--ink-soft);font-size:11px}.card__body{padding:0}.auto-textarea{resize:none;width:100%;font-family:var(--font-hand);background:linear-gradient(#785a322e 1px,#0000 1px) 0 calc(2em - 1px)/100% 2em;border:none;padding:0;font-size:16px;line-height:2em;overflow:hidden}.auto-textarea:focus{outline:none}.tasklist__items,.checklist__items{margin:0;padding:0;list-style:none}.task,.checkitem{border-bottom:1px dashed #785a3240;align-items:center;gap:8px;padding:6px 0;display:flex}.task__prio{border:1px solid var(--line);width:34px;height:24px;font-family:var(--font-head);color:var(--ink-soft);background:#fffdf6;border-radius:6px;flex-shrink:0;font-size:12px;font-weight:600}.task__prio--A{background:var(--a);color:#fff;border-color:var(--a)}.task__prio--B{background:var(--b);color:#fff;border-color:var(--b)}.task__prio--C{background:var(--c);color:#fff;border-color:var(--c)}.task__prio--Q2{background:var(--q2);color:#fff;border-color:var(--q2)}.task__prio--delegate{background:var(--delegate);color:#fff;border-color:var(--delegate)}.task__check,.checkitem__check{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}.task__text,.checkitem__text{min-width:0;font-family:var(--font-hand);background:0 0;border:none;flex:1;padding:4px 0;font-size:15px}.task__text:focus,.checkitem__text:focus{outline:none}.task--done .task__text,.checkitem--done .checkitem__text{color:var(--ink-soft);text-decoration:line-through}.task__del,.checkitem__del{color:#785a324d;background:0 0;border:none;flex-shrink:0;width:24px;font-size:18px;line-height:1}.task:hover .task__del,.checkitem:hover .checkitem__del{color:var(--ink-soft)}.task__del:hover,.checkitem__del:hover{color:var(--a)}.tasklist__add,.checklist__add{gap:8px;margin-top:10px;display:flex}.tasklist__input,.checklist__input{border:1px solid var(--line);min-width:0;font-family:var(--font-hand);background:#fffdf6;border-radius:8px;flex:1;padding:7px 10px;font-size:15px}.tasklist__input:focus,.checklist__input:focus{border-color:var(--accent);outline:none}.tasklist__addbtn,.checklist__addbtn{border:1px solid var(--accent);background:var(--accent);color:#fff;font-family:var(--font-head);border-radius:8px;flex-shrink:0;padding:0 14px;font-size:13px}.period{padding-top:4px}.period+.period{border-top:2px dashed #785a324d;margin-top:16px;padding-top:20px}.period__head{align-items:center;gap:12px;display:flex}.period__badge{background:var(--accent);color:#fff;width:44px;height:44px;font-family:var(--font-head);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:600;display:flex;box-shadow:0 2px 4px #00000038}.period__nav{flex:1;min-width:0}.period__nav .daynav{margin-bottom:12px;padding-top:0}.catgoals{flex-direction:column;display:flex}.catgoal{border-bottom:1px dashed #785a3240;align-items:flex-start;gap:10px;padding:6px 0;display:flex}.catgoal__label{width:74px;font-family:var(--font-head);color:var(--ink-soft);flex-shrink:0;padding-top:5px;font-size:13px;font-weight:600}.catgoal__field{flex:1;min-width:0}.single{max-width:620px;margin:0 auto;padding:6px 4px}.loading{text-align:center;color:var(--ink-soft);padding:40px}.foot{text-align:center;color:#f6e7d6b3;margin-top:12px;font-size:11px}.login{background:repeating-linear-gradient(100deg,#4b382b 0 22px,#493628 22px 44px),#4b382b;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login__box{text-align:center;background:linear-gradient(135deg,#7a4a33,#5f3826 60%,#4f2f20);border-radius:16px;width:100%;max-width:360px;padding:40px 30px;box-shadow:inset 0 0 0 2px #ffffff0f,0 22px 48px #00000073}.login__title{font-family:var(--font-head);letter-spacing:.3em;color:#f6e7d6;margin:0;font-size:30px}.login__lead{color:#e7c9bd;font-family:var(--font-head);margin:6px 0 24px;font-size:13px}.login__tabs{gap:6px;margin-bottom:16px;display:flex}.login__tab{color:#e7c9bd;font-family:var(--font-head);background:0 0;border:1px solid #f6e7d666;border-radius:8px;flex:1;padding:8px 0;font-size:14px}.login__tab--active{color:var(--accent);background:#fbf7ea;border-color:#fbf7ea;font-weight:600}.login__form{flex-direction:column;gap:12px;display:flex}.login__note{color:#f6e7d6bf;margin:16px 0 0;font-size:12px}.login__input{border:1px solid var(--line);background:#fbf7ea;border-radius:8px;padding:10px 12px;font-size:15px}.login__input:focus{outline:none}.login__btn{background:var(--accent);color:#fff;font-family:var(--font-head);border:none;border-radius:8px;padding:11px;font-size:15px;font-weight:600}.login__btn:disabled{opacity:.6}.login__error{color:#ff9c8f;margin:0;font-size:12px}.login__sent{color:#f6e7d6;font-size:14px;line-height:1.7}
