:root{--font-display:"Paperozi", "Pretendard", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Pretendard", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-diary:var(--font-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f5f2;--panel:#fff;--panel-strong:#efefeb;--text:#111;--muted:#666;--line:#111;--accent:#111;--accent-strong:#111;--accent-soft:#f0f0f0;--danger:#111;--shadow:6px 6px 0 #111;font-family:var(--font-body)}:root[data-theme=dark]{--bg:#151515;--panel:#202020;--panel-strong:#2b2b2b;--text:#f4f4f0;--muted:#b4b4ad;--line:#f4f4f0;--accent:#f4f4f0;--accent-strong:#fff;--accent-soft:#333;--danger:#f4f4f0;--shadow:5px 5px 0 #f4f4f0}[hidden]{display:none!important}@font-face{font-family:DreamLife;src:url(../fonts/DreamLife-V1.0.0_by_MaxiGamer.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Paperozi;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-1Thin.woff2)format("woff2");font-weight:100;font-display:swap}@font-face{font-family:Paperozi;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-4Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Paperozi;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-5Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Paperozi;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-7Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Paperozi;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-9Black.woff2)format("woff2");font-weight:900;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Thin.woff2)format("woff2");font-weight:100;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraLight.woff2)format("woff2");font-weight:200;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Light.woff2)format("woff2");font-weight:300;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraBold.woff2)format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Pretendard;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Black.woff2)format("woff2");font-weight:900;font-display:swap}*{box-sizing:border-box}body{background:linear-gradient(45deg, #11111109 25%, transparent 25%), linear-gradient(-45deg, #11111109 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #11111109 75%), linear-gradient(-45deg, transparent 75%, #11111109 75%), var(--bg);min-height:100vh;color:var(--text);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;margin:0;font-size:13.5px}:root[data-theme=dark] body{background:linear-gradient(45deg, #ffffff0a 25%, transparent 25%), linear-gradient(-45deg, #ffffff0a 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ffffff0a 75%), linear-gradient(-45deg, transparent 75%, #ffffff0a 75%), var(--bg);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait}.app-shell{width:min(1240px,100% - 28px);padding:12px 0 max(96px, env(safe-area-inset-bottom));margin:0 auto}.intro-shell,.login-shell{width:min(1120px,100% - 32px);min-height:100vh;margin:0 auto;padding:28px 0 42px}.intro-shell{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:center;gap:24px;display:grid}.login-shell{place-items:center;display:grid}.intro-hero{border:2px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:8px;padding:clamp(28px,7vw,72px)}.intro-hero h1{max-width:760px;font-size:clamp(2.5rem,5.7vw,5rem);line-height:.9}.intro-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.intro-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.intro-tile{border:2px solid var(--line);background:var(--panel);min-height:150px;font-size:1.5rem;font-family:var(--font-display);border-radius:8px;padding:18px;font-weight:900;line-height:1.05;box-shadow:5px 5px #111}.intro-tile span{color:var(--muted);margin-top:10px;font-size:.92rem;font-weight:700;line-height:1.45;display:block}.intro-tile.big{background-color:#fff;background-image:linear-gradient(#fff 0 104px,#ffffffeb 120px,#0000 154px),radial-gradient(circle,#111 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:100% 100%,14px 14px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;grid-row:span 2;min-height:312px}.intro-tile.wide{grid-column:1/-1}.login-card{grid-template-columns:minmax(0,.95fr) minmax(320px,.65fr);gap:18px;width:min(980px,100%);display:grid}.login-copy,.login-box{border:2px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:8px}.login-copy{align-content:center;min-height:520px;padding:clamp(28px,6vw,58px);display:grid}.login-box{align-content:center;gap:14px;padding:28px;display:grid}.login-card h1{font-size:clamp(3rem,8vw,6rem);line-height:.9}.full-button{width:100%}.login-status{border:2px solid var(--line);background:var(--panel-strong);min-height:44px;color:var(--text);border-radius:8px;margin-top:0;padding:10px 12px;font-weight:700}.login-status[data-tone=active]{background:repeating-linear-gradient(90deg,#fff 0 8px,#f0f0f0 8px 16px)}.login-status[data-tone=success]{color:#fff;background:#111}.login-status[data-tone=warn],.login-status[data-tone=error]{background-color:#fff;background-image:radial-gradient(#111 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:12px 12px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.hero{justify-content:space-between;align-items:flex-start;gap:14px;padding:10px 0;display:flex}.hero .eyebrow{margin-bottom:13px}.eyebrow,.section-kicker{font-family:var(--font-display);color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;text-underline-offset:4px;margin:0 0 6px;font-size:.78rem;font-weight:800;text-decoration:underline;text-decoration-thickness:2px}h1,h2{font-family:var(--font-display);letter-spacing:0;margin:0}h1{font-size:clamp(1.8rem,3.3vw,3.05rem);line-height:.95}.brand-home{color:inherit;font-family:"DreamLife", var(--font-display);letter-spacing:.01em;background:0 0;border:0;padding:0;font-size:clamp(2.35rem,5vw,4.4rem);font-weight:400;line-height:.86;text-decoration:none}.brand-home:hover{text-decoration:none}.settings-icon-button{border-radius:999px;width:38px;height:38px;min-height:38px;padding:0}.settings-icon-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}h2{font-size:1rem}.hero-copy{max-width:520px;color:var(--muted);margin:8px 0 0;font-size:.9rem;font-weight:400;line-height:1.5}.hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding-top:4px;display:flex}.primary-button,.ghost-button,.ghost-link,.inline-form button,.icon-button{font-family:var(--font-display);border:2px solid var(--line);border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;font-weight:800;text-decoration:none;display:inline-flex}.primary-button svg,.ghost-button svg,.ghost-link svg,.inline-form button svg,.icon-button svg{flex:none}.primary-button{background:var(--accent);color:#fff;padding:0 16px}.primary-button:disabled,.ghost-button:disabled,.icon-button:disabled{opacity:.72;box-shadow:none;transform:translate(2px,2px)}.primary-button.is-loading:before{content:"";border:2px solid;border-right-color:#0000;border-radius:999px;width:.86em;height:.86em;margin-right:8px;animation:.65s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.ghost-button{background:var(--panel);color:var(--text);padding:0 14px}.ghost-link{background:var(--panel);min-height:30px;color:var(--text);border-radius:10px;padding:0 14px}.dashboard{grid-template-columns:1.15fr .85fr;align-items:start;gap:12px;display:grid}.panel{border:2px solid var(--line);background:var(--panel);min-width:0;box-shadow:var(--shadow);border-radius:8px;padding:12px}.planner-sheet{border:2px solid var(--line);box-shadow:var(--shadow);background:#ffffffad;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:8px;padding:8px;display:grid}.planner-left{gap:7px;min-width:0;display:grid}.planner-sheet .panel{box-shadow:none;padding:9px}.planner-sheet .panel-heading{margin-bottom:8px}.time-panel{position:sticky;top:72px}.time-panel>.panel-heading{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;display:grid}.time-panel-title{align-items:baseline;gap:9px;min-width:0;display:flex}.time-panel-title .section-kicker{margin:0}.time-panel-title h2{white-space:nowrap}.time-panel .panel-heading-controls{grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;margin-left:0;display:grid}.time-panel-actions{grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:8px;width:100%;display:grid}.timeline-pager{border:2px solid var(--line);background:var(--panel);width:100%;min-width:0;box-shadow:2px 2px 0 var(--line);border-radius:10px;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;padding:3px;display:grid}.timeline-pager .icon-button{width:30px;min-width:30px;height:30px;min-height:30px;box-shadow:none;border:0;border-radius:7px}.timeline-pager .icon-button:hover,.timeline-date-button:hover{background:var(--text);color:var(--panel);transform:none}.timeline-date-button{width:100%;min-width:0;min-height:30px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:0 8px;font-size:.76rem;font-weight:900;overflow:hidden}.time-panel-actions>.icon-button,.time-panel .home-collapse-button{border:2px solid var(--line);background:var(--panel);width:38px;min-width:38px;height:38px;min-height:38px;box-shadow:2px 2px 0 var(--line);border-radius:10px}.time-panel-actions>.icon-button:hover,.time-panel .home-collapse-button:hover{background:var(--text);color:var(--panel);box-shadow:3px 3px 0 var(--line);transform:translate(-1px,-1px)}:root[data-theme=dark] .timeline-pager{background:var(--panel-strong)}.event-delete-actions{flex-wrap:wrap}#eventDeleteOccurrenceButton{border:2px solid var(--line);background:radial-gradient(#1113 1px, transparent 1px), var(--panel);color:var(--text);background-size:8px 8px}:root[data-theme=dark] #eventDeleteOccurrenceButton{background:radial-gradient(#ffffff2e 1px, transparent 1px), var(--panel);background-size:8px 8px}.focus-panel{grid-column:1/-1}.today-focus textarea{min-height:94px;font-family:var(--font-display);letter-spacing:0;font-size:clamp(1.45rem,3vw,2.2rem);font-weight:900;line-height:1.15}.auth-panel{grid-template-columns:minmax(0,.95fr) minmax(320px,.9fr);align-items:center;gap:18px;margin-bottom:18px;display:grid}.auth-greeting{min-width:0}.auth-panel h2{margin-bottom:8px}.auth-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;margin-top:14px;display:flex}.text-action{min-height:auto;color:var(--text);font-family:var(--font-body);text-underline-offset:4px;background:0 0;border:0;padding:0;font-size:.88rem;font-weight:700;text-decoration:underline}.week-panel,.notes-panel{box-shadow:none}.panel-heading{justify-content:flex-start;align-items:center;gap:10px;margin-bottom:10px;display:flex}.panel-heading>:first-child{min-width:0}.panel-heading>:last-child:not(:first-child){margin-left:auto}.panel-heading-controls{flex:none;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.panel-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.segmented-control{border:2px solid var(--line);background:#fff;border-radius:999px;display:inline-flex;overflow:hidden}.segmented-control button{min-height:30px;color:var(--text);background:0 0;border:0;padding:0 9px;font-size:.84rem;font-weight:900}.segmented-control button.is-active{background:var(--text);color:#fff}.score-pill{font-family:var(--font-display);border:1.5px solid var(--line);background:var(--accent-soft);min-height:26px;color:var(--accent-strong);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:.72rem;font-weight:700;display:inline-flex}.score-pill strong{font-size:.78rem;font-weight:900}.field-label{font-family:var(--font-body);color:#5d5d5d;letter-spacing:.01em;margin-bottom:8px;font-size:.82rem;font-weight:700;display:block}.label-row{align-items:center;gap:5px;display:inline-flex}.label-row svg{flex:none}.icon-input{border:1.5px solid var(--line);background:var(--panel);min-height:38px;color:var(--muted);border-radius:8px;align-items:center;gap:7px;padding:0 10px;display:flex}.icon-input input,.icon-input input[type=text]{min-height:auto;color:var(--text);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.icon-input:focus-within{outline:2px solid var(--text);outline-offset:2px}.diary-body-label{color:var(--text)}textarea,input[type=text],input[type=email],input[type=url],input[type=search],input[type=date],input[type=time],input[type=number],select{width:100%;min-width:0;max-width:100%;color:var(--text);background:#fbfbfa;border:1.5px solid #242424;border-radius:7px;outline:none}textarea{resize:vertical;padding:10px;line-height:1.5;display:block}input[type=text],input[type=email],input[type=url],input[type=search],input[type=date],input[type=time],input[type=number],select{min-height:34px;padding:0 10px}textarea:focus,input[type=text]:focus,input[type=email]:focus,input[type=url]:focus,input[type=search]:focus,input[type=date]:focus,input[type=time]:focus,input[type=number]:focus,select:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #1111111a}.view-tabs{z-index:5;border:2px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;justify-content:center;gap:4px;margin-bottom:12px;padding:5px;display:flex;position:sticky;top:0;box-shadow:4px 4px #111}.view-tab{font-family:var(--font-display);max-width:none;min-height:30px;color:var(--text);letter-spacing:.02em;background:0 0;border:0;border-radius:6px;flex:92px;padding:0 12px;font-size:.8rem;font-weight:700}.view-tab.is-active{background:var(--text);color:#fff;box-shadow:none;font-weight:900}:root[data-theme=dark] .view-tab.is-active{color:#111}.view-panel[hidden]{display:none}.progress-wrap{margin-top:12px}.progress-bar{border:2px solid var(--line);background:var(--panel-strong);border-radius:999px;height:12px;overflow:hidden}.progress-bar span{border-radius:inherit;background:repeating-linear-gradient(45deg,#111 0 8px,#444 8px 16px);width:0%;height:100%;transition:width .18s;display:block}.weather-panel{background:linear-gradient(135deg,#11111109,#0000 45%),#fff}.weather-card{border:2px solid var(--line);background:#f8f8f5;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:74px;padding:10px;display:grid;position:relative;overflow:hidden}.weather-card.is-rainy{background:linear-gradient(#fffffff5 0%,#efefebfa 100%),#f4f4ef}.weather-card.is-rainy:before,.weather-card.is-rainy:after{content:"";pointer-events:none;display:none;position:absolute}.weather-rain-lines{display:none}.weather-card.is-rainy .weather-rain-lines{z-index:0;pointer-events:none;display:block;position:absolute;inset:-34px -18px -24px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)}.weather-rain-lines i{top:-20%;left:var(--rain-x);width:var(--rain-w,1px);height:var(--rain-h,24px);opacity:0;transform:translate3d(22px, -120%, 0) rotate(var(--rain-tilt,18deg));animation:weather-drop-fall var(--rain-d,1.9s) linear infinite;animation-delay:var(--rain-delay,0s);will-change:transform, opacity;border-radius:999px;position:absolute}.weather-rain-lines .rain-line{background:#ffffff52;border:1.5px solid #111111c2;box-shadow:2px 2px #11111138}@keyframes weather-drop-fall{0%{opacity:0;transform:translate3d(22px, -120%, 0) rotate(var(--rain-tilt,18deg)) scale(.86)}14%{opacity:var(--rain-o,.36)}78%{opacity:var(--rain-o,.36)}to{opacity:0;transform:translate3d(var(--rain-drift,-30px), 180px, 0) rotate(var(--rain-tilt,18deg)) scale(1.04)}}@media (prefers-reduced-motion:reduce){.weather-rain-lines i{animation-name:weather-drop-fall;animation-duration:3.2s;animation-timing-function:linear;animation-iteration-count:infinite}}.weather-rain-test.is-active{background:var(--text);color:#fff}.weather-card>*{z-index:1;position:relative}.weather-card strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.9rem,4vw,2.8rem);font-weight:900;line-height:1}.weather-card p{font-family:var(--font-display);margin:0 0 5px;font-size:1rem;font-weight:700}.weather-card span{color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.45;display:block}.auth-weather{border-left:2px solid var(--line);gap:7px;padding-left:18px;display:grid}.today-mini-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.today-mini-summary button{border:1.5px solid var(--line);background:var(--panel);min-width:0;color:var(--muted);font-family:var(--font-body);text-align:center;box-shadow:none;border-radius:999px;padding:6px 8px;font-size:.75rem;font-weight:700}.today-mini-summary button:hover{background:var(--text);color:var(--panel)}.inline-form{grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-bottom:8px;display:grid}.date-form{grid-template-columns:minmax(0,1fr) 120px 160px auto}.inline-form>*,.date-form>*{min-width:0}.tracker-form input[type=number][hidden],.tracker-weekdays[hidden]{display:none}.tracker-form{gap:12px;width:100%;max-width:100%;overflow-x:hidden}.tracker-helper{margin:-2px 0 2px}.tracker-card{background:#f8f8f4;border:1.5px solid #d7d7d2;border-radius:14px;gap:10px;min-width:0;padding:12px;display:grid}.tracker-title-card{grid-template-columns:auto minmax(0,1fr);align-items:end}.tracker-step{border:1.5px solid var(--line);background:var(--text);color:#fff;width:34px;height:34px;font-family:var(--font-display);border-radius:999px;place-items:center;font-size:.8rem;font-weight:900;display:inline-grid}.tracker-section-head{align-items:center;gap:9px;display:flex}.tracker-section-head strong{font-family:var(--font-display);margin-top:1px;font-size:1rem;font-weight:900;display:block}.color-palette{background:#fff;border:1.5px solid #d1d1cb;border-radius:12px;flex-wrap:wrap;place-self:start;align-items:center;gap:6px;width:fit-content;max-width:100%;padding:8px;display:flex}.color-slot{width:26px;height:26px;display:inline-flex;position:relative;overflow:visible}.color-palette .color-chip{border:2px solid var(--line);background:var(--chip-color);width:22px;min-width:22px;height:22px;min-height:22px;color:var(--text);box-shadow:none;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:0;line-height:0;display:inline-flex;position:relative}.color-palette .color-chip-empty{border:2.5px dashed var(--line);background:#ffffff8c;width:26px;min-width:26px;height:26px;min-height:26px}.color-palette .color-chip-empty svg{fill:none;width:14px;height:14px;stroke:var(--line);stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;display:inline-flex}.color-chip-remove{z-index:2;border:2px solid var(--line);background:var(--paper);width:17px;min-width:17px;height:17px;min-height:17px;color:var(--text);font-family:var(--font-display);opacity:0;border-radius:999px;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .16s,transform .16s;display:inline-flex;position:absolute;top:-8px;right:-8px;transform:scale(.9)}.color-slot:hover .color-chip-remove,.color-slot:focus-within .color-chip-remove{opacity:1;transform:scale(1)}.color-chip-remove svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;width:10px;height:10px}.color-palette .color-chip span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.color-palette .color-chip.is-active{outline:2px solid #fff;transform:translateY(-1px);box-shadow:0 0 0 4px #111}.color-palette .color-chip:focus-visible{outline:2px solid #fff;box-shadow:0 0 0 4px #111}.color-palette:after{color:var(--muted);content:attr(data-selected);flex:1 0 100%;margin-top:2px;font-size:.72rem;font-weight:800}.routine-builder,.stack-form{gap:10px;display:grid}.form-grid{grid-template-columns:1.1fr 1fr .8fr;gap:10px 12px;display:grid}.event-time-mode-field{grid-column:span 2}.event-time-mode-field small{color:var(--muted);margin-top:6px;font-size:.72rem;font-weight:700;line-height:1.45;display:block}.inline-toggle{border:1.5px solid var(--line);background:var(--panel);width:fit-content;color:var(--text);font-family:var(--font-display);border-radius:999px;justify-self:start;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;font-weight:900;transition:background .12s,color .12s,transform .12s;display:inline-flex}.inline-toggle input{width:16px;height:16px;accent-color:var(--text)}.inline-toggle:has(input:checked){color:#fff;background:#111;border-color:#111;transform:translateY(-1px)}.inline-toggle:has(input:checked) input{accent-color:#fff}.form-grid label[hidden],.field-label[hidden],.weekday-options[hidden]{display:none}.routine-basic-grid{grid-template-columns:1fr 1fr}.routine-end-hint{margin-top:-4px}.recurrence-extra-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.modal-card .form-grid,.modal-card .weekday-options,.modal-card .color-palette{margin-top:2px}.modal-card .form-grid label{min-width:0}.tracker-card input,.tracker-card select,.tracker-card .field-label{min-width:0;max-width:100%}.field-label select,.field-label input{margin-top:6px}.weekday-options{background:#f4f4f1;border:1.5px solid #d7d7d2;border-radius:10px;flex-wrap:wrap;gap:6px;padding:8px;display:flex}.weekday-chip{font-family:var(--font-display);background:#fff;border:1.5px solid #c9c9c3;border-radius:999px;justify-content:center;align-items:center;min-width:42px;min-height:30px;padding:0 10px;font-weight:900;transition:background .12s,color .12s,transform .12s;display:inline-flex}.weekday-chip input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.weekday-chip:has(input:checked){color:#fff;background:#111;border-color:#111;transform:translateY(-1px)}.inline-form button{background:var(--text);color:#fff;padding:0 14px}.icon-button{background:var(--panel);width:42px;color:var(--text);padding:0;font-size:1.4rem;line-height:1}.icon-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.8px;width:20px;height:20px}.check-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.check-item{border:2px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-height:40px;padding:6px 7px 6px 9px;display:grid}.check-item label{align-items:center;gap:10px;min-width:0;display:flex}.check-item input{width:18px;height:18px;accent-color:var(--accent);flex:none}.item-text{overflow-wrap:anywhere;line-height:1.35}.check-item.is-done .item-text{color:var(--muted);text-decoration:line-through}.check-item button{font-family:var(--font-display);width:auto;min-width:30px;height:28px;color:var(--danger);background:0 0;border:0;border-radius:8px;padding:0 7px;font-size:.82rem;font-weight:800}.check-item button:hover{background:#f7e6e2}.empty-item{color:var(--muted);font-weight:800}.group-heading{color:var(--text);letter-spacing:.08em;text-transform:uppercase;text-underline-offset:4px;margin:4px 0 -2px;font-size:.78rem;font-weight:900;text-decoration:underline;text-decoration-thickness:2px}.routine-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;margin:12px 0;display:grid}.routine-filter-list{flex-wrap:wrap;gap:7px;display:flex}.task-group-toolbar{margin:12px 0 10px}.task-group-toolbar .routine-group-filter{flex-wrap:wrap;gap:7px;display:flex}.routine-filter-chip{gap:7px;min-height:34px;padding:0 10px}.folder-chip svg,.folder-icon,.routine-category-icon{flex:none}.routine-category-icon{width:17px;height:17px;overflow:visible}.routine-category-icon path{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.folder-icon{border:1.8px solid;border-radius:3px;width:16px;height:12px;position:relative}.folder-icon:before{content:"";background:inherit;border:1.8px solid;border-bottom:0;border-radius:3px 3px 0 0;width:8px;height:5px;position:absolute;top:-5px;left:1px}.folder-chip em{background:var(--panel-strong);min-width:22px;min-height:22px;color:var(--muted);border-radius:999px;place-items:center;padding:0 6px;font-size:.72rem;font-style:normal;font-weight:900;display:inline-grid}.folder-chip.is-active em{color:currentColor;background:#ffffff2e}.routine-category-list{gap:8px;display:grid}.routine-category-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;display:grid}.routine-category-row .folder-chip{justify-content:flex-start;min-width:0}.routine-category-row .folder-chip span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.routine-icon-palette{background:#f8f8f4;border:1.5px solid #d1d1cb;border-radius:12px;flex-wrap:wrap;grid-column:1/-1;gap:6px;padding:8px;display:flex}.routine-color-palette{grid-column:1/-1}.routine-icon-choice{background:var(--panel);width:34px;height:34px;color:var(--text);box-shadow:none;border:1.5px solid #d1d1cb;border-radius:10px;place-items:center;display:grid}.routine-icon-choice.is-active{border-color:var(--line);background:var(--text);color:#fff}.form-status{min-height:1.2em;color:var(--muted);margin:-2px 0 0;font-size:.82rem;font-weight:800;line-height:1.4}.weekly-schedule-board{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:auto minmax(var(--weekly-height,61px), auto);background:#fff;border:1.5px solid #d8d8d3;border-radius:12px;gap:0;padding:0;display:grid;overflow:hidden}.weekly-day-track{min-width:0;min-height:var(--weekly-height,61px);background:#f8f8f5;border-right:1px solid #e1e1dc;grid-row:2}.weekly-day-track.is-today{background:#fff}.weekly-day-head{background:#f1f1ed;border-bottom:1px solid #d8d8d3;border-right:1px solid #e1e1dc;grid-row:1;align-items:baseline;gap:1px;padding:8px;display:grid}.weekly-day-head.is-today{color:#fff;background:#111}.weekly-day-head strong{font-family:var(--font-display);font-size:.8rem;font-weight:900}.weekly-day-head span{color:#686862;font-size:.66rem}.weekly-day-head.is-today span{color:#fff}.calendar-event-bar{z-index:3;background:var(--event-color,#b8b8b8);min-width:0;height:21px;color:var(--event-ink,#111);box-shadow:none;text-align:left;white-space:nowrap;cursor:pointer;border:0;border-radius:7px;align-items:center;margin-left:3px;margin-right:3px;padding:0 8px;font-size:.7rem;font-weight:800;line-height:1;transition:filter .12s,transform .12s;display:flex;overflow:hidden}.calendar-event-bar:before{content:"";background:currentColor;border-radius:999px;flex:none;width:5px;height:5px;margin-right:5px}.calendar-event-bar span{text-overflow:ellipsis;overflow:hidden}.calendar-event-bar.continues-before{border-top-left-radius:2px;border-bottom-left-radius:2px;margin-left:0;padding-left:6px}.calendar-event-bar.continues-after{border-top-right-radius:2px;border-bottom-right-radius:2px;margin-right:0}.weekly-event-bar{margin-top:var(--event-offset,12px);grid-row:2;align-self:start}.calendar-event-bar:hover{filter:brightness(.94);transform:translateY(-1px)}.calendar-event-bar:focus-visible{outline-offset:1px;outline:3px solid #1111113d}.calendar-event-bar.is-linked-chip{color:var(--event-color,#111);background:0 0;border:0;padding-left:4px}.calendar-event-bar.is-linked-chip:before{display:none}.calendar-event-bar.is-linked-chip input[type=checkbox]{accent-color:currentColor;flex:none;width:12px;height:12px;margin:0 5px 0 0}.schedule-block{border:2px solid var(--line);background:var(--panel);box-shadow:2px 2px 0 var(--line);cursor:pointer;border-radius:10px;grid-template-columns:minmax(0,1fr);align-items:center;gap:10px;padding:10px;transition:transform .12s,box-shadow .12s;display:grid}.schedule-block:hover{transform:translateY(-1px)}.schedule-block:focus-visible{outline-offset:2px;outline:3px solid #1111112e}.schedule-block.is-linked-chip{box-shadow:none;border-style:dashed}.schedule-block div{gap:4px;min-width:0;display:grid}.schedule-block strong{overflow-wrap:anywhere;align-items:center;gap:8px;font-size:.94rem;font-weight:700;display:flex}.chip-check-input{width:18px;height:18px;accent-color:var(--accent);flex:none}.schedule-block span{color:var(--muted);font-size:.78rem;font-weight:700}.schedule-block.is-done strong span{color:var(--muted);text-decoration:line-through}.calendar-event-bar.is-done span{opacity:.75;text-decoration:line-through}.selected-date-list{max-height:min(48vh,420px);padding-right:2px;overflow:auto}.event-detail-list{gap:8px;margin:0;display:grid}.event-detail-list div{background:#f8f8f5;border:1.5px solid #d7d7d2;border-radius:10px;grid-template-columns:72px minmax(0,1fr);gap:10px;padding:10px;display:grid}.event-detail-list dt{color:var(--muted);font-size:.82rem;font-weight:800}.event-detail-list dd{margin:0;font-weight:700}.detail-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.detail-item{border:2px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.detail-item div{gap:5px;min-width:0;display:grid}.detail-item span{color:var(--muted);font-size:.9rem;font-weight:800}.detail-item p{color:#4f4f4a;white-space:pre-wrap;margin:0;font-size:.9rem;font-weight:500;line-height:1.5}.todo-manage-item{grid-template-columns:minmax(0,1fr) auto auto;display:grid}.todo-manage-item.is-done .manage-check span{color:var(--muted);text-decoration:line-through}.manage-check{align-items:center;gap:8px;min-width:0;display:flex}.manage-check span{overflow-wrap:anywhere;color:var(--text);font-size:.94rem;font-weight:700}.detail-meta{text-align:right;justify-items:end}.detail-meta strong{font-size:.82rem}.record-form{gap:8px;margin-bottom:12px;display:grid}.record-form[hidden]{display:none!important}.records-layout{gap:12px;display:grid}.records-category-strip,.records-editor{border:2px solid var(--line);background:var(--panel);box-shadow:5px 5px 0 var(--line);border-radius:16px}.records-category-strip{padding:14px}.records-editor{gap:12px;padding:16px;display:grid}.record-category-list{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.records-archive-head{border-bottom:1.5px solid #deded8;gap:5px;padding:10px 10px 12px;display:grid}.records-archive-head strong{font-family:var(--font-display);font-size:1.08rem;font-weight:900;line-height:1.1}.records-archive-head span{color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.5}.records-compose-head{border-bottom:1.5px solid #deded8;gap:4px;padding-bottom:10px;display:grid}.records-compose-head h3{font-family:var(--font-display);margin:0;font-size:clamp(1.25rem,2.4vw,1.85rem);font-weight:900;line-height:1}.records-compose-head .section-kicker{align-items:center;gap:6px;display:inline-flex}.records-compose-head .section-kicker svg{width:15px;height:15px}.records-filter-bar{background:#f7f7f3;border:1.5px solid #d8d8d3;border-radius:12px;grid-template-columns:minmax(180px,1.4fr) minmax(140px,.8fr) minmax(160px,.9fr) auto;align-items:end;gap:8px;padding:10px;display:grid}.records-filter-bar label{gap:5px;min-width:0;display:grid}.records-filter-bar span{color:var(--muted);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:900}.records-filter-bar input,.records-filter-bar select{background:#fff;border-width:1.5px;border-radius:10px;width:100%;min-height:38px;padding:0 10px;font-size:.82rem}.records-filter-bar button{min-height:38px}.records-view-toggle{width:fit-content;margin:-2px 0 12px auto}.record-calendar-day{gap:10px;display:grid}.record-calendar-month{background:#fff;border:1.5px solid #d8d8d3;border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.record-calendar-head{color:var(--muted);font-family:var(--font-display);text-align:center;background:#f1f1ed;border-bottom:1px solid #d8d8d3;border-right:1px solid #e1e1dc;padding:8px 0;font-size:.78rem;font-weight:900}.record-calendar-cell{text-align:left;background:#fff;border:1px solid #e1e1dc;border-top:0;border-left:0;align-content:start;gap:7px;min-height:112px;padding:9px;display:grid}.record-calendar-cell.is-muted{color:#a0a09a;background:#f7f7f4}.record-calendar-cell>strong{font-family:var(--font-display);font-size:.95rem;font-weight:900}.record-calendar-cell.is-today>strong{color:#fff;background:#111;border-radius:999px;place-items:center;width:24px;height:24px;margin:-2px;display:inline-grid}.record-calendar-stack{flex-wrap:wrap;gap:7px;display:flex}.record-calendar-entry{border:1.5px solid var(--line);min-height:32px;font-family:var(--font-body);background:#fff;border-radius:999px;padding:0 10px;font-size:.82rem;font-weight:700}.diary-layout{grid-template-columns:minmax(230px,300px) minmax(0,1fr);align-items:start;gap:16px}.diary-layout .note-sidebar,.diary-layout .note-editor{align-content:start;gap:10px;display:grid}.diary-layout .note-sidebar{background:linear-gradient(#fafaf7 0%,#f2f2ed 100%);border:1.5px solid #d5d5cf;border-radius:14px;padding:12px;position:sticky;top:12px}.diary-stats{border:2px solid var(--line);background:var(--panel);border-radius:12px;gap:2px;margin-bottom:0;padding:12px;display:grid}.diary-stats strong{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.05rem);font-weight:900;line-height:.95}.diary-stats span{color:var(--muted);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.diary-list{gap:8px;max-height:450px;margin-top:0;padding:2px 2px 2px 0;display:grid;overflow:auto}.diary-list-item{background:var(--panel);width:100%;color:var(--text);text-align:left;box-shadow:none;border:1.5px solid #d1d1cb;border-radius:13px;gap:5px;padding:12px;transition:transform .16s,border-color .16s,background .16s;display:grid}.diary-list-item:hover{border-color:var(--line);transform:translateY(-1px)}.diary-list-item.is-active{border-color:var(--line);background:var(--text);color:#fff}.diary-list-item span{color:inherit;opacity:.68;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600;overflow:hidden}.quick-diary-panel{gap:10px;display:grid}.quick-diary-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.diary-editor-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:2px;display:flex}.diary-editor-toolbar h3{font-family:var(--font-display);margin:0;font-size:1.15rem;font-weight:900}.diary-action-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.diary-save-status{color:var(--muted);white-space:nowrap;font-size:.8rem;font-weight:700}.diary-editor-top{grid-template-columns:minmax(220px,.58fr) minmax(0,1fr);align-items:start;gap:10px;display:grid}.diary-date-field,.diary-mood-field{gap:8px;margin-bottom:0;display:grid}.diary-layout .field-label{gap:8px;display:grid}.diary-layout .field-label input,.diary-layout .field-label textarea{margin-top:0}.diary-date-field input,.diary-mood-field .mood-options{height:58px;min-height:58px}.mood-options{background:var(--panel);border:1.5px solid #242424;border-radius:12px;flex-wrap:wrap;align-content:center;align-items:center;gap:6px;padding:6px;display:flex;overflow:hidden}.mood-pill{border:1.5px solid var(--line);background:var(--panel);min-height:34px;color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:.82rem;font-weight:800;display:inline-flex}.mood-pill.is-active{background:var(--text);color:#fff}.mood-face{background:var(--mood-bg,#f5f5f5);border:1.7px solid;border-radius:50%;flex:none;width:18px;height:18px;position:relative}.mood-face:before,.mood-face:after{content:"";background:currentColor;border-radius:50%;width:2.5px;height:2.5px;position:absolute;top:5px}.mood-face:before{left:4.5px}.mood-face:after{right:4.5px}.mood-face span{border-bottom:1.7px solid;border-radius:0 0 999px 999px;width:8px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.mood-pill[data-mood=bright]{--mood-bg:#f6d365}.mood-pill[data-mood=good]{--mood-bg:#ffe6a3}.mood-pill[data-mood=calm]{--mood-bg:#9ad8c2}.mood-pill[data-mood=plain]{--mood-bg:#deded8}.mood-pill[data-mood=plain] .mood-face span{border-bottom-width:1.7px;border-radius:0;height:0;bottom:5px}.mood-pill[data-mood=low]{--mood-bg:#b8b8b8}.mood-pill[data-mood=low] .mood-face span,.mood-pill[data-mood=sad] .mood-face span{border-top:1.7px solid;border-bottom:0;border-radius:999px 999px 0 0;bottom:3px}.mood-pill[data-mood=sad]{--mood-bg:#9ec5fe}.mood-pill[data-mood=angry],.mood-pill[data-mood=sharp]{--mood-bg:#f4a7b9}.mood-pill[data-mood=angry] .mood-face,.mood-pill[data-mood=sharp] .mood-face{border-radius:6px;transform:rotate(45deg)}.mood-pill[data-mood=angry] .mood-face:before,.mood-pill[data-mood=angry] .mood-face:after,.mood-pill[data-mood=angry] .mood-face span,.mood-pill[data-mood=sharp] .mood-face:before,.mood-pill[data-mood=sharp] .mood-face:after,.mood-pill[data-mood=sharp] .mood-face span{transform:rotate(-45deg)}.mood-pill[data-mood=angry] .mood-face span,.mood-pill[data-mood=sharp] .mood-face span{width:8px;bottom:4px;left:5px}.diary-summary-card{background:#f8f8f5;border:1.5px solid #d7d7d2;border-radius:13px;gap:9px;padding:12px;display:grid}.diary-summary-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.diary-summary-card strong{font-family:var(--font-display);white-space:nowrap;align-items:center;gap:6px;font-weight:900;display:inline-flex}.diary-summary-card span,.diary-editor-footer{color:var(--muted);font-size:.84rem;font-weight:700}.diary-summary-card input{background:var(--panel);min-height:42px}.diary-tag-field,.diary-body-label{margin-bottom:0}.diary-editor-footer{justify-content:space-between;gap:10px;padding:0 2px;display:flex}#diaryInput{min-height:360px;font-family:var(--font-diary);background:#fbfaf6;border-color:#d7d7d2;border-radius:12px;padding:20px 22px;font-size:1.08rem;line-height:1.9}#diaryInput:focus{background:#fffefb}:root[data-theme=dark] #diaryInput{background:#ffffff08}:root[data-theme=dark] #diaryInput:focus{background:#ffffff0d}.diary-empty{border:1.5px dashed #c8c8c2;border-radius:10px;padding:10px}.diary-panel{overflow:visible}.diary-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.diary-page-toggle button,.diary-report-toggle button{align-items:center;gap:5px;display:inline-flex}.diary-overview-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.diary-overview-strip div{background:#f8f8f4;border:1.5px solid #d4d4ce;border-radius:14px;min-width:0;padding:12px 14px}.diary-overview-strip span{color:var(--muted);letter-spacing:.02em;font-size:.76rem;font-weight:800;display:block}.diary-overview-strip strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:1rem;font-weight:900;display:block;overflow:hidden}.diary-layout{font-family:var(--font-body);grid-template-columns:minmax(280px,380px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.diary-calendar-browse{grid-template-columns:minmax(320px,1.25fr) minmax(260px,.75fr)}.diary-left-rail{gap:12px;display:grid}.diary-calendar-panel,.diary-recent-panel,.diary-workspace{border:2px solid var(--line);background:var(--panel);box-shadow:5px 5px 0 var(--line);border-radius:16px}.diary-calendar-panel{padding:14px}.diary-calendar-hero,.diary-recent-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.diary-calendar-hero h3{font-family:var(--font-display);margin:0;font-size:clamp(1.45rem,3vw,2.2rem);font-weight:900;line-height:1}.diary-calendar-controls{gap:6px;display:inline-flex}.diary-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.diary-day-name{min-height:24px;color:var(--muted);place-items:center;font-size:.72rem;font-weight:900;display:grid}.diary-day-button{min-height:48px;color:var(--text);font-family:var(--font-display);box-shadow:none;background:#fbfbf8;border:1.5px solid #d6d6d0;border-radius:12px;place-items:center;font-size:.88rem;font-weight:900;transition:transform .14s,border-color .14s,background .14s;display:grid;position:relative}.diary-day-button:hover{border-color:var(--line);transform:translateY(-1px)}.diary-day-button.is-outside{color:#b0b0aa;background:#f3f3ef}.diary-day-button.is-today{border-color:var(--line)}.diary-day-button.is-active{border-color:var(--line);background:var(--text);color:#fff}.diary-day-dot{background:currentColor;border-radius:999px;width:6px;height:6px;position:absolute;bottom:7px;right:8px}.diary-recent-panel{box-shadow:4px 4px 0 var(--line);padding:12px}.diary-recent-head{margin-bottom:8px}.diary-recent-head span{color:var(--muted);font-size:.78rem;font-weight:800}.diary-recent-list{gap:7px;display:grid}.diary-recent-item{width:100%;color:var(--text);text-align:left;box-shadow:none;background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:12px;gap:4px;padding:10px 11px;display:grid}.diary-recent-item.is-active{border-color:var(--line);background:var(--text);color:#fff}.diary-recent-item strong{font-family:var(--font-display);font-size:.92rem;font-weight:900}.diary-recent-item span{color:inherit;opacity:.68;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;overflow:hidden}.diary-workspace{align-content:start;gap:14px;min-height:520px;padding:18px;display:grid}.diary-empty-state{text-align:center;align-content:center;place-items:center;min-height:520px}.diary-empty-state h3,.diary-read-view h3,.diary-workspace h3{font-family:var(--font-display);margin:0;font-size:clamp(1.35rem,2.6vw,2rem);font-weight:900;line-height:1.05}.diary-read-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.diary-read-meta>span{min-height:34px;color:var(--muted);background:#f7f7f3;border:1.5px solid #d7d7d1;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:.82rem;font-weight:800;display:inline-flex}.diary-read-card{font-family:var(--font-body);background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:14px;gap:8px;padding:16px;display:grid}.diary-title-card h4{font-family:var(--font-body);margin:0;font-size:clamp(1.3rem,2.8vw,2.1rem);font-weight:800;line-height:1.25}.diary-title-card .diary-one-line-text{min-height:1.6em;color:var(--muted);font-size:clamp(1rem,1.55vw,1.25rem);font-weight:700}.diary-body-card{align-content:start;min-height:270px}.diary-body-text{color:var(--text);font-family:var(--font-body);white-space:pre-wrap;font-size:1rem;font-weight:500;line-height:1.85}.diary-body-text strong{font-weight:900}.diary-body-text mark{color:#111;background:#fff08a;border-radius:5px;padding:0 .2em}.diary-body-text u{text-underline-offset:4px;text-decoration-thickness:2px}.diary-ink-black{color:#111;font-weight:800}.diary-ink-red{color:#d0311e;font-weight:800}.diary-ink-blue{color:#4274d9;font-weight:800}.diary-bullet-line{padding-left:1.25em;display:inline-block;position:relative}.diary-bullet-line:before{content:"";border:2px solid;border-radius:999px;width:.45em;height:.45em;position:absolute;top:.72em;left:0;transform:translateY(-50%)}.diary-tag-list{flex-wrap:wrap;gap:7px;display:flex}.diary-tag-list span{color:var(--muted);background:#f7f7f3;border:1.5px solid #d5d5cf;border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:800}.diary-summary-card,.diary-tag-field,.diary-body-label{background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:14px}.diary-tag-field,.diary-body-label{padding:12px}.diary-format-toolbar{flex-wrap:wrap;gap:6px;margin-top:10px;margin-bottom:8px;display:flex}.diary-format-toolbar button{border:1.5px solid var(--line);background:var(--panel);width:34px;min-width:34px;height:34px;min-height:34px;color:var(--text);box-shadow:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.diary-format-toolbar button:hover{background:var(--text);color:var(--paper)}.diary-format-toolbar .ink-dot:before{border:1.5px solid var(--line);content:"";border-radius:999px;width:15px;height:15px}.diary-format-toolbar .ink-black:before{background:#111}.diary-format-toolbar .ink-red:before{background:#d0311e}.diary-format-toolbar .ink-blue:before{background:#4274d9}.diary-layout input,.diary-layout textarea,.diary-entry-modal input,.diary-entry-modal textarea,.diary-read-card,.diary-body-text,#diaryInput{font-family:var(--font-body)}#diaryInput{border-color:var(--line);background:var(--panel);min-height:320px;padding:16px;font-size:1rem;font-weight:500;line-height:1.75}.diary-editor-footer{align-items:center}.diary-book-panel{border:2px solid var(--line);background:var(--panel);min-height:520px;box-shadow:5px 5px 0 var(--line);border-radius:16px;gap:16px;padding:18px;display:grid}.diary-book-head{border-bottom:1.5px solid #deded8;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.diary-book-head h3{font-family:var(--font-display);margin:0;font-size:clamp(1.35rem,2.4vw,2rem);font-weight:900}.diary-book-head>span{border:1.5px solid var(--line);min-height:32px;font-family:var(--font-display);border-radius:999px;align-items:center;padding:0 12px;font-weight:900;display:inline-flex}.diary-book-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.diary-book-card{min-height:190px;color:var(--text);text-align:left;background:linear-gradient(90deg,#11111114 0 8px,#0000 8px),#fbfbf8;border:2px solid #d6d6cf;border-radius:14px;align-content:start;gap:10px;padding:16px 14px;display:grid;position:relative;box-shadow:4px 4px #d6d6cf}.diary-book-card:hover{border-color:var(--line);box-shadow:5px 5px 0 var(--line);transform:translateY(-1px)}.diary-book-card.is-active{border-color:var(--line);color:var(--text);background:linear-gradient(90deg,#1111111f 0 8px,#0000 8px),#f6f6f1;box-shadow:4px 4px #d6d6cf}.diary-book-card:focus-visible{outline:2px solid var(--line);outline-offset:3px}.diary-book-number{color:inherit;opacity:.45;font-family:var(--font-display);font-size:.85rem;font-weight:900;position:absolute;top:12px;right:12px}.diary-book-card strong{font-family:var(--font-display);font-size:1.2rem;font-weight:900}.diary-book-card p,.diary-book-card em{color:inherit;margin:0;font-style:normal}.diary-book-card p{font-size:.95rem;font-weight:800;line-height:1.35}.diary-book-card em{opacity:.68;font-size:.82rem;font-weight:600;line-height:1.45}.diary-pagination{flex-wrap:wrap;justify-content:center;gap:7px;padding-top:4px;display:flex}.diary-pagination button{border:1.5px solid var(--line);background:var(--panel);min-width:36px;min-height:34px;color:var(--text);font-family:var(--font-display);border-radius:999px;padding:0 12px;font-size:.82rem;font-weight:900}.diary-pagination button.is-active{background:var(--text);color:var(--paper)}.diary-pagination button:disabled{opacity:.35}.diary-mood-report{border:2px solid var(--line);background:var(--panel);min-height:520px;box-shadow:5px 5px 0 var(--line);border-radius:16px;gap:14px;padding:18px;display:grid}.diary-mood-report-head{border-bottom:1.5px solid #deded8;justify-content:space-between;align-items:start;gap:12px;padding-bottom:14px;display:flex}.diary-mood-report-head h3{font-family:var(--font-display);margin:0;font-size:clamp(1.4rem,2.6vw,2.1rem);font-weight:900;line-height:1.05}.diary-mood-report-head p:not(.section-kicker){color:var(--muted);margin:7px 0 0;font-size:.92rem;font-weight:700}.diary-mood-filter{background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:14px;flex-wrap:wrap;align-items:end;gap:10px;padding:12px;display:flex}.diary-mood-filter label{min-width:150px;color:var(--muted);gap:6px;font-size:.76rem;font-weight:900;display:grid}.diary-mood-filter select{border-width:1.5px;border-radius:12px;min-height:38px;font-size:.92rem}.diary-mood-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.diary-mood-summary-grid div{background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:14px;padding:12px 14px}.diary-mood-summary-grid span{color:var(--muted);font-size:.76rem;font-weight:800;display:block}.diary-mood-summary-grid strong{font-family:var(--font-display);margin-top:4px;font-size:1.18rem;font-weight:900;display:block}.diary-mood-bars{gap:10px;display:grid}.diary-mood-row{background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:14px;grid-template-columns:minmax(120px,170px) minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.diary-mood-label{align-items:center;gap:8px;min-width:0;display:flex}.diary-mood-label strong{font-family:var(--font-display);font-size:.94rem;font-weight:900}.diary-mood-label em{color:var(--muted);margin-left:auto;font-size:.78rem;font-style:normal;font-weight:800}.diary-mood-track{border:1.5px solid var(--line);background:#f2f2ee;border-radius:999px;height:16px;overflow:hidden}.diary-mood-track i{border-radius:inherit;background:var(--mood-bg,#111);min-width:0;height:100%;display:block}.diary-mood-row[data-mood=bright]{--mood-bg:#f6d365}.diary-mood-row[data-mood=good]{--mood-bg:#ffe6a3}.diary-mood-row[data-mood=calm]{--mood-bg:#9ad8c2}.diary-mood-row[data-mood=plain]{--mood-bg:#deded8}.diary-mood-row[data-mood=low]{--mood-bg:#b8b8b8}.diary-mood-row[data-mood=sad]{--mood-bg:#9ec5fe}.diary-mood-row[data-mood=angry],.diary-mood-row[data-mood=sharp]{--mood-bg:#f4a7b9}.record-category-row{align-items:center;gap:8px;display:flex}.record-category-card{min-width:0;min-height:58px;color:var(--text);box-shadow:none;text-align:left;background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:14px;align-items:center;gap:10px;padding:9px 10px;display:flex;overflow:hidden}.record-category-row .record-category-card{min-width:160px}.record-category-card.is-active{border-color:var(--line);background:var(--text);color:#fff}.record-category-mark{border:1.5px solid;border-radius:12px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.record-category-mark svg{width:17px;height:17px}.record-category-copy{gap:2px;min-width:0;display:grid}.record-category-copy strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;font-weight:900;overflow:hidden}.record-category-copy em{color:inherit;opacity:.64;font-size:.76rem;font-style:normal;font-weight:700}.record-category-row .routine-icon-palette{width:100%}.record-mini-button{min-height:34px;color:var(--text);font-family:var(--font-body);box-shadow:none;background:#fbfbf8;border:1.5px solid #d5d5cf;border-radius:999px;padding:0 10px;font-size:.78rem;font-weight:700}.record-category-icon-palette{margin-top:8px}.record-item{cursor:pointer;align-items:start}.records-card{background:#fbfbf8;border-color:#d5d5cf;border-radius:14px}.records-card p{color:var(--text);white-space:pre-wrap;margin:8px 0 0;font-size:.92rem;font-weight:500;line-height:1.6}.record-detail-note{min-height:140px;color:var(--text);white-space:pre-wrap;background:#fbfbf8;border:1.5px solid #d7d7d2;border-radius:12px;padding:14px;font-size:.95rem;font-weight:500;line-height:1.7}#recordDetailMeta{align-items:center;gap:8px;display:flex}#recordDetailMeta .routine-category-icon{width:16px;height:16px}.settings-section{background:#f7f7f3;border:1.5px solid #d7d7d2;border-radius:10px;gap:8px;padding:12px;display:grid}.settings-section h3{font-family:var(--font-display);margin:0;font-size:.9rem;font-weight:900}.settings-theme-control{width:fit-content}.settings-layout{grid-template-columns:118px minmax(0,1fr);align-items:start;gap:12px;display:grid}.settings-nav{background:#f7f7f3;border:1.5px solid #d7d7d2;border-radius:12px;gap:7px;padding:8px;display:grid}.settings-nav button{min-height:38px;color:var(--muted);font-family:var(--font-display);text-align:left;background:0 0;border:1.5px solid #0000;border-radius:10px;font-size:.9rem;font-weight:900}.settings-nav button.is-active{border-color:var(--line);background:var(--text);color:#fff}.settings-pages{min-width:0}.settings-page{gap:10px;display:grid}.settings-page[hidden]{display:none!important}.home-section-list{gap:7px;display:grid}.home-section-item{background:#fff;border:1.5px solid #d5d5cf;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.home-section-item>div:first-child{gap:2px;display:grid}.home-section-item strong{font-family:var(--font-display);font-size:.86rem;font-weight:900}.home-section-item span{color:var(--muted);font-size:.76rem;font-weight:700}.home-section-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.settings-icon-button{width:34px;height:34px;min-height:34px;color:var(--text);box-shadow:none;background:#fff;border:1.5px solid #d5d5cf;border-radius:10px;place-items:center;padding:0;display:inline-grid}.settings-icon-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.7px;width:17px;height:17px}.settings-icon-button:hover:not(:disabled){border-color:var(--line);transform:translateY(-1px)}.settings-icon-button:disabled{color:#aaa;cursor:not-allowed;opacity:.48}.home-collapse-button{width:30px;height:30px;min-height:30px;color:var(--text);box-shadow:none;background:#fff;border:1.5px solid #d5d5cf;border-radius:999px;flex:none;place-items:center;padding:0;transition:background .18s,border-color .18s,transform .18s;display:inline-grid}.home-collapse-button:hover{border-color:var(--line);transform:translateY(-1px)}.home-collapse-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.7px;width:17px;height:17px;transition:transform .22s}[data-home-section]{transition:padding .22s,box-shadow .22s;display:block;overflow:hidden}[data-home-section]>:not(.panel-heading){max-height:var(--home-child-height,1200px);opacity:1;visibility:visible;min-height:0;transition:max-height .28s cubic-bezier(.22,1,.36,1),opacity .16s,transform .22s,margin .22s,padding .22s,border-width .22s;overflow:hidden;transform:translateY(0)}[data-home-section] .panel-heading{transition:margin-bottom .22s}[data-home-section].is-collapsed>:not(.panel-heading){opacity:0;pointer-events:none;visibility:hidden;max-height:0;transform:translateY(-4px);border-top-width:0!important;border-bottom-width:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}[data-home-section].is-collapsed{align-self:start}[data-home-section].is-collapsed .panel-heading{margin-bottom:0}.diary-confirm-backdrop{z-index:120;background:#00000094;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.diary-confirm-modal{width:min(440px,100%)}.diary-entry-backdrop{z-index:118}.diary-entry-modal{width:min(980px,100%);max-height:min(88vh,860px);padding:22px;position:relative;overflow:auto}.diary-entry-close{z-index:2;background:var(--panel);width:44px;min-width:44px;height:44px;min-height:44px;font-family:var(--font-display);border-width:2px;border-radius:12px;font-size:1.35rem;font-weight:900;line-height:1;position:absolute;top:18px;right:18px}.diary-entry-modal .diary-workspace{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 58px 0 0}.diary-entry-modal .diary-empty-state{min-height:280px}.diary-entry-modal .diary-editor-toolbar{min-height:48px}.tab-toggle-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.tab-toggle-item{background:var(--panel);border:1.5px solid #d1d1cb;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:0 10px;font-weight:700;display:flex}.tab-toggle-item input{width:18px;height:18px;accent-color:var(--text)}.settings-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.settings-action-grid .danger-button{border-color:var(--line);background:linear-gradient(135deg, #1111110d 25%, transparent 25% 50%, #1111110d 50% 75%, transparent 75%), var(--panel);background-size:12px 12px;grid-column:1/-1}:root[data-theme=dark] .panel,:root[data-theme=dark] .view-tabs,:root[data-theme=dark] .modal-card,:root[data-theme=dark] .detail-item,:root[data-theme=dark] .check-item,:root[data-theme=dark] .schedule-block,:root[data-theme=dark] .calendar-day,:root[data-theme=dark] .calendar-head,:root[data-theme=dark] .stats-grid article,:root[data-theme=dark] .folder-chip,:root[data-theme=dark] .routine-category-row,:root[data-theme=dark] .routine-icon-choice,:root[data-theme=dark] .tab-toggle-item,:root[data-theme=dark] .auth-panel,:root[data-theme=dark] .today-mini-summary button,:root[data-theme=dark] #calendarTitle,:root[data-theme=dark] .diary-calendar-panel,:root[data-theme=dark] .diary-recent-panel,:root[data-theme=dark] .diary-workspace,:root[data-theme=dark] .diary-mood-report,:root[data-theme=dark] .diary-read-card,:root[data-theme=dark] .diary-recent-item,:root[data-theme=dark] .diary-day-button,:root[data-theme=dark] .diary-tag-list span,:root[data-theme=dark] .diary-read-meta>span,:root[data-theme=dark] .diary-tag-field,:root[data-theme=dark] .diary-body-label,:root[data-theme=dark] .tracker-card,:root[data-theme=dark] .settings-nav,:root[data-theme=dark] .records-sidebar,:root[data-theme=dark] .records-editor,:root[data-theme=dark] .records-card,:root[data-theme=dark] .record-detail-note,:root[data-theme=dark] .home-section-item,:root[data-theme=dark] .record-category-card,:root[data-theme=dark] textarea,:root[data-theme=dark] input,:root[data-theme=dark] select{background-color:var(--panel);color:var(--text);border-color:#5c5c56}:root[data-theme=dark] .weather-card,:root[data-theme=dark] .weekly-schedule-board,:root[data-theme=dark] .weekly-day-track,:root[data-theme=dark] .calendar-grid,:root[data-theme=dark] .event-detail-list div,:root[data-theme=dark] .diary-summary-card,:root[data-theme=dark] .diary-layout .note-sidebar,:root[data-theme=dark] .mood-options,:root[data-theme=dark] .diary-list-item,:root[data-theme=dark] .settings-section,:root[data-theme=dark] .settings-nav,:root[data-theme=dark] .routine-filter-chip,:root[data-theme=dark] .routine-category-row,:root[data-theme=dark] .routine-icon-palette,:root[data-theme=dark] .color-palette,:root[data-theme=dark] .weekday-options,:root[data-theme=dark] .diary-overview-strip div,:root[data-theme=dark] .diary-mood-summary-grid div,:root[data-theme=dark] .diary-mood-filter,:root[data-theme=dark] .diary-mood-row,:root[data-theme=dark] .diary-mood-track,:root[data-theme=dark] .diary-day-button.is-outside,:root[data-theme=dark] .diary-recent-item:not(.is-active),:root[data-theme=dark] .diary-read-card,:root[data-theme=dark] .diary-summary-card,:root[data-theme=dark] .diary-tag-field,:root[data-theme=dark] .diary-body-label,:root[data-theme=dark] .record-category-row,:root[data-theme=dark] .records-category-strip,:root[data-theme=dark] .records-card,:root[data-theme=dark] .home-collapse-button,:root[data-theme=dark] .record-category-card:not(.is-active){background:var(--panel-strong);color:var(--text)}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#8f8f88}:root[data-theme=dark] .helper-text,:root[data-theme=dark] .today-mini-summary button,:root[data-theme=dark] .diary-overview-strip span,:root[data-theme=dark] .diary-read-meta>span,:root[data-theme=dark] .diary-tag-list span,:root[data-theme=dark] .diary-save-status,:root[data-theme=dark] .calendar-day.is-muted,:root[data-theme=dark] .detail-meta,:root[data-theme=dark] .time-block em{color:var(--muted)}:root[data-theme=dark] .check-item.is-done .item-text{color:#8f8f88}:root[data-theme=dark] .diary-day-button.is-active,:root[data-theme=dark] .diary-recent-item.is-active,:root[data-theme=dark] .routine-icon-choice.is-active,:root[data-theme=dark] .record-category-card.is-active,:root[data-theme=dark] .view-tab.is-active{background:var(--text);color:#111;border-color:var(--text)}:root[data-theme=dark] .settings-action-grid .danger-button{background:linear-gradient(135deg, #f4f4f014 25%, transparent 25% 50%, #f4f4f014 50% 75%, transparent 75%), var(--panel);background-size:12px 12px}:root[data-theme=dark] .weekly-schedule-board,:root[data-theme=dark] .calendar-grid{border-color:#4a4a46}:root[data-theme=dark] .weekly-day-head,:root[data-theme=dark] .calendar-head{color:var(--muted);background:#292927;border-color:#4a4a46}:root[data-theme=dark] .weekly-day-track,:root[data-theme=dark] .calendar-day.is-muted{background:#1b1b1b;border-color:#3d3d39}:root[data-theme=dark] .weekly-day-head.is-today{background:var(--text);color:var(--bg)}:root[data-theme=dark] .weekly-day-head.is-today span{color:var(--bg)}:root[data-theme=dark] .calendar-day.is-selected{color:var(--text);box-shadow:inset 0 0 0 2px var(--text);background:#333330}:root[data-theme=dark] .primary-button,:root[data-theme=dark] .inline-form button,:root[data-theme=dark] .folder-chip.is-active{background:var(--text);color:#111}:root[data-theme=dark] .ghost-button,:root[data-theme=dark] .ghost-link,:root[data-theme=dark] .icon-button,:root[data-theme=dark] .settings-icon-button,:root[data-theme=dark] .record-mini-button{background:var(--panel);color:var(--text)}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.stats-grid article{border:2px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:14px;display:grid}.stats-grid strong{font-size:1.8rem;line-height:1}.stats-grid span{color:var(--muted);font-size:.86rem;font-weight:900}.time-grid{gap:8px;display:grid;overflow-x:auto}.planner-summary{border:2px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.planner-summary>div:first-child{gap:2px;display:grid}.planner-summary strong{letter-spacing:.08em;font-size:.74rem}.planner-summary span{color:var(--muted);font-weight:900}.planner-grid{border:2px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:34px repeat(6,minmax(0,1fr));min-width:0;display:grid;overflow:hidden}.planner-corner,.planner-head,.planner-hour,.planner-cell{border-bottom:1px solid #cfcfcf;border-right:1px solid #cfcfcf;min-height:21px}.planner-corner,.planner-head,.planner-hour{color:var(--muted);place-items:center;font-size:.62rem;font-weight:900;display:grid}.planner-corner{color:var(--text);font-size:.56rem}.planner-hour{color:var(--text);background:#fafafa}.planner-cell{background-color:#fff;background-image:linear-gradient(135deg,#11111106 25%,#0000 25%),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:8px 8px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.planner-cell.is-filled{background:var(--slot-color,#111)}.time-log-list{gap:6px;display:grid}.timeline-empty{color:var(--muted);text-align:center;border:1.5px dashed #c8c8c2;border-radius:8px;margin:0;padding:12px;font-size:.78rem;font-weight:800}.time-block{border:2px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:76px minmax(0,1fr) auto auto;align-items:center;gap:6px;min-height:36px;padding:6px;display:grid}.time-block span{color:var(--muted);font-size:.8rem;font-weight:600}.time-block em{color:var(--muted);align-items:center;gap:6px;font-size:.72rem;font-style:normal;font-weight:700;display:inline-flex}.time-block em:before{border:1px solid var(--line);background:var(--dot-color);content:"";border-radius:999px;width:10px;height:10px}.time-block-actions{justify-content:flex-end;gap:5px;display:inline-flex}.time-block button{background:0 0;border:0;border-radius:8px;width:24px;height:24px;font-size:1.05rem;font-weight:900}.time-block [data-action=edit]{width:auto;padding:0 5px;font-size:.7rem}.notes-layout{grid-template-columns:240px minmax(0,1fr);gap:14px;display:grid}.note-sidebar,.note-editor{min-width:0}.folder-list{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.folder-chip{border:2px solid var(--line);min-height:36px;color:var(--text);background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-weight:900;display:flex}.folder-chip.is-active{background:var(--text);color:#fff}.compact-button{white-space:nowrap;min-height:36px;padding:0 12px}.modal{width:min(680px,100% - 28px);max-height:min(86vh,760px);color:var(--text);background:0 0;border:0;padding:0}.modal::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1111119e}.modal-card{background:linear-gradient(#fff 0%,#fafafa 100%);border:1.5px solid #111;border-radius:12px;max-height:min(86vh,760px);padding:24px;overflow:auto;box-shadow:0 22px 60px #0000003d,5px 5px #111}.compact-modal{width:min(560px,100% - 28px)}.context-menu{z-index:1200;background:#fff;border:1.5px solid #111;border-radius:10px;gap:2px;min-width:160px;padding:6px;display:grid;position:fixed;box-shadow:0 14px 32px #0003,4px 4px #111}.context-menu button{color:var(--text);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 10px;font-size:.86rem;font-weight:700}.context-menu button:hover:not(:disabled){background:var(--accent-soft)}.context-menu button:disabled{opacity:.5;cursor:default}.app-toast{z-index:1300;color:#fff;font-family:var(--font-body);white-space:nowrap;opacity:0;pointer-events:none;background:#111;border:1.5px solid #111;border-radius:999px;padding:10px 18px;font-size:.86rem;font-weight:800;transition:opacity .18s,transform .18s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,8px)}.app-toast.is-visible{opacity:1;transform:translate(-50%)}:root[data-theme=dark] .context-menu{background:#1c1c1c;border-color:#444}:root[data-theme=dark] .context-menu button:hover:not(:disabled){background:#ffffff14}#timeBlockModal{width:min(760px,100% - 28px)}#settingsModal{width:min(720px,100% - 28px)}#settingsModal .modal-card{min-height:680px}#settingsModal .settings-pages{min-height:500px}#timeBlockModal .modal-card{overflow-x:hidden}.modal-card .panel-heading{border-bottom:1px solid #e7e7e4;align-items:flex-start;margin-bottom:14px;padding-bottom:12px}.modal-actions{border-top:1px solid #e7e7e4;justify-content:flex-end;gap:8px;margin-top:10px;padding-top:12px;display:flex}.time-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.time-repeat-grid{grid-template-columns:minmax(180px,1.2fr) minmax(110px,.8fr)}.time-repeat-grid .field-label:nth-child(n+3){grid-column:span 1}.tracker-form .field-label{margin:0}.tracker-form input,.tracker-form select{margin-top:6px}.modal-close{color:#111;background:#f2f2ef;border-radius:10px;flex:none;width:34px;min-height:34px;font-size:1.1rem}.modal-card .section-kicker{font-family:var(--font-display);color:#777;text-underline-offset:3px;font-size:.72rem;text-decoration-thickness:1.5px}.modal-card h2{font-family:var(--font-display);letter-spacing:0;font-size:1.2rem;font-weight:900}.modal-card .primary-button{border-color:#111;border-radius:10px;min-height:36px}.modal-card .ghost-button{background:#fff;border-color:#cfcfca;border-radius:10px;min-height:36px}.week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.day-cell{border:2px solid var(--line);min-height:72px;color:var(--muted);text-align:center;background:#fff;border-radius:8px;place-items:center;display:grid}.day-cell strong{color:var(--text);font-size:1.05rem;display:block}.day-cell.is-today{border-color:var(--accent);color:var(--accent-strong);background:repeating-linear-gradient(135deg,#f7f7f7 0 8px,#fff 8px 16px)}.calendar-view{grid-template-columns:1.1fr .8fr}.calendar-controls{grid-template-columns:auto minmax(120px,auto) auto;justify-content:flex-end;align-items:center;gap:7px;display:grid}.calendar-controls .compact-button{border-width:1.5px;border-radius:12px;justify-content:center;align-items:center;gap:5px;min-width:78px;min-height:34px;padding:0 11px;font-size:.84rem;display:inline-flex}#calendarTitle{min-height:34px;font-family:var(--font-display);white-space:nowrap;background:#f7f7f3;border:1.5px solid #d8d8d3;border-radius:12px;place-items:center;padding:0 14px;font-size:.96rem;font-weight:900;display:inline-grid}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:auto minmax(var(--month-week-1-height,72px), auto) minmax(var(--month-week-2-height,72px), auto) minmax(var(--month-week-3-height,72px), auto) minmax(var(--month-week-4-height,72px), auto) minmax(var(--month-week-5-height,72px), auto) minmax(var(--month-week-6-height,72px), auto);background:#fff;border:1.5px solid #d8d8d3;border-radius:12px;gap:0;display:grid;overflow:hidden}.calendar-head{color:var(--muted);text-align:center;background:#f1f1ed;border-bottom:1px solid #d8d8d3;border-right:1px solid #e1e1dc;padding:8px 0;font-size:.82rem;font-weight:900}.calendar-head.is-sunday,.calendar-day.is-sunday strong{color:#d0311e}.calendar-head.is-saturday,.calendar-day.is-saturday strong{color:#4274d9}.calendar-day{z-index:1;min-height:100%;color:var(--text);text-align:left;background:#fff;border:1px solid #e1e1dc;border-top:0;border-left:0;border-radius:0;align-content:start;padding:9px 10px;display:grid}.calendar-day strong{font-size:1.05rem}.calendar-day.is-muted{color:#a0a09a;background:#f7f7f4}.calendar-day.is-today{background:#fff}.calendar-day.is-today strong{color:#fff;background:#111;border-radius:999px;place-items:center;width:25px;height:25px;margin:-3px;display:inline-grid}.calendar-day.is-selected.is-sunday strong{color:#d0311e}.calendar-day.is-selected.is-saturday strong{color:#4274d9}.calendar-day.is-today.is-sunday strong,.calendar-day.is-today.is-saturday strong{color:#fff}.calendar-day.is-selected{z-index:2;color:var(--text);background:#efefeb;box-shadow:inset 0 0 0 2px #111}.month-event-bar{margin-top:var(--event-offset,37px);align-self:start}.admin-dashboard{grid-template-columns:1fr 1fr}.helper-text{color:var(--muted);margin:10px 0 0;line-height:1.5}.switch-row{border:2px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:14px;display:flex}.switch-row span{gap:4px;display:grid}.switch-row small,.access-mode{color:var(--muted);line-height:1.45}.switch-row input{width:22px;height:22px;accent-color:var(--accent);flex:none}.access-mode{background:var(--accent-soft);color:var(--accent-strong);border-radius:8px;margin-top:12px;padding:12px;font-weight:700}.user-table{gap:10px;margin-top:12px;display:grid}.user-row{border:2px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.user-avatar{border:2px solid var(--line);object-fit:cover;border-radius:999px;width:46px;height:46px}.user-row div{min-width:0}.user-name,.user-email,.user-meta{overflow-wrap:anywhere;display:block}.user-email,.user-meta{color:var(--muted);font-size:.9rem;font-weight:800}.user-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.user-actions button:disabled{cursor:not-allowed;opacity:.45}#userManageStatus[data-tone=active],#userManageStatus[data-tone=success],#userManageStatus[data-tone=error]{border:2px solid var(--line);color:var(--text);background:#fff;border-radius:8px;padding:10px 12px;font-weight:800}#userManageStatus[data-tone=success]{background:var(--text);color:#fff}#userManageStatus[data-tone=error]{background-color:#fff;background-image:radial-gradient(#111 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:12px 12px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.check-item button:disabled{cursor:not-allowed;color:var(--muted);opacity:.55}@media (width<=760px){.intro-shell,.login-card{grid-template-columns:1fr;align-items:start}.intro-hero,.login-copy,.login-box{padding:24px}.login-copy{min-height:auto}.intro-grid{grid-template-columns:1fr}.intro-tile.big,.intro-tile.wide{grid-area:auto;min-height:150px}.app-shell{width:min(100% - 20px,560px);padding-top:14px;padding-bottom:max(120px, env(safe-area-inset-bottom))}.hero{padding:20px 0 18px;display:grid}.hero-actions{justify-content:stretch}.hero-actions button{flex:150px}.dashboard,.calendar-view,.admin-dashboard{grid-template-columns:1fr;gap:12px}.planner-sheet{grid-template-columns:1fr;padding:10px}.view-tab{flex-basis:86px}.planner-left{gap:10px}.time-panel{position:static}.panel{padding:16px}.records-filter-bar{grid-template-columns:1fr}.records-filter-bar button{width:100%}.record-calendar-month{min-width:620px}.record-calendar-day{padding-bottom:4px;overflow-x:auto}.auth-panel{grid-template-columns:1fr;display:grid}.auth-weather{border-top:2px solid var(--line);border-left:0;padding-top:14px;padding-left:0}.auth-greeting{align-items:flex-start}.auth-actions{justify-content:flex-start}.week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.date-form,.tracker-form,.form-grid{grid-template-columns:1fr}.event-time-mode-field{grid-column:auto}.settings-layout{grid-template-columns:1fr}.settings-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.settings-nav button{text-align:center}.tracker-title-card,.time-form-grid,.time-repeat-grid{grid-template-columns:1fr}.tracker-step{width:30px;height:30px}.routine-toolbar,.routine-category-row{grid-template-columns:1fr}.routine-toolbar>button,.routine-category-row>button{width:100%}.date-form input,.date-form select,.date-form button{width:100%;max-width:100%}#todoDate,#todoPageDate{text-align:center;font-size:.78rem}.stats-grid,.notes-layout,.diary-layout,.diary-calendar-browse{grid-template-columns:1fr}.diary-book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-entry-modal{max-height:min(90vh,820px);padding:18px}.diary-entry-modal .diary-workspace{padding-top:48px;padding-right:0}.diary-editor-top,.diary-meta-grid,.quick-diary-form,.diary-editor-toolbar{grid-template-columns:1fr}.diary-editor-toolbar{display:grid}.diary-action-row{justify-content:stretch}.diary-action-row button,.quick-diary-form button{width:100%}#diaryInput{min-height:260px}.user-row{grid-template-columns:42px minmax(0,1fr)}.user-actions{grid-column:1/-1;justify-content:stretch}.user-actions button{flex:130px}.time-block{grid-template-columns:minmax(0,1fr) auto}.todo-manage-item{grid-template-columns:1fr;align-items:stretch}.detail-meta{text-align:left;justify-items:start}.time-block span,.time-block em{grid-column:1/-1}.calendar-controls{grid-template-columns:1fr 1fr;justify-content:stretch;width:100%}#calendarTitle{grid-area:1/1/auto/-1}.calendar-controls .compact-button{width:100%}.calendar-grid{gap:0}.calendar-day{min-height:74px;padding:7px}.day-cell{min-height:58px}}@media (width<=420px){.inline-form,.settings-action-grid{grid-template-columns:1fr}#todoDate,#todoPageDate{padding:0 7px;font-size:.72rem}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-book-grid{grid-template-columns:1fr}.calendar-day{min-height:64px;padding:5px}}.wish-panel{background:radial-gradient(circle at 1px 1px, #1111111f 1px, transparent 1.2px) 0 0 / 18px 18px, var(--panel);overflow:hidden}.wish-heading{border-bottom:2px solid var(--line);margin-bottom:14px;padding-bottom:14px}.wish-intro{border:1.5px solid var(--soft-line);background:linear-gradient(180deg, #ffffffe0, #f6f6f4b8), var(--surface);color:var(--text);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex;box-shadow:inset 0 1px #ffffffe6}.wish-intro>div:first-child{min-width:0}.wish-intro strong{font-family:var(--font-display);letter-spacing:.01em;font-size:.96rem;font-weight:900;display:block}.wish-intro p{color:var(--muted);margin:3px 0 0;font-size:.88rem;font-weight:650;line-height:1.45}.wish-intro-link{border:1.5px solid var(--soft-line);min-height:36px;color:var(--text);font-family:var(--font-display);background:#ffffffad;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 14px;font-size:.86rem;font-weight:900;text-decoration:none;display:inline-flex}.wish-intro-link:hover{border-color:var(--line);background:var(--panel)}.wish-summary{flex:none;gap:8px;display:flex}.wish-summary span{border:1.5px solid var(--soft-line);min-width:76px;color:var(--text);background:#ffffffb3;border-radius:999px;justify-items:center;padding:8px 10px;font-size:.72rem;font-weight:700;display:grid}.wish-summary strong{font-family:var(--font-display);font-size:1.05rem;font-weight:900}.wish-category-filter{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.wish-category-chip{min-height:34px;box-shadow:2px 2px 0 var(--line);border-width:1.5px;gap:7px}.wish-category-chip em{background:var(--panel-strong);min-width:20px;height:20px;color:var(--text);border-radius:999px;place-items:center;font-size:.7rem;font-style:normal;display:grid}.wish-category-chip.is-active em{background:var(--panel)}.wish-toolbar{background:var(--panel-strong);border:1.5px solid #d7d7d2;border-radius:12px;grid-template-columns:minmax(0,1fr) 170px;gap:8px;margin-bottom:14px;padding:8px;display:grid}.wish-toolbar input,.wish-toolbar select{background:var(--panel);border-width:1.5px;width:100%;min-height:40px}.wish-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.wish-card{border:2px solid var(--line);background:var(--panel);min-width:0;box-shadow:5px 5px 0 var(--line);border-radius:16px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.wish-card:hover{box-shadow:7px 7px 0 var(--line);transform:translate(-2px,-2px)}.wish-card.is-bought{opacity:.72}.wish-card-image{aspect-ratio:4/3;border-bottom:2px solid var(--line);color:#111;font-family:var(--font-display);letter-spacing:-.04em;background:linear-gradient(135deg,#0000 44%,#11111112 44% 56%,#0000 56%),#f1efe9;place-items:center;font-size:clamp(1.4rem,4vw,2.6rem);font-weight:900;display:grid;position:relative;overflow:hidden}.wish-card-image:after{content:"♡";font-size:1.8rem;line-height:1;position:absolute;bottom:6px;right:10px}.wish-card-image img{z-index:1;object-fit:cover;background:#fff;width:100%;height:100%;position:absolute;inset:0}.wish-card-body{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex}.wish-card-meta{align-items:center;gap:6px;display:flex}.wish-card-meta span,.wish-card-meta em{border:1.5px solid var(--line);border-radius:999px;width:fit-content;padding:4px 8px;font-size:.7rem;font-style:normal;font-weight:900}.wish-card-meta em{color:#111;background:#ff4081;border-color:#ff4081}.wish-card h3{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:1.08rem;font-weight:900;line-height:1.25}.wish-price{font-size:1rem;font-weight:900}.wish-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.84rem;line-height:1.5;display:-webkit-box;overflow:hidden}.wish-site{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:700;overflow:hidden}.wish-card-actions{flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:4px;display:flex}.wish-card-actions a,.wish-card-actions button{flex:auto;min-height:34px;padding:0 9px;font-size:.74rem;text-decoration:none}.wish-empty{border:2px dashed var(--line);text-align:center;background:#ffffffd6;border-radius:16px;grid-column:1/-1;align-content:center;place-items:center;gap:7px;min-height:260px;padding:28px;display:grid}.wish-empty>span{font-size:2.6rem;line-height:1}.wish-empty strong{font-family:var(--font-display);font-size:1.15rem;font-weight:900}.wish-empty p{color:var(--muted);margin:0;font-size:.86rem}.wish-modal{width:min(780px,100% - 28px)}.wish-url-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.wish-url-row button{min-height:42px}.wish-fetch-status{min-height:1.25em;margin:-2px 0 0}.wish-editor-layout{grid-template-columns:minmax(180px,.75fr) minmax(0,1.5fr);gap:14px;display:grid}.wish-image-preview{border:2px solid var(--line);color:#111;min-height:220px;font-family:var(--font-display);text-align:center;background:radial-gradient(circle at 2px 2px,#1111112e 1.5px,#0000 1.8px) 0 0/16px 16px,#f3f1eb;border-radius:14px;place-items:center;font-size:1.55rem;font-weight:900;line-height:.9;display:grid;overflow:hidden}.wish-image-preview img{object-fit:contain;background:#fff;width:100%;height:100%;max-height:320px}.wish-editor-fields{align-content:start;gap:10px;display:grid}.wish-meta-grid{grid-template-columns:1fr 1fr}.wish-category-form-row{grid-template-columns:minmax(0,1fr) auto}.wish-category-manage-list{gap:8px;max-height:330px;display:grid;overflow:auto}.wish-category-manage-row{background:var(--panel);border:1.5px solid #d7d7d2;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.wish-category-manage-row div{align-items:baseline;gap:8px;display:flex}.wish-category-manage-row span{color:var(--muted);font-size:.76rem;font-weight:700}:root[data-theme=dark] .wish-panel{background:radial-gradient(circle at 1px 1px, #ffffff21 1px, transparent 1.2px) 0 0 / 18px 18px, var(--panel)}:root[data-theme=dark] .wish-intro{background:linear-gradient(180deg, #2c2c2cf2, #1c1c1ce6), var(--surface);color:var(--text)}:root[data-theme=dark] .wish-intro-link,:root[data-theme=dark] .wish-summary span{color:var(--text);background:#ffffff0f}:root[data-theme=dark] .wish-card-image,:root[data-theme=dark] .wish-image-preview{background-color:#dedbd2}:root[data-theme=dark] .wish-empty{background:#202020e6}@media (width<=900px){.wish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.wish-heading,.wish-intro{flex-direction:column;align-items:stretch}.wish-heading .panel-actions,.wish-summary{width:100%}.wish-heading .panel-actions>*,.wish-summary span{flex:1}.wish-intro-link{width:100%}.wish-toolbar,.wish-editor-layout,.wish-meta-grid,.wish-grid,.wish-url-row{grid-template-columns:1fr}.wish-url-row button{width:100%}.wish-image-preview{min-height:190px}}
