.skip-to-content{position:absolute;left:-9999px;top:-9999px;z-index:9999;padding:.5rem 1rem;background:var(--color-primary);color:#fff;text-decoration:none;font-weight:600;opacity:0;pointer-events:none}.skip-to-content:focus{left:0;top:0;opacity:1;pointer-events:auto}:root{--font-display: "Fraunces", Georgia, serif;--font-sans: "Source Sans 3", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "SF Mono", "Fira Code", Menlo, Monaco, monospace;--page-padding: 1.25rem;--card-border: 1.5px solid var(--color-border);--card-border-strong: 1.5px solid var(--color-border-strong);--card-shadow: 4px 4px 0 var(--color-border);--stagger-base: .04s;--animation-entrance: .4s cubic-bezier(.22, 1, .36, 1);--color-bg: #faf8f5;--color-bg-secondary: #f3efe9;--color-bg-elevated: #ffffff;--color-text: #2d2a26;--color-text-secondary: #7a756d;--color-border: #e0dbd3;--color-border-strong: #c9c3b8;--color-primary: #e07a5f;--color-primary-hover: #c96a51;--color-primary-subtle: rgba(224, 122, 95, .12);--color-danger: #c44536;--color-success: #5a8a5e;--color-hover: #f0ebe4;--texture-noise: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}@media(prefers-color-scheme:dark){:root{--color-bg: #1a1815;--color-bg-secondary: #232019;--color-bg-elevated: #2a2720;--color-text: #e8e4dc;--color-text-secondary: #9a948a;--color-border: #3d3830;--color-border-strong: #4a443a;--color-primary: #e8977f;--color-primary-hover: #f0a890;--color-primary-subtle: rgba(232, 151, 127, .15);--color-danger: #e05a4a;--color-success: #7ab07e;--color-hover: #2a2720}}@media(max-width:768px){:root{--page-padding: 1rem}}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;letter-spacing:-.01em;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.app-content{padding-top:constant(safe-area-inset-top);padding-top:env(safe-area-inset-top)}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:var(--texture-noise);opacity:.04;pointer-events:none;z-index:9999}a{color:var(--color-primary);text-decoration:none}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.journal-item .editable:focus-visible,.item-card .editable:focus-visible{background:var(--color-hover)}@media(hover:hover){a:hover{text-decoration:underline}}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}.btn-primary{padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--color-primary);border:2px solid var(--color-primary-hover);border-radius:0;text-decoration:none;display:inline-block;transition:all .15s ease;box-shadow:3px 3px 0 var(--color-primary-hover)}@media(hover:hover){.btn-primary:hover{background:var(--color-primary-hover);text-decoration:none;transform:translate(1px,1px);box-shadow:1px 1px 0 var(--color-primary-hover)}}.btn-ghost{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:none;border:1.5px solid transparent;border-radius:0;transition:all .15s ease}@media(hover:hover){.btn-ghost:hover{color:var(--color-text);border-color:var(--color-border);background:var(--color-hover)}}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:1rem}.auth-card{width:100%;max-width:400px;padding:2.5rem;background:var(--color-bg-elevated);border-radius:0;border:1.5px solid var(--color-border-strong);box-shadow:5px 5px 0 var(--color-border)}.auth-card h1{font-family:var(--font-display);font-size:1.875rem;font-weight:600;text-align:center;margin-bottom:.25rem;letter-spacing:-.02em}.auth-card .subtitle{text-align:center;color:var(--color-text-secondary);margin-bottom:2rem;font-size:.9375rem}.auth-card .field{margin-bottom:1.25rem}.auth-card label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.auth-card input[type=email],.auth-card input[type=password]{width:100%;padding:.75rem .875rem;font-size:1rem;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:0;color:var(--color-text);transition:border-color .15s,box-shadow .15s}.auth-card input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.auth-card .btn-primary{width:100%;padding:.875rem;font-size:1rem;margin-top:.75rem}.auth-card .error{padding:.75rem 1rem;margin-bottom:1rem;font-size:.875rem;color:var(--color-danger);background:#c4453614;border-left:3px solid var(--color-danger);border-radius:0 2px 2px 0}.auth-card .toggle{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:.875rem;color:var(--color-text-secondary)}.app-layout{display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:800px;margin:0 auto}@media all and (display-mode:standalone){.app-layout{height:100lvh}}.app-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.utility-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--color-border);background:var(--color-bg)}.utility-nav a{padding:.625rem .75rem;text-align:center;text-decoration:none;color:var(--color-text-secondary);font-size:.8125rem;font-weight:600;line-height:1.1;border-right:1px solid var(--color-border);transition:color .15s,background .15s;position:relative}.utility-nav a:last-child{border-right:none}@media(hover:hover){.utility-nav a:hover{color:var(--color-text);background:var(--color-hover)}}.utility-nav a.active{color:var(--color-primary);background:var(--color-primary-subtle)}.bottom-nav{display:flex;border-top:1.5px solid var(--color-border-strong);background:var(--color-bg-elevated);padding-bottom:env(safe-area-inset-bottom,0px)}.bottom-nav a{flex:1;padding:1rem;text-align:center;text-decoration:none;color:var(--color-text-secondary);font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;line-height:1.2;transition:color .15s,background .15s;border-right:1px solid var(--color-border);position:relative}.bottom-nav a:last-child{border-right:none}@media(hover:hover){.bottom-nav a:hover{color:var(--color-text);background:var(--color-hover)}}.bottom-nav a.active{color:var(--color-primary);background:var(--color-primary-subtle)}.utility-nav a.active:after,.bottom-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--color-primary)}.bottom-nav a.nav-upgrade{color:var(--color-primary);font-weight:600}.page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem;border-bottom:1.5px solid var(--color-border-strong);background:var(--color-bg-elevated)}.page-header h1{margin:0;font-family:var(--font-display);font-size:1.375rem;font-weight:600;letter-spacing:-.02em}.header-right{display:flex;align-items:center;gap:1rem}.messages-remaining{font-size:.75rem;font-weight:500;color:var(--color-text-secondary);padding:.25rem .625rem;background:var(--color-bg-secondary);border-radius:0}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:var(--color-text-secondary)}.empty-state p{margin:.5rem 0}.empty-state .hint{font-size:.875rem}.empty-state .btn-primary{margin-top:1rem}.conversation-list{list-style:none;margin:0;padding:0;flex:1;overflow-y:auto}.conversation-link{display:flex;align-items:center;padding:1rem;border-bottom:1px solid var(--color-border);text-decoration:none;color:inherit;transition:background .2s}@media(hover:hover){.conversation-link:hover{background:var(--color-hover);text-decoration:none}}.conv-content{flex:1}.conv-content h3{margin:0;font-size:1rem;font-weight:500}.conv-content .date{font-size:.75rem;color:var(--color-text-secondary)}.chat-view{display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:800px;margin:0 auto}.chat-header{display:flex;align-items:center;padding:.875rem 1.25rem;border-bottom:1.5px solid var(--color-border-strong);background:var(--color-bg-elevated);gap:.75rem}.back-btn,.new-btn{width:2.25rem;height:2.25rem;border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;border-radius:0;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .15s}@media(hover:hover){.back-btn:hover,.new-btn:hover{background:var(--color-hover);border-color:var(--color-border-strong);color:var(--color-text);text-decoration:none}}.delete-conv-form{display:contents}.delete-conv-btn{width:2.25rem;height:2.25rem;border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;border-radius:0;display:flex;align-items:center;justify-content:center;transition:all .15s}@media(hover:hover){.delete-conv-btn:hover{background:#c445361a;border-color:var(--color-danger);color:var(--color-danger)}}.header-title{flex:1}.header-title h1{margin:0;font-size:1rem;font-weight:600;letter-spacing:-.01em}.messages-count{font-size:.6875rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em}.messages{flex:1;overflow-y:auto;padding:1.5rem 1.25rem}.message{display:block;margin-bottom:1.5rem;padding-left:1rem;border-left:2px solid transparent}.message.user{border-left-color:var(--color-primary)}.message.assistant{border-left-color:var(--color-border-strong)}.bubble{max-width:100%;padding:0;border-radius:0;position:relative}.message.user .bubble{background:transparent;color:var(--color-text)}.message.assistant .bubble{background:transparent}.bubble .content{margin:0;word-wrap:break-word;line-height:1.7}.message.user .bubble .content{font-weight:500;white-space:pre-wrap}.message.assistant .bubble .content p{margin:0 0 .75rem}.message.assistant .bubble .content p:last-child{margin-bottom:0}.message.assistant .bubble .content h1,.message.assistant .bubble .content h2,.message.assistant .bubble .content h3{font-size:1rem;font-weight:600;margin:1rem 0 .5rem}.message.assistant .bubble .content h1:first-child,.message.assistant .bubble .content h2:first-child,.message.assistant .bubble .content h3:first-child{margin-top:0}.message.assistant .bubble .content ul,.message.assistant .bubble .content ol{margin:.5rem 0;padding-left:1.5rem}.message.assistant .bubble .content li{margin:.25rem 0}.message.assistant .bubble .content code{font-family:var(--font-mono);font-size:.875em;background:var(--color-bg-secondary);padding:.125rem .375rem;border-radius:.25rem}.message.assistant .bubble .content pre{background:var(--color-bg-secondary);padding:.75rem;border-radius:.375rem;overflow-x:auto;margin:.75rem 0}.message.assistant .bubble .content pre code{background:none;padding:0}.message.assistant .bubble .content blockquote{border-left:3px solid var(--color-border-strong);padding-left:.75rem;margin:.75rem 0;color:var(--color-text-secondary)}.message.assistant .bubble .content strong{font-weight:600}.message.assistant .bubble .content a{color:var(--color-primary);text-decoration:none}@media(hover:hover){.message.assistant .bubble .content a:hover{text-decoration:underline}}.bubble .time{display:block;font-size:.6875rem;font-weight:500;color:var(--color-text-secondary);margin-top:.5rem;text-transform:uppercase;letter-spacing:.03em}.message.user .time{color:var(--color-primary)}.examples-label{font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:.75rem}.examples{list-style:none;padding:0;margin:0}.examples li{padding:.625rem 1rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;margin-bottom:.5rem;font-size:.875rem;cursor:pointer;transition:all .15s}@media(hover:hover){.examples li:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}}.chat-input{padding:1rem 1.25rem;border-top:1.5px solid var(--color-border-strong);background:var(--color-bg-elevated)}.input-wrapper{display:flex;align-items:flex-end;gap:.75rem;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:0;padding:.75rem;transition:border-color .15s,box-shadow .15s}.input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.input-wrapper textarea{flex:1;border:none;background:transparent;resize:none;font-size:1rem;line-height:1.6;max-height:150px;outline:none;color:var(--color-text)}.actions{display:flex;gap:.375rem}.voice-btn{width:2.25rem;height:2.25rem;border-radius:0;border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}@media(hover:hover){.voice-btn:hover{background:var(--color-hover);border-color:var(--color-border-strong)}}.voice-btn.listening{background:var(--color-danger);border-color:var(--color-danger);color:#fff;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.send-btn{width:2.25rem;height:2.25rem;border-radius:0;border:2px solid var(--color-primary-hover);background:var(--color-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;box-shadow:3px 3px 0 var(--color-primary-hover)}@media(hover:hover){.send-btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--color-primary-hover)}}.send-btn:active{transform:translate(2px,2px);box-shadow:none}.send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:2px 2px 0 var(--color-primary-hover)}.typing-indicator{display:flex;gap:.375rem;padding:0 1rem 1rem 2rem}.typing-indicator span{width:.375rem;height:.375rem;background:var(--color-primary);border-radius:1px;animation:typewrite 1s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typewrite{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.item-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;margin:.5rem 0;background:var(--color-primary-subtle);border-radius:.5rem;border-left:3px solid var(--color-primary);animation:slideIn .3s ease-out}.item-card.item-deleted{background:#c445361a;border-left-color:var(--color-danger)}.item-card.item-completed{background:#5a8a5e1a;border-left-color:var(--color-success)}.item-card-icon{font-size:1.25rem;opacity:.8}.item-card-content{display:flex;flex-wrap:wrap;align-items:baseline;gap:.375rem}.item-card-action{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-primary);letter-spacing:.025em}.item-deleted .item-card-action{color:var(--color-danger)}.item-completed .item-card-action{color:var(--color-success)}.item-card-title{font-weight:500;color:var(--color-text)}.item-card .item-due{font-size:.75rem;color:var(--color-text-secondary)}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.items-main{flex:1;overflow-y:auto;padding:var(--page-padding)}.items-list,.tasks-list{display:flex;flex-direction:column;gap:.625rem}.tasks-list{gap:2rem}.tasks-list section{display:flex;flex-direction:column;gap:.625rem}.tasks-list section h2{font-family:var(--font-display);font-size:.8125rem;font-weight:600;color:var(--color-text-secondary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.04em;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.completed-section{opacity:.6}.item-card{display:flex;align-items:flex-start;gap:.875rem;padding:.875rem 1rem;background:var(--color-bg-elevated);border-radius:0;border:var(--card-border);transition:all .2s cubic-bezier(.22,1,.36,1);animation:itemSlideIn var(--animation-entrance) backwards}.items-list .item-card:nth-child(1),.tasks-list .item-card:nth-child(1){animation-delay:calc(var(--stagger-base) * 1)}.items-list .item-card:nth-child(2),.tasks-list .item-card:nth-child(2){animation-delay:calc(var(--stagger-base) * 2)}.items-list .item-card:nth-child(3),.tasks-list .item-card:nth-child(3){animation-delay:calc(var(--stagger-base) * 3)}.items-list .item-card:nth-child(4),.tasks-list .item-card:nth-child(4){animation-delay:calc(var(--stagger-base) * 4)}.items-list .item-card:nth-child(5),.tasks-list .item-card:nth-child(5){animation-delay:calc(var(--stagger-base) * 5)}.items-list .item-card:nth-child(6),.tasks-list .item-card:nth-child(6){animation-delay:calc(var(--stagger-base) * 6)}.items-list .item-card:nth-child(n+7),.tasks-list .item-card:nth-child(n+7){animation-delay:calc(var(--stagger-base) * 7)}@media(hover:hover){.item-card:hover{border-color:var(--color-border-strong);box-shadow:var(--card-shadow);transform:translateY(-2px)}}.item-card.completed{opacity:.5}.item-card.completed .title{color:var(--color-text-secondary)}.item-card.priority-high{border-left:3px solid var(--color-danger)}.item-card.priority-low{border-left:3px solid var(--color-text-secondary)}.checkbox-form{display:contents}.checkbox{width:1.375rem;height:1.375rem;min-width:1.375rem;border-radius:0;border:2px solid var(--color-border-strong);background:var(--color-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0;position:relative}@media(hover:hover){.checkbox:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}}.checkbox.checked{background:var(--color-bg);border-color:var(--color-success)}.checkbox.checked:before{content:"";position:absolute;width:.375rem;height:.625rem;border:solid var(--color-success);border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}.type-icon{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:.125rem .375rem;border-radius:0}.item-card .content{flex:1;min-width:0}.item-card .title{margin:0;font-size:.9375rem;font-weight:500;line-height:1.4}.item-card .description{margin:.375rem 0 0;font-size:.8125rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.item-card .due-date{font-size:.6875rem;font-weight:600;color:var(--color-primary);margin-top:.375rem;display:inline-block;padding:.125rem .5rem;background:var(--color-primary-subtle);border-radius:0}.item-card .editable{cursor:text;transition:background .15s}.item-card .editable.title{padding:.125rem .25rem;margin:-.125rem -.25rem}@media(hover:hover){.item-card .editable:hover{background:var(--color-hover)}}.item-card .editable.editing{background:transparent;padding:0;margin:0}.item-card .editable.due-date.editing{background:transparent}.delete-form{display:contents}.delete-btn{width:1.75rem;height:1.75rem;border:1px solid transparent;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s;padding:0}@media(hover:hover){.item-card:hover .delete-btn{opacity:1}}@media(hover:hover){.delete-btn:hover{background:#c445361a;border-color:var(--color-danger);color:var(--color-danger)}}.filter-form select{padding:.5rem .875rem;border:1.5px solid var(--color-border);border-radius:0;background:var(--color-bg);color:var(--color-text);font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .15s}.filter-form select:focus{outline:none;border-color:var(--color-primary)}.toggle-form .toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.8125rem;font-weight:500;color:var(--color-text-secondary)}.toggle-form .toggle input{width:1rem;height:1rem;cursor:pointer;accent-color:var(--color-primary)}.notes-layout{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.notes-layout .page-header{border-bottom:1.5px solid var(--color-border-strong)}.notes-layout .actions{display:flex;gap:.5rem}.notes-layout .actions form{display:contents}.notes-main{flex:1;padding:var(--page-padding);max-width:1200px;margin:0 auto;width:100%}.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}.note-card{display:flex;flex-direction:column;padding:1.25rem;background:var(--color-bg-elevated);border:var(--card-border);border-radius:0;text-decoration:none;color:inherit;transition:all .2s cubic-bezier(.22,1,.36,1);position:relative;animation:cardReveal var(--animation-entrance) backwards;transform-origin:center bottom}.note-card:nth-child(1){animation-delay:calc(var(--stagger-base) * 1)}.note-card:nth-child(2){animation-delay:calc(var(--stagger-base) * 2)}.note-card:nth-child(3){animation-delay:calc(var(--stagger-base) * 3)}.note-card:nth-child(4){animation-delay:calc(var(--stagger-base) * 4)}.note-card:nth-child(5){animation-delay:calc(var(--stagger-base) * 5)}.note-card:nth-child(6){animation-delay:calc(var(--stagger-base) * 6)}.note-card:nth-child(7){animation-delay:calc(var(--stagger-base) * 7)}.note-card:nth-child(8){animation-delay:calc(var(--stagger-base) * 8)}.note-card:nth-child(9){animation-delay:calc(var(--stagger-base) * 9)}.note-card:nth-child(10){animation-delay:calc(var(--stagger-base) * 10)}.note-card:nth-child(n+11){animation-delay:calc(var(--stagger-base) * 11)}.note-card:nth-child(3n+1){transform:rotate(-.4deg)}.note-card:nth-child(3n+2){transform:rotate(.3deg)}.note-card:nth-child(3n){transform:rotate(-.2deg)}.note-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--color-primary);opacity:0;transition:opacity .15s}@media(hover:hover){.note-card:hover{border-color:var(--color-border-strong);box-shadow:var(--card-shadow);text-decoration:none;transform:rotate(0) translateY(-2px)}}@media(hover:hover){.note-card:hover:before{opacity:1}}.note-card h3{font-family:var(--font-display);font-size:1rem;font-weight:500;margin-bottom:.625rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}@keyframes cardReveal{0%{opacity:0;transform:translateY(12px) rotate(0)}to{opacity:1;transform:translateY(0)}}.note-card .date{font-size:.6875rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em}.note-layout{height:100vh;height:100dvh;display:flex;flex-direction:column}.note-header{display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;padding-top:calc(.75rem + env(safe-area-inset-top,0px));border-bottom:1.5px solid var(--color-border-strong);background:var(--color-bg-elevated)}.note-header .back{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);text-decoration:none;font-size:.8125rem;font-weight:500;padding:.375rem .75rem;border:1.5px solid var(--color-border);border-radius:0;transition:all .15s}@media(hover:hover){.note-header .back:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--color-hover);text-decoration:none}}.note-header .status{flex:1;text-align:center;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.note-header .saving{color:var(--color-text-secondary)}.note-header .saved{color:var(--color-success)}.note-header .btn-delete{padding:.375rem .625rem;color:var(--color-text-secondary);background:none;border:1.5px solid transparent;border-radius:0;font-size:.8125rem;transition:all .15s}@media(hover:hover){.note-header .btn-delete:hover{color:var(--color-danger);border-color:var(--color-danger);background:#c4453614}}.note-main{flex:1;overflow:hidden;display:flex;justify-content:center;background:var(--color-bg)}.editor-container{width:100%;max-width:800px;display:flex;flex-direction:column;height:100%}.title-input{width:100%;padding:2rem 1.5rem .75rem;font-size:1.625rem;font-weight:700;letter-spacing:-.02em;background:none;border:none;color:var(--color-text)}.title-input:focus{outline:none}.title-input::placeholder{color:var(--color-text-secondary)}.note-title-row{display:flex;align-items:flex-start;gap:.5rem;padding-right:1.5rem}.note-title-row .title-input{flex:1;padding-right:.5rem}.journal-date-field{display:flex;align-items:center;gap:.25rem;padding-top:2rem;flex-shrink:0}.journal-date-field label{display:flex;align-items:center;color:var(--color-text-secondary);cursor:pointer}@media(hover:hover){.journal-date-field label:hover{color:var(--color-primary)}}.journal-date-field input[type=date]{padding:.375rem .5rem;font-size:.8125rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text);color-scheme:light dark;cursor:pointer}@media(hover:hover){.journal-date-field input[type=date]:hover{border-color:var(--color-border-strong)}}.journal-date-field input[type=date]:focus{outline:none;border-color:var(--color-primary)}.journal-date-field input[type=date]:not(:valid)::-webkit-datetime-edit{color:var(--color-text-secondary)}.clear-journal-date{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;font-size:1rem;color:var(--color-text-secondary);background:none;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:color .15s,background .15s,border-color .15s}@media(hover:hover){.clear-journal-date:hover{color:var(--color-error);background:var(--color-error-subtle, rgba(239, 68, 68, .1));border-color:var(--color-error)}}.editor-toolbar{display:flex;flex-wrap:wrap;gap:.25rem;padding:.625rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.toolbar-btn{padding:.375rem .625rem;background:none;border:1px solid transparent;border-radius:0;color:var(--color-text-secondary);cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s}@media(hover:hover){.toolbar-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-border);color:var(--color-text)}}.toolbar-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.toolbar-spacer{flex:1}.tiptap-editor{flex:1;overflow-y:auto}.tiptap-editor .ProseMirror{padding:1.5rem;min-height:300px;font-size:1rem;line-height:1.8;color:var(--color-text);font-family:var(--font-body);outline:none}.tiptap-editor .ProseMirror>*:first-child{margin-top:0}.tiptap-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-secondary);pointer-events:none;height:0}.tiptap-editor .ProseMirror h1{font-size:1.75rem;margin:1.5rem 0 1rem;font-weight:700;letter-spacing:-.02em}.tiptap-editor .ProseMirror h2{font-size:1.375rem;margin:1.25rem 0 .75rem;font-weight:600;letter-spacing:-.01em}.tiptap-editor .ProseMirror h3{font-size:1.125rem;margin:1rem 0 .5rem;font-weight:600}.tiptap-editor .ProseMirror p{margin:.875rem 0}.tiptap-editor .ProseMirror ul,.tiptap-editor .ProseMirror ol{padding-left:1.5rem;margin:.875rem 0}.tiptap-editor .ProseMirror li{margin:.375rem 0}.tiptap-editor .ProseMirror blockquote{border-left:3px solid var(--color-primary);padding-left:1rem;margin:1rem 0;color:var(--color-text-secondary);font-style:italic;background:var(--color-primary-subtle);padding:.75rem 1rem;border-radius:0 2px 2px 0}.tiptap-editor .ProseMirror code{font-family:var(--font-mono);font-size:.875em;background:var(--color-bg-secondary);padding:.2em .4em;border-radius:0;border:1px solid var(--color-border)}.tiptap-editor .ProseMirror pre{font-family:var(--font-mono);font-size:.8125rem;background:var(--color-bg-secondary);padding:1rem 1.25rem;border-radius:0;border:1.5px solid var(--color-border);overflow-x:auto;margin:1rem 0}.tiptap-editor .ProseMirror pre code{background:none;padding:0;border:none}.tiptap-editor .ProseMirror strong{font-weight:600}.tiptap-editor .ProseMirror em{font-style:italic}.tiptap-editor .ProseMirror hr{border:none;border-top:1.5px solid var(--color-border);margin:1.5rem 0}.tiptap-editor .ProseMirror a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.tiptap-editor .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:0}.tiptap-editor .ProseMirror ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:.5rem}.tiptap-editor .ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;margin-top:.35rem;user-select:none}.tiptap-editor .ProseMirror ul[data-type=taskList] li>label input[type=checkbox]{cursor:pointer;accent-color:var(--color-primary)}.tiptap-editor .ProseMirror ul[data-type=taskList] li>div{flex:1}.tiptap-editor .ProseMirror ul[data-type=taskList] li[data-checked=true]>div{text-decoration:line-through;opacity:.6}.toolbar-sep{width:1px;align-self:stretch;background:var(--color-border);margin:.25rem}.loading{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;flex-direction:column;gap:1rem}.spinner{width:24px;height:24px;border:2.5px solid var(--color-border);border-top-color:var(--color-primary);border-radius:0;animation:spin .6s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.conversation-link{border-bottom:1px solid var(--color-border);transition:all .15s}@media(hover:hover){.conversation-link:hover{background:var(--color-hover);border-left:3px solid var(--color-primary);padding-left:calc(1rem - 3px)}}.conv-content h3{font-weight:600;letter-spacing:-.01em}.conv-content .date{font-size:.6875rem;text-transform:uppercase;letter-spacing:.03em}.empty-state{padding:3rem 2rem}.empty-state p:first-of-type{font-weight:500;color:var(--color-text);font-size:1.0625rem}.empty-state .hint{font-size:.8125rem;max-width:280px}.subscription-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.subscription-content{flex:1;padding:1.5rem;max-width:800px;margin:0 auto;width:100%}.subscription-content h2{font-size:1rem;font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.subscription-content section{margin-bottom:2.5rem}.alert{padding:1rem;border-radius:0;margin-bottom:1.5rem;font-size:.875rem;font-weight:500}.alert-success{background:#5a8a5e1a;border-left:3px solid var(--color-success);color:var(--color-success)}.alert-info{background:var(--color-primary-subtle);border-left:3px solid var(--color-primary);color:var(--color-text)}.current-plan .plan-card{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;padding:1.5rem}.current-plan .plan-card.active{border-color:var(--color-primary);box-shadow:4px 4px 0 var(--color-primary-subtle)}.plan-card .plan-name{font-family:var(--font-display);font-size:1.375rem;font-weight:600;margin-bottom:1rem;letter-spacing:-.01em}.plan-usage{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.75rem}.usage-count{font-size:2rem;font-weight:700;color:var(--color-primary)}.usage-separator{font-size:1.25rem;color:var(--color-text-secondary)}.usage-limit{font-size:1.25rem;font-weight:600;color:var(--color-text-secondary)}.usage-label{font-size:.875rem;color:var(--color-text-secondary);margin-left:.5rem}.usage-bar{height:8px;background:var(--color-bg-secondary);border-radius:0;overflow:hidden;margin-bottom:1rem}.usage-fill{height:100%;background:var(--color-primary);transition:width .3s ease}.plan-period{font-size:.8125rem;color:var(--color-text-secondary)}.billing-toggle{display:flex;justify-content:center;gap:0;margin-bottom:1.5rem;background:var(--color-bg-secondary);border-radius:0;padding:.25rem;width:fit-content;margin-left:auto;margin-right:auto}.billing-option{padding:.5rem 1.25rem;border:none;background:transparent;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:.5rem}@media(hover:hover){.billing-option:hover{color:var(--color-text)}}.billing-option.active{background:var(--color-bg);color:var(--color-text);box-shadow:0 1px 3px #0000001a}.save-badge{font-size:.6875rem;font-weight:700;text-transform:uppercase;padding:.125rem .375rem;background:var(--color-success);color:#fff;border-radius:0;letter-spacing:.02em}.plan-effective-rate{font-size:.75rem;color:var(--color-text-secondary);margin-bottom:.5rem}.plan-effective-rate .effective-amount{font-weight:600;color:var(--color-success)}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.plans-grid .plan-card{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;padding:1.5rem;display:flex;flex-direction:column;transition:all .2s cubic-bezier(.22,1,.36,1);position:relative}@media(hover:hover){.plans-grid .plan-card:hover{border-color:var(--color-border-strong);box-shadow:4px 4px 0 var(--color-border);transform:translateY(-2px)}}.plans-grid .plan-card.recommended{border-color:var(--color-primary);border-width:2px}.plans-grid .plan-card.recommended:before{content:"Recommended";position:absolute;top:-.75rem;left:1rem;padding:.25rem .625rem;background:var(--color-primary);color:#fff;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}@media(hover:hover){.plans-grid .plan-card.recommended:hover{box-shadow:4px 4px 0 var(--color-primary-subtle)}}.plans-grid .plan-name{font-family:var(--font-display);font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.plan-price{margin-bottom:.5rem}.price-amount{font-family:var(--font-display);font-size:1.625rem;font-weight:600;color:var(--color-primary)}.price-period{font-size:.875rem;color:var(--color-text-secondary)}.plan-messages{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.plan-description{font-size:.8125rem;color:var(--color-text-secondary);margin-bottom:1rem;flex:1}.plans-grid .btn-primary{width:100%;text-align:center}.manage-section p{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:1rem}.stripe-notice{padding:1rem;background:var(--color-bg-secondary);border-radius:0;font-size:.875rem;color:var(--color-text-secondary)}.settings-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.settings-content{flex:1;padding:var(--page-padding);max-width:600px;margin:0 auto;width:100%}.settings-tabs{display:flex;gap:.5rem;margin-bottom:0;padding:0 .5rem;background:transparent;border-bottom:2px solid var(--color-border-strong);position:relative}.settings-tabs a{padding:.625rem 1.25rem;text-align:center;text-decoration:none;color:var(--color-text-secondary);font-weight:600;font-size:.8125rem;background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-bottom:none;margin-bottom:-2px;position:relative;transition:all .15s}@media(hover:hover){.settings-tabs a:hover{color:var(--color-text);background:var(--color-hover)}}.settings-tabs a.active{color:var(--color-text);background:var(--color-bg-elevated);border-color:var(--color-border-strong);border-bottom:2px solid var(--color-bg-elevated);z-index:1}.settings-section{margin-bottom:2rem;padding-top:1.5rem}.settings-section:first-of-type{padding-top:1.5rem}.settings-section h2{font-family:var(--font-display);font-size:1.125rem;font-weight:500;margin-bottom:1rem;letter-spacing:-.01em;color:var(--color-text)}.settings-section p{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:1rem}.settings-form{display:flex;flex-direction:column;gap:1rem}.settings-form .field{display:flex;flex-direction:column;gap:.375rem}.settings-form label{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.settings-form input[type=text],.settings-form input[type=email],.settings-form input[type=password]{width:100%;padding:.75rem .875rem;font-size:1rem;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:0;color:var(--color-text);transition:border-color .15s,box-shadow .15s}.settings-form input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.settings-form input:disabled{opacity:.6;cursor:not-allowed}.field-hint{font-size:.75rem;color:var(--color-text-secondary)}.theme-options{display:flex;gap:1rem;margin-bottom:1rem}.theme-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem 1rem 1rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;cursor:pointer;transition:all .15s}@media(hover:hover){.theme-option:hover{border-color:var(--color-border-strong);box-shadow:3px 3px 0 var(--color-border)}}.theme-option.selected{border-color:var(--color-primary);box-shadow:3px 3px 0 var(--color-primary-subtle)}.theme-option input{position:absolute;opacity:0;pointer-events:none}.theme-preview{width:100%;aspect-ratio:4 / 3;border:1px solid var(--color-border);overflow:hidden;display:flex}.theme-preview-pane{flex:1;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.theme-preview-light{background:#faf8f5}.theme-preview-light .preview-bar{height:3px;background:#2d2a26;opacity:.7}.theme-preview-light .preview-bar:first-child{width:60%}.theme-preview-light .preview-bar:nth-child(2){width:80%}.theme-preview-light .preview-bar:nth-child(3){width:45%}.theme-preview-light .preview-accent{margin-top:auto;height:4px;width:40%;background:#e07a5f}.theme-preview-dark{background:#1a1815}.theme-preview-dark .preview-bar{height:3px;background:#e8e4dc;opacity:.7}.theme-preview-dark .preview-bar:first-child{width:60%}.theme-preview-dark .preview-bar:nth-child(2){width:80%}.theme-preview-dark .preview-bar:nth-child(3){width:45%}.theme-preview-dark .preview-accent{margin-top:auto;height:4px;width:40%;background:#e8977f}.theme-preview-system .theme-preview-pane{flex:1}.theme-preview-system .theme-preview-light{border-right:1px solid var(--color-border)}.theme-icon{color:var(--color-text-secondary)}.theme-option.selected .theme-icon{color:var(--color-primary)}.theme-label{font-size:.8125rem;font-weight:600}.export-card{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);padding:1.25rem}.export-buttons{display:flex;flex-direction:column;gap:1rem}.export-group{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.export-group:last-child{padding-bottom:0;border-bottom:none}.export-label{min-width:70px;font-family:var(--font-display);font-weight:500;font-size:.9375rem}.export-actions{display:flex;gap:.5rem}.section-description{color:var(--color-text-secondary);margin-bottom:1rem;font-size:.875rem}.pwa-guide{margin-top:1rem;padding:1rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border)}.pwa-guide h3{font-family:var(--font-display);font-size:1rem;font-weight:500;margin-bottom:.375rem;letter-spacing:-.01em}.pwa-guide-intro{font-size:.8125rem;color:var(--color-text-secondary);margin-bottom:.875rem}.pwa-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.pwa-guide-card{background:var(--color-bg);border:1px solid var(--color-border);padding:.75rem}.pwa-guide-card h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;color:var(--color-text-secondary)}.pwa-guide-card ol{margin:0;padding-left:1rem;display:grid;gap:.35rem}.pwa-guide-card li{font-size:.8125rem;line-height:1.35}.shortcuts-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.shortcuts-content{background:var(--color-bg-elevated);border-radius:4px;padding:1.5rem;max-width:500px;width:100%;position:relative;box-shadow:0 4px 20px #00000026}.shortcuts-content h2{margin-bottom:1.25rem;font-size:1.125rem}.shortcuts-content .close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);line-height:1}.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.shortcut-section h3{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem}.shortcut{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.875rem}.shortcut kbd{display:inline-block;padding:.125rem .375rem;font-family:var(--font-mono);font-size:.75rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:0;min-width:1.5rem;text-align:center}.shortcut span{color:var(--color-text-secondary);margin-left:.5rem}.danger-zone{margin-top:2.5rem;padding:1.5rem;background:#c445360f;border:1.5px solid rgba(196,69,54,.25);position:relative}.danger-zone:before{content:"\26a0";position:absolute;top:-.875rem;left:1rem;width:1.75rem;height:1.75rem;background:var(--color-danger);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem}.danger-zone h2{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--color-danger);margin-bottom:.5rem}.danger-zone p{margin-bottom:1rem;font-size:.875rem;color:var(--color-text-secondary)}[data-theme=dark] .danger-zone{background:#e05a4a14;border-color:#e05a4a4d}.btn-danger{padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--color-danger);border:2px solid #a33528;border-radius:0;cursor:pointer;transition:all .15s ease;box-shadow:2px 2px #a33528}@media(hover:hover){.btn-danger:hover{background:#a33528;transform:translate(1px,1px);box-shadow:1px 1px #a33528}}.alert-error{background:#c445361a;border-left:3px solid var(--color-danger);color:var(--color-danger)}.settings-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--color-border);text-align:center}.app-version{font-size:.75rem;color:var(--color-text-secondary)}[data-theme=dark]{--color-bg: #1a1815;--color-bg-secondary: #232019;--color-bg-elevated: #2a2720;--color-text: #e8e4dc;--color-text-secondary: #9a948a;--color-border: #3d3830;--color-border-strong: #4a443a;--color-primary: #e8977f;--color-primary-hover: #f0a890;--color-primary-subtle: rgba(232, 151, 127, .15);--color-danger: #e05a4a;--color-success: #7ab07e;--color-hover: #2a2720}[data-theme=light]{--color-bg: #faf8f5;--color-bg-secondary: #f3efe9;--color-bg-elevated: #ffffff;--color-text: #2d2a26;--color-text-secondary: #7a756d;--color-border: #e0dbd3;--color-border-strong: #c9c3b8;--color-primary: #e07a5f;--color-primary-hover: #c96a51;--color-primary-subtle: rgba(224, 122, 95, .12);--color-danger: #c44536;--color-success: #5a8a5e;--color-hover: #f0ebe4}.search-container{padding:var(--page-padding)}.search-form{display:flex;gap:.75rem;margin-bottom:1.5rem}.search-input{flex:1;padding:.75rem 1rem;font-size:1rem;font-family:var(--font-sans);border:1.5px solid var(--color-border);border-radius:0;background:var(--color-bg-elevated);color:var(--color-text)}.search-results h2{font-size:1rem;font-weight:600;margin-bottom:1.5rem;color:var(--color-text-secondary)}.search-section{margin-bottom:2rem}.search-section h3{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:1rem}.no-results{text-align:center;color:var(--color-text-secondary);padding:2rem}.notes-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.notes-list li{background:var(--color-bg-elevated);border:var(--card-border);border-radius:0;transition:border-color .15s,box-shadow .15s,transform .15s}.note-link{display:block;padding:1rem;text-decoration:none;color:inherit}@media(hover:hover){.notes-list li:hover{border-color:var(--color-border-strong);box-shadow:var(--card-shadow);transform:translateY(-2px)}.note-link:hover{background:var(--color-hover)}}.note-title{display:block;font-weight:600;margin-bottom:.25rem;font-size:.9375rem}.note-preview{display:block;font-size:.875rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-nav{display:flex;align-items:center;gap:1rem}.calendar-nav .nav-btn{padding:.5rem .75rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;text-decoration:none;color:var(--color-text);font-weight:600}@media(hover:hover){.calendar-nav .nav-btn:hover{background:var(--color-hover)}}.calendar-nav .current-month{font-weight:600;min-width:140px;text-align:center}.calendar-container{padding:var(--page-padding);overflow-x:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:0;min-width:600px}.weekday-header{background:var(--color-bg-secondary);padding:.75rem .5rem;text-align:center;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.calendar-day{background:var(--color-bg-elevated);min-height:80px;padding:.5rem;display:flex;flex-direction:column;color:inherit;text-decoration:none;box-shadow:inset 0 0 0 1.5px var(--color-border);transition:box-shadow .15s ease,background .15s ease}.calendar-day.other-month{background:var(--color-bg)}.calendar-day.other-month .day-number{color:var(--color-text-secondary);opacity:.5}.calendar-day.today{background:var(--color-primary-subtle);box-shadow:inset 0 0 0 1.5px var(--color-primary)}.calendar-day.today .day-number{color:var(--color-primary);font-weight:700}@media(hover:hover){.calendar-day:hover{background:var(--color-hover);box-shadow:inset 0 0 0 1.5px var(--color-border-strong)}.calendar-day.today:hover{background:var(--color-primary-subtle)}}.day-number{font-size:.875rem;font-weight:500;margin-bottom:.25rem}.day-count{display:none;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:600;margin:auto}.day-items{display:flex;flex-direction:column;gap:.25rem;overflow:hidden;flex:1}.day-item{font-size:.6875rem;padding:.125rem .25rem;border-radius:0;background:var(--color-primary-subtle);border-left:2px solid var(--color-primary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.day-item.event{background:#5a8a5e26;border-left-color:var(--color-success)}.day-item.reminder{background:#c4943626;border-left-color:#c49436}.day-item .item-time{font-weight:600;margin-right:.25rem}.day-item .item-title{color:var(--color-text)}.journal-main{flex:1;overflow-y:auto;padding:var(--page-padding)}.date-nav{display:flex;align-items:center;gap:.75rem}.date-nav-calendar{margin-left:.75rem}.date-nav .nav-btn{padding:.375rem .75rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;text-decoration:none;color:var(--color-text);font-weight:600;transition:all .15s}@media(hover:hover){.date-nav .nav-btn:hover{background:var(--color-hover);border-color:var(--color-border-strong);text-decoration:none}}.date-picker-btn{font-weight:600;font-size:inherit;font-family:inherit;text-align:center;color:var(--color-text);background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;padding:.375rem .75rem;color-scheme:light dark;cursor:pointer;transition:all .15s;-webkit-appearance:none;appearance:none}@media(hover:hover){.date-picker-btn:hover{background:var(--color-hover);border-color:var(--color-border-strong)}}.date-picker-btn::-webkit-date-and-time-value{text-align:center}.journal-main{touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.undo-toast{position:fixed;bottom:-60px;left:50%;transform:translate(-50%);background:var(--color-surface, #333);color:var(--color-text, #fff);padding:.75rem 1.25rem;border-radius:8px;display:flex;align-items:center;gap:1rem;font-size:.9rem;box-shadow:0 4px 12px #0000004d;transition:bottom .3s ease;z-index:1000}.undo-toast.visible{bottom:calc(env(safe-area-inset-bottom,0px) + 1rem)}.undo-btn{background:none;border:none;color:var(--color-primary, #4a9eff);font-weight:600;font-size:.9rem;cursor:pointer;padding:0}.header-icon-link{color:var(--color-text-muted, #888);display:flex;align-items:center;margin-left:.5rem}.header-icon-link:hover{color:var(--color-text)}.credit-hint{font-size:.75rem;color:var(--color-text-muted, #888);text-align:center;margin:.25rem 0 .75rem}.credit-hint.credit-low{color:var(--color-warning, #d4a043)}.credit-hint.credit-critical{color:var(--color-danger);font-weight:500}.credit-hint .upgrade-link{display:block;margin:.5rem auto 0;width:fit-content}.low-credit-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;margin-bottom:.75rem;background:#e07a5f1a;border:1.5px solid var(--color-primary);border-radius:4px;font-size:.85rem;color:var(--color-text)}.low-credit-banner a{color:var(--color-primary);font-weight:600}.banner-dismiss{background:none;border:none;color:var(--color-text-muted);font-size:1.2rem;cursor:pointer;padding:0 .25rem;line-height:1}.first-day-checklist{margin-bottom:1rem;padding:.875rem 1rem;border:1.5px solid var(--color-primary);background:linear-gradient(180deg,var(--color-primary-subtle),var(--color-bg-elevated))}.first-day-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.375rem}.first-day-kicker{margin:0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary)}.first-day-progress{margin:0;font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}.first-day-title{margin:0 0 .625rem;font-size:.9375rem;font-weight:600;color:var(--color-text)}.first-day-steps{list-style:none;margin:0;padding:0;display:grid;gap:.625rem}.first-day-step{display:flex;align-items:flex-start;gap:.5rem}.first-day-status{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;margin-top:.0625rem;border:1.5px solid var(--color-border-strong);font-size:.6875rem;font-weight:700;color:var(--color-text);background:var(--color-bg-elevated)}.first-day-step.done .first-day-status{color:#fff;background:var(--color-success);border-color:var(--color-success)}.first-day-step-body{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem .5rem}.first-day-step-copy{font-size:.875rem;font-weight:500;color:var(--color-text)}.first-day-step.done .first-day-step-copy{color:var(--color-text-secondary)}.first-day-step-hint{font-size:.75rem;color:var(--color-text-secondary)}.first-day-action{padding:.125rem .5rem;font-size:.75rem;line-height:1.2}.first-day-deadline{margin:.75rem 0 0;font-size:.75rem;color:var(--color-text-secondary)}.onboarding-objective{margin-bottom:1rem;padding:.875rem 1rem;border:1.5px dashed var(--color-primary);background:var(--color-primary-subtle)}.objective-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.375rem}.objective-kicker{margin:0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary)}.objective-progress{margin:0;font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}.objective-title{margin:0 0 .625rem;font-size:.9375rem;font-weight:600;color:var(--color-text)}.objective-steps{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.objective-step{display:flex;align-items:center;gap:.5rem}.objective-status{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:1.5px solid var(--color-border-strong);font-size:.6875rem;font-weight:700;color:var(--color-text);background:var(--color-bg-elevated)}.objective-step.done .objective-status{color:#fff;background:var(--color-success);border-color:var(--color-success)}.objective-step-copy{font-size:.875rem;font-weight:500;color:var(--color-text)}.objective-step.done .objective-step-copy{color:var(--color-text-secondary)}.objective-deadline{margin:.75rem 0 0;font-size:.75rem;color:var(--color-text-secondary)}.rapid-log{margin-bottom:1.5rem}.rapid-log-input{display:flex;align-items:center;gap:.5rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s}.rapid-log-input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.bullet-indicator{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:1.25rem;font-weight:700;color:var(--color-primary);background:var(--color-primary-subtle);border:1.5px solid var(--color-primary);border-radius:0;cursor:pointer;transition:all .15s}@media(hover:hover){.bullet-indicator:hover{background:var(--color-primary);color:#fff}}.rapid-log-input input[type=text]{flex:1;border:none;background:transparent;font-size:1rem;color:var(--color-text);outline:none}.rapid-log-input input[type=text]::placeholder{color:var(--color-text-secondary);font-size:.875rem}.rapid-submit{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:#fff;background:var(--color-primary);border:1.5px solid var(--color-primary-hover);border-radius:0;cursor:pointer;transition:all .15s}@media(hover:hover){.rapid-submit:hover{background:var(--color-primary-hover)}}.type-hints{display:flex;gap:.375rem;margin-top:.5rem}.type-hint{padding:.25rem .5rem;font-size:.75rem;font-weight:500;font-family:var(--font-mono);color:var(--color-text-secondary);background:none;border:1px solid var(--color-border);border-radius:0;cursor:pointer;transition:all .15s}@media(hover:hover){.type-hint:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--color-hover)}}.type-hint.active{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}.journal-list{display:flex;flex-direction:column;gap:.375rem}.journal-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background:var(--color-bg-elevated);border:var(--card-border);border-radius:0;transition:all .2s cubic-bezier(.22,1,.36,1);animation:itemSlideIn var(--animation-entrance) backwards}.journal-list>:nth-child(1){animation-delay:calc(var(--stagger-base) * 1)}.journal-list>:nth-child(2){animation-delay:calc(var(--stagger-base) * 2)}.journal-list>:nth-child(3){animation-delay:calc(var(--stagger-base) * 3)}.journal-list>:nth-child(4){animation-delay:calc(var(--stagger-base) * 4)}.journal-list>:nth-child(5){animation-delay:calc(var(--stagger-base) * 5)}.journal-list>:nth-child(6){animation-delay:calc(var(--stagger-base) * 6)}.journal-list>:nth-child(7){animation-delay:calc(var(--stagger-base) * 7)}.journal-list>:nth-child(8){animation-delay:calc(var(--stagger-base) * 8)}.journal-list>:nth-child(9){animation-delay:calc(var(--stagger-base) * 9)}.journal-list>:nth-child(10){animation-delay:calc(var(--stagger-base) * 10)}.journal-list>:nth-child(n+11){animation-delay:calc(var(--stagger-base) * 11)}@media(hover:hover){.journal-item:hover{border-color:var(--color-border-strong);box-shadow:var(--card-shadow);transform:translateY(-2px)}}@keyframes itemSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.journal-item.type-task{border-left:3px solid var(--color-primary)}.journal-item.type-event{border-left:3px solid var(--color-success)}.journal-item.type-reminder{border-left:3px solid #c49436}.journal-item.type-note{border-left:3px solid var(--color-text-secondary)}.journal-note{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-bg-elevated);border:var(--card-border);border-left:3px solid var(--color-primary);border-radius:0;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s,background .15s,box-shadow .15s;animation:itemSlideIn var(--animation-entrance) backwards}@media(hover:hover){.journal-note:hover{border-color:var(--color-border-strong);background:var(--color-hover);box-shadow:var(--card-shadow);transform:translateY(-2px)}}.journal-note .note-bullet{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.journal-note .note-content{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.journal-note .note-title{font-size:.9375rem;font-weight:500;color:var(--color-text)}.journal-note .note-summary{font-size:.75rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-note .note-arrow{color:var(--color-text-secondary);opacity:0;transition:opacity .15s,transform .15s}@media(hover:hover){.journal-note:hover .note-arrow{opacity:1;transform:translate(2px)}}.journal-item.completed .item-title{color:var(--color-text-secondary)}.journal-item.migrated .item-title{font-style:italic;color:var(--color-text-secondary)}.journal-item.migrated{opacity:.6}.bullet-form{display:contents}.journal-item .bullet{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:1rem;font-weight:700;color:var(--color-text);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:0;cursor:pointer;transition:all .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}@media(hover:hover){.journal-item .bullet:hover{border-color:var(--color-primary);background:var(--color-primary-subtle);color:var(--color-primary)}}.journal-item.type-task .bullet{color:var(--color-primary)}.journal-item.type-event .bullet{color:var(--color-success)}.journal-item.type-reminder .bullet{color:#c49436}.journal-item.completed .bullet{color:var(--color-success)}.journal-item.migrated .bullet{color:var(--color-text-secondary)}.journal-item.cancelled .item-title{text-decoration:line-through;color:var(--color-text-secondary);opacity:.7}.journal-item.cancelled .item-time{text-decoration:line-through;opacity:.7}.journal-item.cancelled{opacity:.6}.journal-item.cancelled .bullet{color:var(--color-text-secondary)}.journal-item .item-content{flex:1;display:flex;align-items:baseline;gap:.5rem;min-width:0}.journal-item .item-title{font-size:.9375rem;font-weight:500}.journal-item .item-time{font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.journal-item .delete-btn{opacity:0}@media(hover:hover){.journal-item:hover .delete-btn{opacity:1}}.journal-item .editable{cursor:text;padding:.125rem .25rem;margin:-.125rem -.25rem;border-radius:0;transition:background .15s}@media(hover:hover){.journal-item .editable:hover{background:var(--color-hover)}}.journal-item .editable.editing{background:var(--color-bg);padding:0;margin:0}.inline-edit-input{font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;background:var(--color-bg);border:1.5px solid var(--color-primary);padding:.125rem .375rem;margin:-.125rem 0;width:auto;min-width:100px;outline:none}.inline-edit-input:focus{box-shadow:0 0 0 2px var(--color-primary-subtle)}.inline-edit-datetime{min-width:180px;font-size:.75rem}.datetime-edit-wrapper{display:inline-flex;align-items:center;gap:.25rem}.datetime-clear-btn{width:1.25rem;height:1.25rem;padding:0;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:.875rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}@media(hover:hover){.datetime-clear-btn:hover{border-color:var(--color-danger);color:var(--color-danger);background:#c445361a}}.rapid-log-options{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.ai-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.75rem;color:var(--color-text-secondary)}.journal-input-toggle{display:flex;justify-content:flex-end;margin-bottom:.5rem}.journal-toggle-group{display:inline-flex;align-items:center;background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-radius:0;padding:.2rem;gap:.2rem}.journal-toggle-btn{border:none;background:transparent;color:var(--color-text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.01em;padding:.35rem .8rem;cursor:pointer;transition:all .15s ease}@media(hover:hover){.journal-toggle-btn:hover{color:var(--color-text)}}.journal-toggle-btn.active{background:var(--color-bg);color:var(--color-text);box-shadow:0 1px 3px #0000001f}.ai-toggle input{width:1rem;height:1rem;accent-color:var(--color-primary)}.ai-toggle .ai-label{font-weight:500}.ai-toggle:has(input:checked) .ai-label{color:var(--color-primary)}.quick-capture{margin-bottom:1.5rem}.quick-capture-input{display:flex;align-items:flex-end;gap:.5rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;padding:.75rem 1rem;transition:all .15s}.quick-capture-input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.quick-capture-input textarea{flex:1;border:none;background:transparent;font-size:1rem;color:var(--color-text);resize:none;min-height:24px;max-height:120px;line-height:1.5;font-family:inherit}.quick-capture-input textarea:focus{outline:none}.quick-capture-input textarea::placeholder{color:var(--color-text-secondary);font-size:.875rem}.capture-actions{display:flex;gap:.25rem}.capture-actions .voice-btn,.capture-actions .send-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:50%;cursor:pointer;transition:all .15s}.capture-actions .voice-btn{background:var(--color-bg-secondary);color:var(--color-text-secondary)}@media(hover:hover){.capture-actions .voice-btn:hover{background:var(--color-hover);color:var(--color-text)}}.capture-actions .voice-btn.recording{background:var(--color-danger);color:#fff;animation:pulse 1s infinite}.capture-actions .send-btn.voice-ready{animation:pulse-glow 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #e07a5f66}50%{box-shadow:0 0 0 6px #e07a5f00}}.capture-actions .send-btn{background:var(--color-primary);color:#fff}@media(hover:hover){.capture-actions .send-btn:hover{background:var(--color-primary-hover)}}.capture-actions .send-btn:disabled{opacity:.6;cursor:not-allowed}.panel,.bulk-proposal,.task-list-response,.query-response,.reflection-card,.related-notes-list,.export-card,.pwa-guide{border-radius:0;border:1.5px solid var(--color-border);background:var(--color-bg-elevated)}.capture-feedback{margin-top:.75rem;padding:.75rem 1rem;border-radius:0;font-size:.875rem}.capture-feedback.hidden{display:none}.feedback-loading{color:var(--color-text-secondary)}.feedback-success{background:#5a8a5e1a;border:1.5px solid var(--color-success);color:var(--color-success)}.feedback-error{background:#c445361a;border:1.5px solid var(--color-danger);color:var(--color-danger)}.upgrade-link{display:inline-block;margin-top:.5rem;padding:.35rem .75rem;background:var(--color-primary);color:var(--color-bg);border-radius:4px;text-decoration:none;font-size:.85rem;font-weight:500}.upgrade-link:hover{opacity:.9}.feedback-items{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.feedback-item{display:inline-block;padding:.25rem .5rem;background:#fff3;border-radius:0;font-size:.8rem}.bulk-proposal{background:var(--color-bg-elevated);border:1.5px solid var(--color-primary);padding:1rem}.bulk-proposal .proposal-message{margin:0 0 .75rem;font-size:.9375rem;line-height:1.5}.bulk-proposal .proposal-items{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.bulk-proposal .proposal-item{display:inline-block;padding:.25rem .5rem;background:var(--color-hover);font-size:.8rem}.bulk-proposal .proposal-hint{margin:0;font-size:.8rem;color:var(--color-text-secondary)}.bulk-proposal .proposal-hint strong{color:var(--color-primary);font-weight:600}.task-list-response{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);padding:1rem}.task-list-response .task-list-message{margin:0 0 .75rem;font-size:.9375rem;line-height:1.5}.task-list-response .task-list-items{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;max-height:300px;overflow-y:auto}.task-list-response .task-list-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;background:var(--color-hover)}.task-list-response .task-info{flex:1;font-size:.875rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-list-response .task-date{color:var(--color-text-secondary);font-size:.75rem;margin-left:.5rem}.task-list-response .add-to-today-btn{flex-shrink:0;padding:.25rem .5rem;font-size:.75rem;font-weight:600;background:var(--color-primary);color:#fff;border:none;cursor:pointer;font-family:var(--font-body)}@media(hover:hover){.task-list-response .add-to-today-btn:hover{opacity:.9}}.task-list-response .add-to-today-btn.added{background:var(--color-success, #10b981);cursor:default}.task-list-response .add-to-today-btn:disabled{opacity:.7}.task-list-response .dismiss-task-list{width:100%;padding:.5rem;font-size:.8rem;background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;font-family:var(--font-body)}@media(hover:hover){.task-list-response .dismiss-task-list:hover{background:var(--color-hover);color:var(--color-text)}}.query-response{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;padding:1rem}.query-answer{margin:0 0 .75rem;line-height:1.6;color:var(--color-text)}.query-items{border-top:1px solid var(--color-border);padding-top:.75rem}.query-items h4{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.04em}.query-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--color-border);font-size:.875rem}.query-item:last-child{border-bottom:none}.query-item-bullet{font-weight:600;color:var(--color-primary)}.query-item-title{flex:1;color:var(--color-text)}.query-item-date{font-size:.75rem;color:var(--color-text-secondary)}.query-note-link{text-decoration:none;color:inherit;border-radius:var(--radius-sm);transition:background .15s}@media(hover:hover){.query-note-link:hover{background:var(--color-hover)}}.reflection-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.reflection-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;width:100%;justify-content:center;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;cursor:pointer;transition:all .15s}@media(hover:hover){.reflection-btn:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}}.reflection-btn:disabled{opacity:.6;cursor:not-allowed}.reflection-content{margin-top:1rem}.reflection-content.hidden{display:none}.reflection-card{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:0;padding:1.25rem}.reflection-summary{font-size:1rem;line-height:1.6;margin-bottom:1rem;color:var(--color-text)}.reflection-highlights,.reflection-suggestions{margin-top:1rem}.reflection-highlights h4,.reflection-suggestions h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:.5rem}.reflection-highlights ul,.reflection-suggestions ul{list-style:none;padding:0;margin:0}.reflection-highlights li,.reflection-suggestions li{font-size:.875rem;padding:.375rem 0 .375rem 1rem;position:relative}.reflection-highlights li:before{content:"\2022";position:absolute;left:0;color:var(--color-success)}.reflection-suggestions li:before{content:"\2192";position:absolute;left:0;color:var(--color-primary)}.reflection-content .error{color:var(--color-danger);padding:.75rem 1rem;background:#c445361a;border-radius:0}.spinner-small{display:inline-block;width:14px;height:14px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s ease-in-out infinite}.ask-section{margin-bottom:1.5rem}.ask-input-wrapper{display:flex;gap:.5rem}.ask-input-wrapper input{flex:1;padding:.75rem 1rem;font-size:.9375rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-radius:0;color:var(--color-text);transition:border-color .15s,box-shadow .15s}.ask-input-wrapper input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.ask-input-wrapper input::placeholder{color:var(--color-text-secondary)}.ask-btn{padding:.75rem 1rem;background:var(--color-primary);border:1.5px solid var(--color-primary-hover);border-radius:0;color:#fff;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}@media(hover:hover){.ask-btn:hover{background:var(--color-primary-hover)}}.ask-btn:disabled{opacity:.6;cursor:not-allowed}.ask-response{margin-top:1rem}.ask-response.hidden{display:none}.ask-response .loading{color:var(--color-text-secondary);font-style:italic}.ask-card{background:var(--color-bg-elevated);border:1.5px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:0;padding:1.25rem}.ask-answer{font-size:.9375rem;line-height:1.7;color:var(--color-text);margin-bottom:0}.ask-items{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.ask-items h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:.5rem}.ask-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;font-size:.875rem}.ask-item-type{font-size:.6875rem;font-weight:600;text-transform:uppercase;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:.125rem .375rem;border-radius:0}.ask-item-title{flex:1;color:var(--color-text)}.ask-item-date{font-size:.75rem;color:var(--color-text-secondary)}@media(max-width:768px){.page-header{flex-direction:column;gap:.75rem;align-items:flex-start;padding:.875rem 1rem}.page-header h1{font-size:1.2rem}.page-header-with-help{width:100%}.page-header-with-help h1{min-width:0}.page-header .header-right{width:100%;justify-content:space-between}.date-nav{width:100%;gap:.5rem}.date-nav .nav-btn{padding:.375rem .625rem}.date-picker-btn{flex:1;min-width:0}.date-nav-calendar{margin-left:0}.empty-state{padding:1.25rem 1rem}.quick-capture,.notes-quick-capture{margin-bottom:1rem}.quick-capture-input{padding:.625rem .75rem}.capture-actions .voice-btn,.capture-actions .send-btn{width:34px;height:34px}.calendar-container{padding:.5rem}.calendar-grid{min-width:100%;font-size:.8125rem}.calendar-day{min-height:60px;padding:.25rem}.day-item{font-size:.625rem;padding:.0625rem .125rem}.day-item .item-time{display:none}.calendar-nav{width:100%;justify-content:space-between}.settings-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.settings-section{padding:1rem}.search-form{flex-direction:column}.search-form .btn-primary{width:100%}.plans-grid{grid-template-columns:1fr}.chat-input .input-wrapper{flex-direction:column;gap:.5rem}.shortcuts-grid{grid-template-columns:1fr}}@media(max-width:480px){.utility-nav a{padding:.5rem;font-size:.6875rem}.bottom-nav a{padding:.75rem .35rem;font-size:.75rem;text-transform:none;letter-spacing:.02em}.page-header{padding:.75rem .875rem}.page-header h1{font-size:1.125rem}.date-nav{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center}.date-picker-btn{width:100%;font-size:.875rem;padding:.375rem .5rem}.date-nav .nav-btn{padding:.375rem .5rem}.first-day-checklist,.onboarding-objective{padding:.75rem .875rem}.calendar-grid{font-size:.75rem}.weekday-header{padding:.5rem .25rem}.day-number{font-size:.75rem}.day-items{display:none}.day-count{display:flex}.calendar-day{position:relative}.conversation-list li a{padding:.75rem}.chat-header h1{font-size:1rem}.quick-capture-input textarea::placeholder{font-size:.8125rem}}.help-tooltip{position:relative;display:inline-flex}.help-trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}@media(hover:hover){.help-trigger:hover{background:var(--color-hover);color:var(--color-text);border-color:var(--color-border-strong)}}.help-trigger:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary-subtle)}.help-content{display:none;position:fixed;top:auto;left:16px;right:16px;margin-top:8px;width:auto;max-width:320px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 20px #00000026;z-index:1000;overflow:hidden}@media(min-width:1024px){.help-content{position:absolute;left:auto;right:0;width:280px}}.help-tooltip.active .help-content{display:block;animation:helpFadeIn .2s ease}@keyframes helpFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.help-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);font-weight:600;font-size:.85rem;color:var(--color-text)}.help-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:4px}@media(hover:hover){.help-close:hover{background:var(--color-hover);color:var(--color-text)}}.help-tips{padding:12px 16px;max-height:300px;overflow-y:auto}.help-tip{padding:10px 0;border-bottom:1px solid var(--color-border)}.help-tip:last-child{border-bottom:none;padding-bottom:0}.help-tip:first-child{padding-top:0}.help-tip strong{display:block;font-size:.85rem;font-weight:600;color:var(--color-primary);margin-bottom:4px}.help-tip p{font-size:.8rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.page-header-with-help{display:flex;align-items:center;justify-content:flex-start;gap:.75rem}.page-header-with-help h1{flex:1}.page-header-with-help .header-icon-link{margin-left:auto}.notes-quick-capture{margin-bottom:1.5rem}.note-card .note-summary{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.5;margin:.375rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note-card .note-concepts{display:flex;flex-wrap:wrap;gap:.375rem;margin:.5rem 0}.concept-tag{display:inline-block;font-size:.6875rem;font-weight:500;color:var(--color-primary);background:var(--color-primary-subtle);padding:.125rem .5rem;border-radius:0;border:1px solid transparent;text-transform:lowercase}@media(hover:hover){.concept-tag:hover{border-color:var(--color-primary)}}.note-actions{display:flex;align-items:center;gap:.5rem}.btn-process{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;color:var(--color-text-secondary);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:0;cursor:pointer;transition:all .15s}@media(hover:hover){.btn-process:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}}.btn-process:disabled{opacity:.6;cursor:not-allowed}.note-metadata{padding:1rem 1.5rem;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:.75rem}.metadata-summary,.metadata-concepts{display:flex;flex-direction:column;gap:.25rem}.metadata-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.metadata-summary p{margin:0;font-size:.875rem;color:var(--color-text);line-height:1.5}.concept-tags{display:flex;flex-wrap:wrap;gap:.375rem}.query-notes{border-top:1px solid var(--color-border);padding-top:.75rem;margin-top:.75rem}.query-notes h4{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.query-note-link{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;margin:.25rem 0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:0;text-decoration:none;color:inherit;transition:all .15s}@media(hover:hover){.query-note-link:hover{background:var(--color-hover);border-color:var(--color-border-strong);text-decoration:none}}.query-note-title{font-weight:500;color:var(--color-text)}.query-note-date{font-size:.75rem;color:var(--color-text-secondary)}.related-notes{margin-top:1.5rem;padding:1rem;background:var(--color-bg-secondary);border-radius:0;border:1px solid var(--color-border)}.related-notes h3{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:.75rem}.related-note-item{display:block;padding:.625rem 0;border-bottom:1px solid var(--color-border);text-decoration:none;color:inherit}.related-note-item:last-child{border-bottom:none}@media(hover:hover){.related-note-item:hover{color:var(--color-primary)}}.related-note-item .related-note-title{font-weight:500;font-size:.875rem}.related-note-item .related-note-summary{font-size:.75rem;color:var(--color-text-secondary);margin-top:.125rem;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.related-notes-section{margin-top:1.5rem}.related-notes-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;color:var(--color-text-secondary);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:0;cursor:pointer;width:100%;justify-content:center;transition:all .15s}@media(hover:hover){.related-notes-btn:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}}.related-notes-btn:disabled{opacity:.6;cursor:not-allowed}.related-notes-content{margin-top:.75rem}.related-notes-list{background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-radius:0;padding:1rem}.related-notes-list h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:.75rem}.related-notes-list .related-note-link{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.75rem;margin:.375rem 0;background:var(--color-bg-elevated);border:var(--card-border);border-radius:0;text-decoration:none;color:inherit;transition:all .15s}@media(hover:hover){.related-notes-list .related-note-link:hover{background:var(--color-hover);border-color:var(--color-border-strong);box-shadow:var(--card-shadow);text-decoration:none}}.related-note-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.related-notes-list .related-note-title{font-weight:500;color:var(--color-text)}.related-notes-list .related-note-summary{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.related-notes-list .related-note-date{font-size:.75rem;color:var(--color-text-secondary);white-space:nowrap}.related-notes-content .no-results{font-size:.875rem;color:var(--color-text-secondary);text-align:center;padding:1rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:0}.landing-page{min-height:100vh;min-height:100dvh}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;max-width:1000px;margin:0 auto}.landing-logo{font-family:var(--font-display);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:var(--color-text)}.landing-nav-links{display:flex;align-items:center;gap:.75rem}.landing-hero{background:var(--color-bg-elevated);border-bottom:1.5px solid var(--color-border-strong)}.hero-content{max-width:600px;margin:0 auto;padding:3rem 1.5rem 4rem;text-align:center}.hero-kicker{font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem}.hero-content h1{font-family:var(--font-display);font-size:2.25rem;font-weight:600;line-height:1.2;letter-spacing:-.03em;margin-bottom:1rem}@media(min-width:640px){.hero-content h1{font-size:2.75rem}}.hero-subtitle{font-size:1.125rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:2rem}.hero-highlights{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;padding:0;margin:0 0 2rem}.hero-highlights li{font-size:.8125rem;padding:.35rem .75rem;border-radius:999px;background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary)}.hero-cta{display:flex;flex-direction:column;gap:.75rem;align-items:center}@media(min-width:480px){.hero-cta{flex-direction:row;justify-content:center}}.btn-large{padding:.875rem 1.75rem;font-size:1rem}.btn-block{width:100%;text-align:center}.landing-section{padding:3rem 1.5rem}@media(min-width:640px){.landing-section{padding:4rem 1.5rem}}.landing-section-alt{background:var(--color-bg-secondary)}.section-content{max-width:900px;margin:0 auto}.section-content h2{font-family:var(--font-display);font-size:1.75rem;font-weight:600;letter-spacing:-.02em;text-align:center;margin-bottom:2rem}@media(min-width:640px){.section-content h2{font-size:2rem}}.problem-grid{display:grid;gap:1.25rem}@media(min-width:768px){.problem-grid{grid-template-columns:repeat(3,1fr)}}.problem-card{padding:1.5rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);box-shadow:4px 4px 0 var(--color-border)}.problem-icon{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--color-primary);margin-bottom:.75rem}.problem-card h3{font-size:1rem;font-weight:600;margin-bottom:.5rem}.problem-card p{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.feature-grid{display:grid;gap:1.5rem}@media(min-width:768px){.feature-grid{grid-template-columns:repeat(3,1fr)}}.feature-card{padding:1.5rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);box-shadow:4px 4px 0 var(--color-border)}.feature-number{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;font-family:var(--font-display);font-size:1rem;font-weight:600;color:#fff;background:var(--color-primary);margin-bottom:1rem}.feature-card h3{font-size:1.0625rem;font-weight:600;margin-bottom:.5rem}.feature-card p{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.comparison-grid{display:grid;gap:1.25rem}@media(min-width:768px){.comparison-grid{grid-template-columns:repeat(3,1fr)}}.comparison-card{padding:1.5rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);box-shadow:4px 4px 0 var(--color-border)}.comparison-card h3{font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--color-primary)}.comparison-quote{font-style:italic;color:var(--color-text-secondary);margin-bottom:.75rem;padding-left:.75rem;border-left:2px solid var(--color-border);font-size:.9375rem}.comparison-card p:last-child{font-size:.9375rem;line-height:1.5}.faq-list{max-width:820px;margin:0 auto;display:grid;gap:1rem}.faq-item{padding:1.5rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);box-shadow:4px 4px 0 var(--color-border)}.faq-item h3{font-size:1rem;font-weight:600;margin-bottom:.5rem}.faq-item p{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.pricing-grid{display:grid;gap:1.5rem;max-width:600px;margin:0 auto}@media(min-width:600px){.pricing-grid{grid-template-columns:repeat(2,1fr)}}.pricing-card{padding:1.75rem;background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);box-shadow:4px 4px 0 var(--color-border)}.pricing-card-featured{border-color:var(--color-primary);box-shadow:4px 4px 0 var(--color-primary-hover);position:relative}.pricing-badge{position:absolute;top:-.75rem;right:1rem;background:var(--color-primary);color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:1rem}.pricing-card h3{font-family:var(--font-display);font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.pricing-price{font-family:var(--font-display);font-size:2.5rem;font-weight:600;margin-bottom:1.25rem}.pricing-price span{font-size:1rem;font-weight:400;color:var(--color-text-secondary)}.pricing-features{list-style:none;margin-bottom:1.5rem}.pricing-features li{font-size:.9375rem;color:var(--color-text-secondary);padding:.375rem 0 .375rem 1.25rem;position:relative}.pricing-features li:before{content:"+";position:absolute;left:0;color:var(--color-primary);font-weight:600}.social-proof-section{text-align:center;padding:2rem 1.5rem}.social-proof-stat{font-size:1.1rem;color:var(--color-text-secondary);font-weight:500}.landing-cta-section{background:var(--color-bg-elevated);border-top:1.5px solid var(--color-border-strong);text-align:center}.landing-cta-section p{color:var(--color-text-secondary);margin-bottom:1.5rem}.landing-cta-section .btn-primary{margin-top:0}.landing-footer{padding:2rem 1.5rem;border-top:1px solid var(--color-border)}.footer-content{max-width:900px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-brand{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--color-text-secondary)}.footer-links{display:flex;gap:1.5rem}.footer-links a{font-size:.875rem;color:var(--color-text-secondary)}.footer-seo-links{max-width:900px;margin:1.25rem auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem}.footer-seo-label{font-size:.8125rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text)}.footer-seo-links a{font-size:.8125rem;color:var(--color-text-secondary)}.footer-copy{max-width:900px;margin:1rem auto 0;font-size:.75rem;color:var(--color-text-secondary);text-align:center}@media(hover:hover){.footer-links a:hover,.footer-seo-links a:hover{color:var(--color-primary)}}.admin-page{max-width:1100px;margin:0 auto;padding:1.5rem}@media(min-width:768px){.admin-page{padding:2rem}}.admin-header{margin-bottom:2rem}.admin-header h1{font-family:var(--font-display);font-size:1.75rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.25rem}.admin-subtitle{color:var(--color-text-secondary);font-size:.9375rem}.admin-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}@media(min-width:768px){.admin-metrics{grid-template-columns:repeat(4,1fr)}}.metric-card{background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);padding:1.25rem;box-shadow:3px 3px 0 var(--color-border)}.metric-card-accent{border-color:var(--color-primary);box-shadow:3px 3px 0 var(--color-primary-hover)}.metric-card-success{border-color:var(--color-success);box-shadow:3px 3px color-mix(in srgb,var(--color-success) 50%,transparent)}.metric-card-revenue{border-color:#22c55e;box-shadow:3px 3px color-mix(in srgb,#22c55e 50%,transparent)}.metric-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.5rem}.metric-value{font-family:var(--font-display);font-size:1.75rem;font-weight:600;line-height:1.2}.metric-max{font-size:1rem;font-weight:400;color:var(--color-text-secondary);margin-left:.25rem}.metric-detail{font-size:.75rem;color:var(--color-text-secondary);margin-top:.25rem}.metric-bar{height:4px;background:var(--color-border);margin-top:.75rem;overflow:hidden}.metric-bar-fill{height:100%;background:var(--color-primary);transition:width .3s ease}.admin-section{background:var(--color-bg-elevated);border:1.5px solid var(--color-border-strong);padding:1.25rem;margin-bottom:1.5rem;box-shadow:3px 3px 0 var(--color-border)}.admin-section-full{overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.section-header h2{font-family:var(--font-display);font-size:1.125rem;font-weight:600;margin:0}.section-actions{display:flex;gap:.5rem}.search-input{padding:.5rem .75rem;border:1.5px solid var(--color-border-strong);background:var(--color-bg);font-size:.875rem;min-width:200px}.search-input:focus{outline:none;border-color:var(--color-primary)}.usage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(min-width:768px){.usage-grid{grid-template-columns:repeat(4,1fr)}}.usage-card{background:var(--color-bg-secondary);padding:1rem;border:1px solid var(--color-border)}.usage-card-total{background:var(--color-bg);border-color:var(--color-border-strong)}.usage-period{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem}.usage-stats{display:flex;flex-direction:column;gap:.375rem}.usage-stat{display:flex;justify-content:space-between;align-items:baseline}.usage-number{font-weight:600;font-size:.9375rem}.usage-label{font-size:.75rem;color:var(--color-text-secondary)}.usage-stat-cost .usage-number{color:var(--color-primary)}.table-wrapper{overflow-x:auto;margin:0 -1.25rem;padding:0 1.25rem}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th,.admin-table td{padding:.75rem .5rem;text-align:left;border-bottom:1px solid var(--color-border)}.admin-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);font-weight:500;white-space:nowrap}@media(hover:hover){.admin-table tbody tr:hover{background:var(--color-bg-secondary)}}.admin-table code{font-size:.8125rem;background:var(--color-bg-secondary);padding:.125rem .375rem;border:1px solid var(--color-border)}.admin-table-compact th,.admin-table-compact td{padding:.5rem .375rem}.text-right{text-align:right}.text-muted{color:var(--color-text-secondary)}.cost{color:var(--color-primary);font-weight:500}.user-cell{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.user-email{font-weight:500}.usage-fraction{font-variant-numeric:tabular-nums}.usage-sep{color:var(--color-text-secondary);margin:0 .125rem}.badge{display:inline-block;padding:.1875rem .5rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border:1px solid transparent}.badge-trial{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-secondary)}.badge-pro{background:var(--color-primary);color:#fff}.badge-special{background:#8b5cf6;color:#fff}.badge-muted{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-secondary)}.inline-form{display:inline}.btn-action{padding:.25rem .625rem;font-size:.75rem;font-weight:500;border:1.5px solid var(--color-border-strong);background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:all .15s ease}@media(hover:hover){.btn-action:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}}@media(hover:hover){.btn-action-danger:hover{background:var(--color-error);border-color:var(--color-error)}}.onboarding-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:overlayFadeIn .3s ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.onboarding-overlay.hidden{display:none}.onboarding-modal{width:100%;max-width:440px;background:var(--color-bg-elevated);border:2px solid var(--color-border-strong);box-shadow:8px 8px 0 var(--color-border);animation:modalSlideIn .4s cubic-bezier(.22,1,.36,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.onboarding-content{padding:2rem 2rem 1.5rem;min-height:300px;display:flex;flex-direction:column}.step-content{text-align:center;animation:stepFadeIn .3s ease}@keyframes stepFadeIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.step-icon{margin-bottom:1.25rem;color:var(--color-primary)}.step-content h2{font-family:var(--font-display);font-size:1.5rem;font-weight:600;margin-bottom:.75rem;letter-spacing:-.02em}.step-description{color:var(--color-text-secondary);font-size:.9375rem;line-height:1.6;margin-bottom:1.25rem}.step-hint{font-size:.8125rem;color:var(--color-text-secondary);font-style:italic}.bullet-legend{display:flex;flex-direction:column;gap:.625rem;text-align:left;padding:1rem;background:var(--color-bg);border:1px solid var(--color-border)}.bullet-item{display:flex;align-items:center;gap:.75rem}.bullet-symbol{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:1rem;font-weight:700;background:var(--color-bg-elevated);border:1.5px solid var(--color-border)}.bullet-symbol.task{color:var(--color-primary)}.bullet-symbol.event{color:var(--color-success)}.bullet-symbol.reminder{color:#c49436}.bullet-symbol.note{color:var(--color-text-secondary)}.bullet-label{font-size:.875rem;color:var(--color-text)}.voice-examples{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.voice-example{padding:.625rem 1rem;font-size:.875rem;font-style:italic;color:var(--color-text);background:var(--color-bg);border-left:3px solid var(--color-primary)}.brain-features{display:flex;flex-direction:column;gap:.625rem;text-align:left;margin-top:1rem}.brain-feature{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.feature-icon{width:1.5rem;text-align:center}.step-indicators{display:flex;justify-content:center;gap:.5rem;padding:.75rem;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-bg)}.step-dot{width:8px;height:8px;border:1.5px solid var(--color-border-strong);background:var(--color-bg-elevated);transition:all .2s ease}.step-dot.active{background:var(--color-primary);border-color:var(--color-primary)}.onboarding-actions{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;gap:.75rem}.onboarding-actions .btn-ghost{padding:.5rem 1rem}.onboarding-actions .btn-primary{padding:.625rem 1.5rem}.onboarding-skip{margin-right:auto;font-size:.8125rem;color:var(--color-text-secondary)}.contextual-tip{position:absolute;z-index:9999;max-width:260px;animation:tipFadeIn .3s ease}@keyframes tipFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.contextual-tip.hidden{display:none}.tip-content{background:var(--color-bg-elevated);border:1.5px solid var(--color-primary);box-shadow:4px 4px 0 var(--color-primary-subtle);padding:.875rem 1rem}.tip-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.375rem}.tip-header strong{font-size:.875rem;font-weight:600;color:var(--color-primary)}.tip-dismiss{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:0;line-height:1;transition:color .15s}@media(hover:hover){.tip-dismiss:hover{color:var(--color-text)}}.tip-content p{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.tip-arrow{position:absolute;width:10px;height:10px;background:var(--color-bg-elevated);border:1.5px solid var(--color-primary);transform:rotate(45deg)}.tip-bottom .tip-arrow{top:-6px;left:50%;margin-left:-5px;border-right:none;border-bottom:none}.tip-top .tip-arrow{bottom:-6px;left:50%;margin-left:-5px;border-left:none;border-top:none}.tip-left .tip-arrow{right:-6px;top:50%;margin-top:-5px;border-left:none;border-bottom:none}.tip-right .tip-arrow{left:-6px;top:50%;margin-top:-5px;border-right:none;border-top:none}.onboarding-highlight{animation:highlightPulse 2s ease-in-out infinite;position:relative}.onboarding-highlight:after{content:"";position:absolute;inset:-4px;border:2px solid var(--color-primary);animation:highlightRing 2s ease-in-out infinite;pointer-events:none}@keyframes highlightPulse{0%,to{box-shadow:0 0 0 0 var(--color-primary-subtle)}50%{box-shadow:0 0 0 8px var(--color-primary-subtle)}}@keyframes highlightRing{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:480px){.onboarding-modal{max-width:100%;margin:.5rem}.onboarding-content{padding:1.5rem 1.25rem 1rem;min-height:280px}.step-content h2{font-size:1.375rem}.onboarding-actions{padding:.875rem 1rem}}.whatsnew-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10001;padding:1rem;animation:overlayFadeIn .3s ease}.whatsnew-modal{width:100%;max-width:440px;background:var(--color-bg-elevated);border:2px solid var(--color-border-strong);box-shadow:8px 8px 0 var(--color-border);animation:modalSlideIn .4s cubic-bezier(.22,1,.36,1);padding:1.5rem}.whatsnew-modal h2{margin:0 0 1rem;font-size:1.25rem;font-weight:700}.whatsnew-feature{margin-bottom:1.25rem}.whatsnew-feature-icon{font-size:1.5rem;margin-bottom:.5rem}.whatsnew-feature h3{margin:0 0 .5rem;font-size:1rem;font-weight:600}.whatsnew-feature p{margin:0 0 .5rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.whatsnew-feature ul{margin:.25rem 0 .75rem;padding-left:1.25rem;font-size:.875rem;color:var(--color-text-secondary)}.whatsnew-feature li{margin-bottom:.25rem}.whatsnew-dismiss{width:100%;margin-top:.5rem}.pwa-install-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10002;padding:1rem;animation:overlayFadeIn .3s ease}.pwa-install-modal{width:100%;max-width:420px;background:var(--color-bg-elevated);border:2px solid var(--color-border-strong);box-shadow:8px 8px 0 var(--color-border);animation:modalSlideIn .4s cubic-bezier(.22,1,.36,1);padding:1.25rem}.pwa-install-modal h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.pwa-install-lead,.pwa-install-hint{margin:0 0 .75rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.45}.pwa-install-steps h3{margin:0 0 .375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.pwa-install-steps ol{margin:0 0 .75rem;padding-left:1.1rem;display:grid;gap:.3rem}.pwa-install-steps li{font-size:.8125rem}.pwa-install-actions{display:grid;grid-template-columns:1fr;gap:.5rem}.pwa-install-actions .btn-ghost,.pwa-install-actions .btn-primary{width:100%;text-align:center;text-decoration:none}.app-layout:has(#bottom-nav.htmx-request) #content{opacity:.5;transition:opacity .1s ease}.app-layout:has(#bottom-nav.htmx-request) #content:before{content:"";position:fixed;top:0;left:0;right:0;height:2px;background:var(--color-primary);animation:htmx-progress 1.5s ease-in-out infinite;z-index:9999}@keyframes htmx-progress{0%{transform:scaleX(0);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}50.1%{transform:scaleX(1);transform-origin:right}to{transform:scaleX(0);transform-origin:right}}#content{animation:content-enter .15s ease-out}@keyframes content-enter{0%{opacity:.6}to{opacity:1}}.reviews-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.reviews-content{flex:1;padding:var(--page-padding);max-width:900px;margin:0 auto;width:100%}.page-subtitle{margin-top:.35rem;color:var(--color-text-secondary);font-size:.9rem}.review-generate{margin:1.5rem 0 2rem;padding:1.25rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated)}.review-generate-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.review-generate-fields{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.review-input{display:flex;flex-direction:column;gap:.35rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.review-input input{font-size:.875rem;text-transform:none;letter-spacing:normal;padding:.5rem .625rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);color-scheme:light dark}.review-list{display:flex;flex-direction:column;gap:1rem}.review-card{display:block;padding:1.25rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated);text-decoration:none;color:inherit;transition:background .15s,border-color .15s,transform .15s}@media(hover:hover){.review-card:hover{background:var(--color-hover);border-color:var(--color-border-strong);transform:translateY(-1px)}}.review-card-header{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}.review-type{font-weight:700}.review-period{font-weight:600}.review-summary{margin-top:.75rem;color:var(--color-text);font-size:.95rem}.review-stats-line{margin-top:.75rem;font-size:.8rem;color:var(--color-text-secondary)}.review-detail{display:flex;flex-direction:column;gap:1.5rem}.review-summary-card{padding:1.25rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated)}.review-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);margin-bottom:.5rem}.review-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.review-stat{padding:.75rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated)}.review-stat-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);margin-bottom:.35rem}.review-stat-value{font-size:1rem;font-weight:600;color:var(--color-text)}.review-section h3{font-family:var(--font-display);font-size:1.05rem;margin-bottom:.5rem}.review-section ul{padding-left:1.25rem;margin:.5rem 0 0}.review-section li{margin:.35rem 0}.review-detail-header{align-items:flex-start;gap:1rem}.review-detail-header>div:first-child{flex:1}.back-link{display:inline-block;margin-bottom:.5rem;text-decoration:none;color:var(--color-text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}@media(hover:hover){.back-link:hover{color:var(--color-text)}}.wizard{max-width:640px}.wizard-progress{display:flex;gap:.5rem;margin-bottom:2rem}.wizard-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border);transition:background .2s}.wizard-dot.active{background:var(--color-primary)}.wizard-step{display:none;animation:wizard-fade-in .3s ease}.wizard-step.active{display:block}@keyframes wizard-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.wizard-step h2{font-family:var(--font-display);font-size:1.2rem;margin-bottom:.5rem}.wizard-hint{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:1rem}.wizard-textarea{width:100%;padding:.75rem;font-family:var(--font-sans);font-size:.95rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);resize:vertical;min-height:100px}.wizard-textarea:focus{outline:none;border-color:var(--color-primary)}.wizard-textarea::placeholder{color:var(--color-text-secondary);opacity:.6}.wizard-items{margin-top:1.5rem}.wizard-items h3{font-family:var(--font-display);font-size:1rem;margin-bottom:.5rem}.wizard-item-list{list-style:none;padding:0;max-height:300px;overflow-y:auto}.wizard-item{display:flex;gap:.5rem;align-items:baseline;padding:.35rem 0;font-size:.9rem;border-bottom:1px solid var(--color-border)}.wizard-item:last-child{border-bottom:none}.wizard-item--completed{text-decoration:line-through;opacity:.6}.wizard-item--cancelled{opacity:.5}.wizard-item-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);flex-shrink:0}.wizard-rating{margin-top:1.5rem}.wizard-rating-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.wizard-rating-options{display:flex;gap:.5rem}.wizard-rating-box{cursor:pointer}.wizard-rating-box input{position:absolute;opacity:0;pointer-events:none}.wizard-rating-box span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1.5px solid var(--color-border);background:var(--color-bg-elevated);font-weight:600;font-size:.95rem;transition:background .15s,border-color .15s}.wizard-rating-box input:checked+span{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media(hover:hover){.wizard-rating-box:hover span{border-color:var(--color-primary)}}.wizard-nav{display:flex;justify-content:space-between;margin-top:2rem;gap:1rem}.wizard-loading{text-align:center;padding:3rem 0}.wizard-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;margin:0 auto 1rem;animation:wizard-spin .8s linear infinite}@keyframes wizard-spin{to{transform:rotate(360deg)}}.wizard-error{margin-top:1rem}.review-user-rating{padding:1.25rem;border:1.5px solid var(--color-border);background:var(--color-bg-elevated)}.review-rating-value{font-size:1.1rem;font-weight:600}.review-reflections{padding:1.25rem;border:1.5px solid var(--color-border);background:var(--color-bg-secondary)}.review-reflections h3{font-family:var(--font-display);font-size:1.05rem;margin-bottom:1rem}.review-reflection-item{margin-bottom:1rem}.review-reflection-item:last-child{margin-bottom:0}.review-reflection-item p{margin-top:.25rem;white-space:pre-wrap}
