:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f7f5fb;--surface:#fff;--surface-strong:#fff;--ink:#252230;--muted:#706b7b;--accent:#5b50ce;--accent-bright:#7d70ed;--accent-strong:#493eb3;--accent-ink:#fff;--line:#e2deec;--line-strong:#cbc5dc;--tint:#eee9ff;--focus:#7064e4;--danger:#a8323e;--error-bg:#f8e5e4;--placeholder:#929297;--glass:#ffffffdb;--card:#fff;--editor:#f0edf7;--shadow:0 18px 55px #4030691f;--shadow-soft:0 5px 22px #40306917;--radius:18px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111019;--surface:#1c1a28;--surface-strong:#272438;--ink:#f3f0fa;--muted:#aaa4b8;--accent:#8d83f2;--accent-bright:#aaa1ff;--accent-strong:#a59cff;--accent-ink:#151519;--line:#39354c;--line-strong:#504a6a;--tint:#302a50;--focus:#a6a1ff;--danger:#f17f88;--error-bg:#3b2528;--placeholder:#7f7f86;--glass:#1c1a28e6;--card:#1d1b29;--editor:#0e0d15;--shadow:0 18px 55px #00000052;--shadow-soft:0 5px 22px #00000038}}*{box-sizing:border-box}html,body,#root{touch-action:pan-x pan-y;min-height:100%}html{scroll-padding-top:calc(104px + env(safe-area-inset-top))}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.55}body:has(.app-editor){background:var(--editor)}button,input,textarea{font:inherit}button,.file-button{background:linear-gradient(135deg, var(--accent), var(--accent-bright));min-height:44px;color:var(--accent-ink);cursor:pointer;touch-action:manipulation;border:1px solid #0000;border-radius:999px;padding:11px 17px;font-weight:700;transition:transform .16s,background .16s,border-color .16s,box-shadow .16s}button:hover:not(:disabled),.file-button:hover{background:linear-gradient(135deg, var(--accent-strong), var(--accent));box-shadow:var(--shadow-soft)}button:active:not(:disabled){transform:translateY(1px)scale(.98)}button:disabled,input:disabled,textarea:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,.file-button:focus-within{outline:3px solid var(--focus);outline-offset:3px}h1:focus{outline:none}input:not([type=checkbox]),textarea{width:100%;min-width:0;color:var(--ink);background:var(--surface-strong);border:1px solid var(--line);border-radius:12px;padding:12px 14px}label{font-size:.9rem;font-weight:700;display:block}label input{margin-top:7px;display:block}input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent)}h1,h2,p{margin-top:0}h1{letter-spacing:-.045em;margin-bottom:36px;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:720;line-height:1}h2{font-size:1.2rem;line-height:1.25}p{color:var(--muted)}.eyebrow{color:var(--accent);letter-spacing:.18em;margin-bottom:18px;font-size:.69rem;font-weight:800;display:block}.secondary,.file-button{color:var(--ink);border-color:var(--line-strong);background:0 0}.secondary:hover:not(:disabled),.file-button:hover{color:var(--ink);background:var(--tint)}.text-button{color:var(--accent);box-shadow:none;background:0 0;border-radius:10px;padding:9px 11px;font-size:.94rem}.text-button:hover:not(:disabled){color:var(--accent-strong);background:var(--tint);box-shadow:none}.danger{color:var(--danger)}.hint,.footnote{color:var(--muted);font-size:.84rem;line-height:1.55}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gate{background:var(--surface);border:1px solid var(--line);width:min(100% - 36px,500px);box-shadow:var(--shadow);border-radius:clamp(22px,4vw,36px);margin:clamp(28px,8vh,90px) auto;padding:clamp(28px,6vw,54px);position:relative;overflow:hidden}.gate>img{border-radius:14px;margin-bottom:34px;position:relative}.gate h1{font-size:clamp(2.4rem,8vw,3.5rem)}.gate form{gap:16px;display:grid}.gate form>p{margin-bottom:0}.gate .create-journal-form{margin-bottom:16px}.gate .hint{margin-top:-7px}.gate .footnote{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}.gate .build-stamp{color:var(--muted);text-align:center;margin:14px 0 0;font-size:.7rem}.gate>button,.gate .file-button{text-align:center;width:100%;margin-bottom:12px}.divider{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:12px;margin:24px 0;font-size:.76rem;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.recovery{overflow-wrap:anywhere;background:var(--tint);border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:18px;font-size:1.05rem;display:block}.check{align-items:flex-start;gap:12px;margin:20px 0;display:flex}.check input{flex-shrink:0}.file-button{justify-content:center;align-items:center;font-size:.9rem;display:inline-flex;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.app{width:min(100%,1240px);min-height:100dvh;padding:calc(112px + env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) calc(120px + env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));margin:auto}.app-history:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 88% 0%, color-mix(in srgb, var(--accent) 15%, transparent), transparent 34rem), radial-gradient(circle at 5% 92%, #568acb14, transparent 30rem);position:fixed;inset:0}.floating-header{z-index:10;top:calc(12px + env(safe-area-inset-top));background:var(--glass);border:1px solid var(--line);width:min(100% - 40px,1160px);min-height:64px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px)saturate(135%);border-radius:999px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px 8px 16px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toolbar-leading,.toolbar-actions{align-items:center;gap:8px;display:flex}.toolbar-brand{align-items:center;gap:9px;min-width:32px;display:flex}.toolbar-brand img{width:32px;height:32px;box-shadow:0 2px 8px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:8px;display:block}.toolbar-title{opacity:0;white-space:nowrap;letter-spacing:-.015em;max-width:0;font-size:1rem;font-weight:700;transition:max-width .22s cubic-bezier(.2,.8,.2,1),opacity .16s,transform .22s cubic-bezier(.2,.8,.2,1);overflow:hidden;transform:translate(-5px)}.toolbar-brand-scrolled .toolbar-title{opacity:1;max-width:80px;transform:none}.round-button,.entry-tools>summary{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;min-height:46px;padding:0;display:inline-flex}.round-button svg,.entry-tools>summary svg{width:22px;height:22px}.glass,.entry-tools>summary{color:var(--ink);box-shadow:none;background:0 0;border:1px solid #0000}.glass:hover:not(:disabled),.entry-tools>summary:hover{background:var(--tint);border-color:var(--line);box-shadow:none}.primary{color:var(--accent-ink);background:linear-gradient(135deg, var(--accent), var(--accent-bright));border:1px solid color-mix(in srgb, var(--accent) 80%, var(--ink));box-shadow:var(--shadow-soft)}.sync-badge{color:var(--muted);background:var(--tint);font-variant-numeric:tabular-nums;border-radius:20px;align-items:center;gap:5px;padding:5px 9px;font-size:.72rem;font-weight:700;display:flex}.sync-badge svg{width:14px;height:14px}.entry-tools{position:relative}.entry-tools>summary{cursor:pointer;list-style:none}.entry-tools>summary::-webkit-details-marker{display:none}.entry-menu{z-index:12;background:var(--surface-strong);border:1px solid var(--line);width:min(280px,100vw - 32px);max-height:calc(100dvh - 140px);box-shadow:var(--shadow);border-radius:16px;padding:8px;position:absolute;top:56px;right:0;overflow-y:auto}.entry-menu button{width:100%;color:var(--ink);text-align:left;align-items:center;gap:12px;padding:11px 12px;font-weight:500;display:flex}.entry-menu button.danger{color:var(--danger)}.entry-menu button svg{flex-shrink:0;width:19px;height:19px}.entry-menu-divider{border-top:1px solid var(--line);margin:6px 8px}.page-notices,.history-view,.editor-view,.settings-view{width:min(100%,1160px);margin-inline:auto}.history-view>h1,.settings-view>h1{width:fit-content;position:relative}.history-view>h1:after,.settings-view>h1:after{content:"";background:var(--accent);border-radius:999px;width:34px;height:4px;margin-top:13px;display:block}.notice{overflow-wrap:anywhere;background:var(--tint);border:1px solid var(--line);border-left:4px solid var(--focus);border-radius:12px;margin:0 0 20px;padding:16px 18px;font-size:.9rem}.notice p{margin:6px 0 12px}.notice button{margin:8px 8px 0 0}.action-notice{justify-content:space-between;align-items:center;gap:14px;min-height:64px;display:flex}.action-notice button{flex-shrink:0;margin:0}.error{color:var(--danger);background:var(--error-bg);border-left-color:var(--danger)}.page-notices:empty{display:none}.history-view,.editor-view,.settings-view{animation:.22s ease-out page-in}@keyframes page-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.entry-list{gap:44px;display:grid}.group-title{color:var(--muted);letter-spacing:.02em;margin:0 0 14px;font-size:.82rem;font-weight:700}.entry-grid{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.entry-card{width:100%;min-height:180px;color:var(--ink);text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden;box-shadow:0 1px #00000005}.entry-grid>.entry-card:nth-child(3n+1){background:color-mix(in srgb, var(--card) 92%, var(--accent))}.entry-grid>.entry-card:nth-child(3n+2){background:color-mix(in srgb, var(--card) 94%, #4f8fc8)}.entry-grid>.entry-card:nth-child(3n){background:color-mix(in srgb, var(--card) 94%, #bd6f9f)}.entry-card:hover:not(:disabled){color:var(--ink);background:var(--surface-strong);border-color:var(--line-strong);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.entry-card p{max-height:172px;color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;padding:22px 22px 0;font-size:1rem;font-weight:400;line-height:1.5;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0 118px,#0000 168px);mask-image:linear-gradient(#000 0 118px,#0000 168px)}.card-footer{color:var(--muted);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin:auto 18px 0;padding:14px 4px 16px;font-size:.78rem;font-weight:650;display:flex}.conflict-label{color:var(--danger);font-size:.72rem}.search-label{width:100%;max-width:none;margin:-14px 0 32px;display:block}.search-label input{background:var(--surface-strong);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:999px;padding:15px 18px}.search-filter{overflow-wrap:anywhere;max-width:100%;margin-bottom:30px}.load-more{margin-top:28px}.empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--radius);max-width:540px;margin:40px auto;padding:70px 22px}.empty h2{font-size:1.8rem;font-weight:500}.compose-dock{z-index:8;right:max(20px,50vw - 580px);bottom:calc(18px + env(safe-area-inset-bottom));pointer-events:none;position:fixed}.compose-button{pointer-events:auto;width:62px;height:62px}.compose-button svg{width:28px;height:28px}.app-editor{width:100%}.editor-view{width:min(100%,1160px);padding:0}.entry-heading{text-align:left;margin:0 0 26px}.date-picker{width:auto;max-width:100%;color:var(--accent);background:color-mix(in srgb, var(--surface) 70%, transparent);border:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:999px;padding:9px 13px;font-size:.76rem;font-weight:800;display:inline-flex;position:relative}.date-picker input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.date-picker:focus-within{outline:3px solid var(--focus);outline-offset:3px}.editor-paper{--editor-padding-block:clamp(20px, 3vw, 36px);--editor-padding-inline:clamp(20px, 3vw, 36px);background:linear-gradient(145deg, color-mix(in srgb, var(--surface) 97%, var(--accent)), var(--surface) 48%);border:1px solid var(--line);min-width:0;min-height:60dvh;box-shadow:var(--shadow);cursor:text;border-radius:clamp(16px,3vw,26px);padding:0;display:grid}.editor-paper .journal-text,.editor-paper .journal-text-mirror{width:100%;max-width:calc(860px + var(--editor-padding-inline) + var(--editor-padding-inline));padding:var(--editor-padding-block) var(--editor-padding-inline);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;border-radius:0;grid-area:1/1;justify-self:start;margin:0;font-size:clamp(1.05rem,1.6vw,1.18rem);line-height:1.52}.editor-paper textarea.journal-text{resize:none;overflow:hidden}.editor-paper textarea.journal-text-empty{align-self:start;min-height:0}.editor-paper .journal-text-mirror{visibility:hidden;pointer-events:none}.journal-text::placeholder{color:var(--placeholder);font-style:italic}.journal-text:focus-visible{outline:none}.editor-footer{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 8px 0;font-size:.7rem;font-weight:700;display:flex}.entry-history{width:min(580px,100% - 24px);max-height:80dvh;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;margin:auto;padding:24px}.entry-history::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10100da8}.history-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.history-heading h2{margin:0;font-size:1.5rem;font-weight:500}.history-version{width:100%;color:var(--ink);background:var(--surface-strong);border:1px solid var(--line);text-align:left;overflow-wrap:anywhere;border-radius:12px;flex-direction:column;margin:8px 0;padding:13px 15px;font-size:.84rem;display:flex}.history-version span+span{color:var(--muted);font-weight:400}.settings-view{grid-template-columns:1fr;gap:16px;display:grid}.settings-view>h1{margin-bottom:20px}.settings-view>section,.settings-view>.passkey-settings{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:clamp(20px,4vw,28px)}.settings-view>section:nth-of-type(3n+1){background:color-mix(in srgb, var(--surface) 95%, var(--accent))}.settings-view>section:nth-of-type(3n+2){background:color-mix(in srgb, var(--surface) 96%, #4f8fc8)}.settings-view>section:nth-of-type(3n){background:color-mix(in srgb, var(--surface) 96%, #bd6f9f)}.settings-view section h2{margin-bottom:14px;font-weight:500}.settings-view section>button,.settings-view section>.file-button{justify-content:center;width:100%;margin:12px 0 0;display:flex}.settings-view section>.hint{overflow-wrap:anywhere;margin:16px 0 0}.settings-view section>label{margin-top:14px}.sync-alert{position:relative}.sync-alert>summary{width:30px;height:30px;color:var(--danger);background:var(--error-bg);border:1px solid var(--danger);cursor:pointer;border-radius:50%;place-items:center;font-weight:800;list-style:none;display:grid}.sync-alert>summary::-webkit-details-marker{display:none}.sync-alert-message{top:calc(88px + env(safe-area-inset-top));overflow-wrap:anywhere;background:var(--surface-strong);border:1px solid var(--line);width:min(390px,100vw - 32px);max-height:60dvh;box-shadow:var(--shadow);border-radius:16px;padding:18px;font-size:.84rem;position:fixed;right:16px;overflow-y:auto}.sync-alert-message p{margin:8px 0 0}.auth-debug{margin-top:14px}.auth-debug summary{cursor:pointer;font-weight:700}.auth-debug pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:10px 0 0;padding:12px;font-size:.72rem;line-height:1.45}@media (width>=680px){.app{padding-left:32px;padding-right:32px}.floating-header{width:min(100% - 64px,1160px)}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-view{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-view>h1,.settings-view>.passkey-settings{grid-column:1/-1}}@media (width>=1020px){.app{padding-top:calc(132px + env(safe-area-inset-top));padding-bottom:100px}.floating-header{top:calc(20px + env(safe-area-inset-top))}.history-view .search-label{margin-top:-18px}.entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense}.entry-card{min-height:210px}.entry-grid>.entry-card:first-child{background:color-mix(in srgb, var(--card) 90%, var(--tint));grid-column:span 2;min-height:250px}.entry-grid>.entry-card:first-child p{max-width:720px;font-size:1.08rem;line-height:1.55}.entry-grid>.entry-card:only-child{grid-column:1/-1}.settings-view{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.settings-view>h1{grid-column:1/-1}.settings-view>section,.settings-view>.passkey-settings{grid-column:span 1}.editor-paper{min-height:calc(100dvh - 330px)}}@media (width<=480px){.app{padding-top:calc(94px + env(safe-area-inset-top));padding-left:max(14px, env(safe-area-inset-left));padding-right:max(14px, env(safe-area-inset-right))}.floating-header{top:calc(8px + env(safe-area-inset-top));width:calc(100% - 28px);min-height:58px;padding:6px 7px 6px 12px}.round-button,.entry-tools>summary{width:44px;height:44px;min-height:44px}.entry-heading{text-align:center}.editor-paper{--editor-padding-block:24px;--editor-padding-inline:20px;min-height:52dvh;box-shadow:none;border-radius:16px;padding:0}.gate{width:calc(100% - 20px);padding:28px 22px}.compose-dock{right:max(14px, env(safe-area-inset-right))}}@supports (-webkit-touch-callout:none){@media (width<=480px){.floating-header{top:calc(24px + env(safe-area-inset-top))}.app{padding-top:calc(110px + env(safe-area-inset-top))}}}@media (prefers-reduced-motion:no-preference){.floating-header{animation:.42s cubic-bezier(.2,.8,.2,1) both toolbar-arrive}.toolbar-leading>*,.toolbar-actions>.round-button,.toolbar-actions>.sync-badge,.toolbar-actions>.entry-tools>summary,.toolbar-actions>.sync-alert>summary{animation:.24s cubic-bezier(.2,.8,.2,1) both toolbar-control-arrive}.history-view>h1,.settings-view>h1{animation:.42s cubic-bezier(.2,.8,.2,1) 70ms both title-arrive}.entry-group{animation:.38s cubic-bezier(.2,.8,.2,1) both section-arrive}.entry-grid>.entry-card{animation:.44s cubic-bezier(.2,.8,.2,1) both card-arrive}.entry-grid>.entry-card:nth-child(2){animation-delay:45ms}.entry-grid>.entry-card:nth-child(3){animation-delay:90ms}.entry-grid>.entry-card:nth-child(4){animation-delay:.135s}.entry-grid>.entry-card:nth-child(5){animation-delay:.18s}.entry-grid>.entry-card:nth-child(n+6){animation-delay:.225s}.editor-paper{animation:.44s cubic-bezier(.2,.8,.2,1) 45ms both paper-arrive}.date-picker{animation:.36s cubic-bezier(.2,.8,.2,1) 90ms both date-arrive}.search-label{animation:.26s cubic-bezier(.2,.8,.2,1) both search-arrive}.sync-alert[open]>.sync-alert-message{transform-origin:100% 0;animation:.18s cubic-bezier(.2,.8,.2,1) both menu-arrive}.entry-history.is-opening::backdrop{animation:.18s ease-out both backdrop-arrive}.entry-history.is-closing::backdrop{animation:.16s ease-in both backdrop-leave}.notice{animation:.28s cubic-bezier(.2,.8,.2,1) both notice-arrive}.sync-badge-active svg{animation:.9s linear infinite sync-spin}.compose-button svg{transition:transform .22s cubic-bezier(.2,.8,.2,1)}.compose-button:hover svg{transform:rotate(90deg)}@keyframes toolbar-arrive{0%{opacity:0;transform:translate(-50%,-10px)}}@keyframes toolbar-control-arrive{0%{opacity:0;transform:scale(.96)}}@keyframes title-arrive{0%{opacity:0;transform:translateY(8px)}}@keyframes section-arrive{0%{opacity:0;transform:translateY(10px)}}@keyframes card-arrive{0%{opacity:0;transform:translateY(12px)scale(.985)}}@keyframes paper-arrive{0%{opacity:0;transform:translateY(10px)scale(.995)}}@keyframes date-arrive{0%{opacity:0;transform:translateY(6px)}}@keyframes search-arrive{0%{opacity:0;transform:translateY(-6px)scale(.99)}}@keyframes menu-arrive{0%{opacity:0;transform:translateY(-5px)scale(.97)}}@keyframes backdrop-arrive{0%{opacity:0}}@keyframes backdrop-leave{to{opacity:0}}@keyframes notice-arrive{0%{opacity:0;transform:translateY(-6px)}}@keyframes sync-spin{to{transform:rotate(-1turn)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (prefers-reduced-transparency:reduce){.floating-header{background:var(--surface);-webkit-backdrop-filter:none}}
