:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.4;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;--bg: #141A26;--surface: #1D2533;--surface-elevated: #273247;--text: #F4F1EA;--text-secondary: #CFC8BB;--text-muted: #A8A194;--accent: #D4A85D;--accent-subtle: rgba(212, 168, 93, .15);--accent-secondary: #9A9DD4;--accent-secondary-subtle: rgba(154, 157, 212, .15);--border: rgba(207, 200, 187, .1);--border-hover: rgba(207, 200, 187, .2);--border-active: rgba(207, 200, 187, .3);--interactive: rgba(207, 200, 187, .06);--interactive-hover: rgba(207, 200, 187, .1);--interactive-active: rgba(207, 200, 187, .14);--focus-ring: rgba(154, 157, 212, .8);--error: #E8937A;--success: #7DB88E;--bg-glow: rgba(212, 168, 93, .05);--shadow-logo: rgba(10, 13, 20, .3);--shadow-dropdown: rgba(7, 10, 16, .5);--accent-fill: rgba(212, 168, 93, .55);--accent-secondary-fill: rgba(154, 157, 212, .5);--accent-secondary-line: rgba(154, 157, 212, .2);--accent-secondary-dot: rgba(154, 157, 212, .4);--accent-border: rgba(212, 168, 93, .35);--accent-hover: rgba(212, 168, 93, .22);--accent-secondary-border: rgba(154, 157, 212, .18);--accent-secondary-tag-border: rgba(154, 157, 212, .2);--success-fill: rgba(125, 184, 142, .55);--success-subtle: rgba(125, 184, 142, .1);--success-border: rgba(125, 184, 142, .18);--fading-border: rgba(212, 168, 93, .15)}html.light{--bg: #EDE6D8;--surface: #F5EDE0;--surface-elevated: #E8DECE;--text: #2E2A24;--text-secondary: #5B5348;--text-muted: #716858;--accent: #8B6326;--accent-subtle: rgba(139, 99, 38, .12);--accent-secondary: #5E6396;--accent-secondary-subtle: rgba(94, 99, 150, .12);--border: rgba(46, 42, 36, .1);--border-hover: rgba(46, 42, 36, .2);--border-active: rgba(46, 42, 36, .3);--interactive: rgba(46, 42, 36, .05);--interactive-hover: rgba(46, 42, 36, .09);--interactive-active: rgba(46, 42, 36, .13);--focus-ring: rgba(94, 99, 150, .7);--error: #C4533E;--success: #3A7549;--bg-glow: rgba(184, 134, 59, .06);--shadow-logo: rgba(0, 0, 0, .08);--shadow-dropdown: rgba(0, 0, 0, .12);--accent-fill: rgba(184, 134, 59, .5);--accent-secondary-fill: rgba(94, 99, 150, .45);--accent-secondary-line: rgba(94, 99, 150, .18);--accent-secondary-dot: rgba(94, 99, 150, .35);--accent-border: rgba(184, 134, 59, .3);--accent-hover: rgba(184, 134, 59, .18);--accent-secondary-border: rgba(94, 99, 150, .15);--accent-secondary-tag-border: rgba(94, 99, 150, .18);--success-fill: rgba(74, 138, 92, .45);--success-subtle: rgba(74, 138, 92, .08);--success-border: rgba(74, 138, 92, .15);--fading-border: rgba(184, 134, 59, .15)}html.font-small{font-size:14px}html.font-medium{font-size:16px}html.font-large{font-size:19px}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;background:var(--bg)}body{overflow:hidden;overscroll-behavior:none}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}::-moz-focus-inner{border:0}:focus:not(:focus-visible){outline:none}.content-focus-target:focus{outline:none}.save-indicator{margin:0;font-size:.82rem;letter-spacing:.01em;display:flex;align-items:center;gap:.4rem}.save-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.save-indicator--saving{color:var(--text-muted)}.save-indicator--saving .save-dot{background:var(--accent);animation:save-pulse 1.4s ease-in-out infinite}.save-indicator--saved{color:var(--success)}.save-indicator--saved .save-dot{background:var(--success)}.save-indicator--error{color:var(--error)}@keyframes save-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.75)}}@media(prefers-reduced-motion:reduce){.save-indicator--saving .save-dot{animation:none}}.skip-link{position:absolute;top:-100%;left:0;z-index:100;padding:.55rem 1rem;background:var(--surface-elevated);color:var(--text);font-size:.85rem;text-decoration:none;border-radius:0 0 10px}.skip-link:focus{top:0}.profile-page{display:flex;flex-direction:column;gap:0}.profile-back{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;background:none;border:none;color:var(--text-secondary);font:inherit;font-size:.82rem;cursor:pointer;padding:0;margin-bottom:1rem;letter-spacing:.01em}.profile-back:hover{color:var(--text)}.profile-title{margin:0 0 .25rem;font-size:clamp(1.4rem,3.5vw,1.9rem);font-weight:560;letter-spacing:-.02em}.profile-email{margin:0 0 1.75rem;font-size:.82rem;color:var(--text-muted);letter-spacing:.01em}.profile-form{display:flex;flex-direction:column;gap:.35rem}.profile-label{font-size:.78rem;color:var(--text-secondary);letter-spacing:.03em;margin-top:.6rem}.profile-label:first-child{margin-top:0}.profile-input{width:100%;border:none;border-bottom:1px solid var(--border-hover);background:transparent;color:var(--text);font:inherit;font-size:clamp(1rem,2.5vw,1.15rem);padding:.4rem 0;outline:none}.profile-input::placeholder{color:var(--text-muted)}.profile-input:focus{border-bottom-color:var(--border-active)}.profile-error{margin:.5rem 0 0;font-size:.82rem;color:var(--error)}.profile-save{margin-top:1.5rem;align-self:flex-start}.profile-save+.save-indicator{margin-top:.6rem}.insights-page{padding-bottom:2rem}.insights-title{margin:.6rem 0 0;font-size:clamp(1.5rem,4vw,2rem);font-weight:560;letter-spacing:-.02em}.insights-subtitle{margin:.2rem 0 0;color:var(--text-secondary);font-size:.82rem}.insights-tabs{display:flex;gap:.3rem;margin-top:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.insights-tab{padding:.4rem .8rem;min-height:44px;display:inline-flex;align-items:center;border:none;background:none;color:var(--text-muted);font:inherit;font-size:.88rem;border-radius:8px;cursor:pointer}.insights-tab.active{color:var(--text);background:var(--interactive-hover)}.insights-card{background:var(--interactive);border:1px solid var(--border);border-radius:14px;padding:1rem 1rem .85rem;margin-top:.75rem}.insights-card h3{margin:0 0 .3rem;font-size:1rem;font-weight:560;letter-spacing:-.01em}.card-subtitle{margin:0 0 .65rem;font-size:.78rem;color:var(--text-muted);line-height:1.35}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.stat{display:flex;flex-direction:column;padding:.55rem .7rem;background:var(--interactive);border-radius:10px}.stat-number{font-size:1.4rem;font-weight:600;letter-spacing:-.02em}.stat-label{font-size:.75rem;color:var(--text-muted);margin-top:.1rem}.stats-detail{margin:.7rem 0 0;font-size:.82rem;color:var(--text-secondary);line-height:1.4}.entity-section{margin-bottom:.6rem}.entity-label{margin:0 0 .3rem;font-size:.72rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.entity-list{display:grid;gap:.2rem}.entity-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:.3rem 0}.entity-name{font-size:.88rem;font-weight:500}.entity-meta{font-size:.72rem;color:var(--text-muted);text-align:right}.entity-range{opacity:.75}.fading-ago{color:var(--accent)}.fading-card{border-color:var(--fading-border)}.drift-bars{display:grid;gap:.3rem}.drift-row{display:grid;grid-template-columns:4.2rem 1fr 2.2rem;align-items:center;gap:.5rem}.drift-label{font-size:.72rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.drift-bar-track{height:6px;background:var(--interactive);border-radius:3px;overflow:hidden}.drift-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-secondary-fill),var(--accent-fill));border-radius:3px;transition:width .3s ease}@media(prefers-reduced-motion:reduce){.drift-bar-fill{transition:none}}.drift-value{font-size:.72rem;color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums}.field-grid{display:grid;gap:.65rem}.field-item{display:grid;gap:.25rem}.field-name{font-size:.85rem;font-weight:500;text-transform:capitalize}.field-meters{display:grid;gap:.2rem}.field-meter{display:grid;grid-template-columns:4.5rem 1fr;align-items:center;gap:.4rem}.field-meter-label{font-size:.68rem;color:var(--text-muted)}.field-meter-track{height:5px;background:var(--interactive);border-radius:3px;overflow:hidden}.field-meter-fill{height:100%;border-radius:3px}.field-meter-fill.variety{background:var(--success-fill)}.field-meter-fill.evolution{background:var(--accent-fill)}.memorable-list{display:grid;gap:.35rem}.memorable-item{display:block;width:100%;text-align:left;background:var(--interactive);border:1px solid var(--border);border-radius:10px;padding:.6rem .75rem;cursor:pointer;font:inherit;color:inherit}.memorable-item:hover,.memorable-item.expanded{background:var(--interactive-hover);border-color:var(--border-hover)}.memorable-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.memorable-date{font-size:.8rem;font-weight:500}.memorable-score{font-size:.7rem;color:var(--success);font-variant-numeric:tabular-nums}.memorable-preview{margin:.25rem 0 0;font-size:.8rem;color:var(--text-secondary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.memorable-item.expanded .memorable-preview{display:none}.memorable-detail{margin-top:.5rem;display:grid;gap:.4rem}.thread{margin-top:.6rem;margin-bottom:.8rem;padding-left:.2rem}.thread:last-child{margin-bottom:0}.thread-node{display:flex;gap:.6rem;position:relative}.thread-line{width:2px;min-height:100%;background:var(--accent-secondary-line);flex-shrink:0;position:relative}.thread-line:before{content:"";position:absolute;top:.45rem;left:-3px;width:8px;height:8px;background:var(--accent-secondary-dot);border-radius:50%}.thread-node:first-child .thread-line:before{background:var(--accent-secondary)}.thread-content{padding-bottom:.6rem;min-width:0}.thread-meta{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.thread-date{font-size:.8rem;font-weight:500}.thread-gap{font-size:.7rem;color:var(--text-muted)}.thread-preview{margin:.2rem 0 0;font-size:.8rem;color:var(--text-secondary);line-height:1.35}.tag-row{display:flex;flex-wrap:wrap;gap:.35rem}.tag-row.compact{margin-top:.4rem;gap:.25rem}.insight-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.22rem .55rem;background:var(--interactive);border:1px solid var(--border);border-radius:6px;font-size:.72rem;color:var(--text-secondary);white-space:nowrap}.insight-tag.person{background:var(--accent-secondary-subtle);border-color:var(--accent-secondary-tag-border);color:var(--accent-secondary)}.insight-tag.place{background:var(--success-subtle);border-color:var(--success-border);color:var(--success)}.filter-row{display:flex;gap:.3rem;margin-top:.75rem;overflow-x:auto;padding-bottom:.3rem}.filter-btn{padding:.32rem .65rem;min-height:44px;display:inline-flex;align-items:center;border:1px solid var(--border);background:none;color:var(--text-muted);font:inherit;font-size:.75rem;border-radius:6px;cursor:pointer;white-space:nowrap}.filter-btn.active{color:var(--text);background:var(--interactive-hover);border-color:var(--border-hover)}.entries-list{margin-top:.5rem}.entries-count{margin:.4rem 0 .5rem;font-size:.75rem;color:var(--text-muted)}.entry-card{display:block;width:100%;text-align:left;background:var(--interactive);border:1px solid var(--border);border-radius:12px;padding:.7rem .8rem;margin-bottom:.45rem;cursor:pointer;font:inherit;color:inherit}.entry-card:hover{background:var(--interactive-hover);border-color:var(--border-hover)}.entry-card-header{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.entry-card-date{font-size:.8rem;font-weight:500}.entry-card-day{font-size:.7rem;color:var(--text-muted)}.entry-card-badge{font-size:.62rem;padding:.1rem .4rem;border-radius:4px}.echo-badge,.person-badge{background:var(--accent-secondary-subtle);color:var(--accent-secondary)}.entry-card-preview{margin:.3rem 0 0;font-size:.82rem;color:var(--text-secondary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.entry-detail{padding-bottom:1rem}.entry-detail-header{display:flex;align-items:baseline;gap:.6rem;margin-top:.4rem}.entry-detail-header h2{margin:0;font-size:1.3rem;font-weight:560}.detail-fields{margin-top:.8rem;display:grid;gap:.6rem}.detail-field{background:var(--interactive);border:1px solid var(--border);border-radius:12px;padding:.65rem .8rem}.detail-field h4{margin:0 0 .25rem;font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.detail-field p{margin:0;font-size:.9rem;line-height:1.5;white-space:pre-wrap}.detail-entities{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.6rem}.echo-card{margin-top:.75rem;padding:.7rem .8rem;background:var(--accent-secondary-subtle);border:1px solid var(--accent-secondary-border);border-radius:12px}.echo-card h4{margin:0 0 .3rem;font-size:.82rem;font-weight:560;color:var(--accent-secondary)}.echo-meta{margin:0;font-size:.78rem;color:var(--text-secondary)}.echo-apart{opacity:.65}.echo-preview{margin:.35rem 0 0;font-size:.82rem;color:var(--text-secondary);line-height:1.4;font-style:italic}.word-count{margin:.75rem 0 0;font-size:.72rem;color:var(--text-muted)}.link-btn{background:none;border:none;color:var(--accent-secondary);font:inherit;font-size:.82rem;cursor:pointer;padding:.2rem 0;min-height:44px;display:inline-flex;align-items:center}.link-btn:hover{color:var(--text)}.back-btn{margin-bottom:.2rem}.history-page{padding-top:.25rem}.history-back{margin:0;padding:0;min-height:44px;display:inline-flex;align-items:center;background:none;border:none;font:inherit;font-size:.82rem;color:var(--text-secondary);cursor:pointer}.history-back:hover{color:var(--text)}.history-title{margin:.8rem 0 0;font-size:clamp(1.3rem,3.5vw,1.7rem);font-weight:560;letter-spacing:-.02em}.history-loading,.history-empty-state{margin:1.5rem 0 0;color:var(--text-secondary);font-size:.88rem}.history-list{margin-top:1rem;display:grid;gap:.5rem}.history-card{display:flex;flex-direction:column;gap:.25rem;text-align:left;background:var(--interactive);border:1px solid var(--border);border-radius:12px;padding:.7rem .8rem;color:var(--text);font:inherit;cursor:pointer;transition:background .15s}.history-card:hover{background:var(--interactive-hover)}@media(prefers-reduced-motion:reduce){.history-card{transition:none}}.history-card-date{font-size:.78rem;color:var(--text-secondary);letter-spacing:.02em}.history-card-preview{font-size:.9rem;line-height:1.4;color:var(--text-secondary)}.history-load-more{margin-top:.75rem;width:100%;text-align:center;font-size:.82rem}.history-detail-date{margin:.8rem 0 0;color:var(--text-secondary);font-size:.88rem;letter-spacing:.02em}.history-detail-list{margin-top:.8rem;display:grid;gap:.6rem}.history-detail-item{background:var(--interactive);border:1px solid var(--border);border-radius:12px;padding:.7rem .8rem}.history-detail-item p{margin:0;color:var(--text-secondary);font-size:.82rem}.history-detail-item div{margin-top:.3rem;white-space:pre-wrap}.history-empty{color:var(--text-muted)}.page{position:fixed;inset:0;overflow:hidden;padding:max(.8rem,env(safe-area-inset-top)) .8rem max(.8rem,env(safe-area-inset-bottom));background:radial-gradient(ellipse 800px 500px at 25% 0%,var(--bg-glow),transparent 60%),var(--bg);color:var(--text)}.focus-shell{position:relative;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;width:min(760px,100%);height:100%;margin:0 auto;padding:1.05rem;border-radius:20px;background:var(--surface);border:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border-active) transparent}.focus-shell::-webkit-scrollbar{width:6px}.focus-shell::-webkit-scrollbar-track{background:transparent}.focus-shell::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:3px}.focus-shell::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.content-layer{position:relative;z-index:1;display:flex;flex-direction:column;min-height:100%}.hero-mark{position:absolute;width:min(740px,140vw);top:30%;left:50%;transform:translate(-50%,-50%);opacity:.05;pointer-events:none}.logo-button{margin:.05rem auto .85rem;padding:0;border:none;background:none;cursor:pointer}.logo{width:min(210px,44vw);object-fit:contain;opacity:.99;filter:drop-shadow(0 8px 16px var(--shadow-logo))}.logo-button:focus-visible,.menu-toggle:focus-visible,.menu-item:focus-visible,.auth-welcome:focus-visible,.review-edit-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.date{margin:.5rem 0 0;color:var(--text-secondary);font-size:.88rem;letter-spacing:.02em}h1{margin:.45rem 0 0;font-size:clamp(1.6rem,4.2vw,2.25rem);font-weight:560;line-height:1.16;letter-spacing:-.02em}.focus-input{margin-top:1rem;width:100%;min-height:180px;resize:none;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:clamp(1.08rem,2.7vw,1.28rem);line-height:1.58;padding:.25rem 0;border-bottom:1px solid var(--border-hover)}.focus-input::placeholder,.notes::placeholder{color:var(--text-muted)}.focus-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding-top:.8rem}.hint{color:var(--text-muted);font-size:.82rem}.arrow{border:1px solid var(--border-active);background:var(--interactive);color:var(--text);width:44px;height:44px;border-radius:999px;font-size:1.18rem;cursor:pointer}.arrow:hover{background:var(--interactive-hover)}.review-list{margin-top:1rem;display:grid;gap:.6rem}.review-item{position:relative;background:var(--interactive);border:1px solid var(--border);border-radius:12px;padding:.7rem .8rem}.review-edit-btn{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;background:none;color:var(--text-secondary);opacity:.6;cursor:pointer;border-radius:10px;transition:opacity .15s ease}.review-edit-btn:hover,.review-edit-btn:focus-visible{opacity:.9}@media(prefers-reduced-motion:reduce){.review-edit-btn{transition:none}}.review-item p{margin:0;color:var(--text-secondary);font-size:.82rem}.review-item div{margin-top:.3rem;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word}.empty{color:var(--text-muted)}.notes{margin-top:.75rem;width:100%;min-height:80px;resize:none;border:none;outline:none;border-bottom:1px solid var(--border-hover);background:transparent;color:var(--text);font:inherit;padding:.25rem 0}.review-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:.55rem;padding-top:.9rem}.action{border:1px solid var(--border-active);background:var(--interactive);color:var(--text);border-radius:10px;padding:.56rem .84rem;font:inherit;cursor:pointer}.action.primary{background:var(--accent-subtle);border-color:var(--accent-border);color:var(--accent)}.action:hover{background:var(--interactive-hover)}.action.primary:hover{background:var(--accent-hover)}@media(min-width:820px){.page{padding:max(1.5rem,env(safe-area-inset-top)) 1.5rem max(1.5rem,env(safe-area-inset-bottom))}.focus-shell{border-radius:24px;padding:1.4rem}.hero-mark{width:min(780px,120vw);top:32%}.focus-input{min-height:220px}}.auth-section{margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--border);min-height:2.6rem}.auth-user-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.auth-welcome{margin:0;padding:0;min-height:44px;display:inline-flex;align-items:center;background:none;border:none;font:inherit;font-size:.82rem;color:var(--text-secondary);letter-spacing:.01em;cursor:pointer;text-align:left}.font-size-toggle{font-weight:600;letter-spacing:.03em}.auth-welcome:hover{color:var(--text)}.menu-wrap{position:relative}.menu-toggle{border:1px solid var(--border-hover);background:var(--interactive);color:var(--text-secondary);width:44px;height:44px;border-radius:10px;font-size:1rem;line-height:1;cursor:pointer}.menu-toggle:hover{background:var(--interactive-hover)}.menu-dropdown{position:absolute;right:0;top:calc(100% + .35rem);min-width:160px;border-radius:12px;border:1px solid var(--border-hover);background:var(--surface-elevated);box-shadow:0 12px 24px var(--shadow-dropdown);overflow:hidden;z-index:30}.menu-item{width:100%;text-align:left;border:none;background:transparent;color:var(--text);font:inherit;font-size:.84rem;padding:.6rem .75rem;cursor:pointer}.menu-item+.menu-item{border-top:1px solid var(--border)}.menu-item:hover{background:var(--interactive-hover)}.auth-sign-in-btn{background:none;border:1px solid var(--border-hover);border-radius:10px;color:var(--text-secondary);font:inherit;font-size:.82rem;padding:.45rem .9rem;min-height:44px;cursor:pointer;letter-spacing:.02em}.auth-sign-in-btn:hover{background:var(--interactive-hover);color:var(--text)}.auth-modal-backdrop{position:fixed;inset:0;z-index:50;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:auth-fade-in .2s ease-out}@keyframes auth-fade-in{0%{opacity:0}to{opacity:1}}.auth-modal{position:relative;width:min(400px,100%);background:var(--surface);border:1px solid var(--border-hover);border-radius:16px;padding:2.5rem 2rem 2rem;text-align:center;animation:auth-slide-up .25s ease-out}@keyframes auth-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:.75rem;right:.75rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);font-size:1.4rem;cursor:pointer;border-radius:8px}.auth-modal-close:hover{background:var(--interactive-hover);color:var(--text)}.auth-modal-brand{margin:0 0 .25rem;font-size:1.4rem;letter-spacing:.04em;color:var(--text)}.auth-modal-tagline{margin:0 0 1.75rem;font-size:.85rem;font-style:italic;color:var(--accent);letter-spacing:.02em}.auth-modal-label{display:block;margin:0 0 .6rem;font-size:.85rem;color:var(--text-secondary);text-align:left}.auth-modal-input{width:100%;border:1px solid var(--border-hover);border-radius:10px;background:var(--interactive);color:var(--text);font:inherit;font-size:.95rem;padding:.65rem .8rem;outline:none}.auth-modal-input::placeholder{color:var(--text-muted)}.auth-modal-input:focus{border-color:var(--border-active);background:var(--interactive-hover)}.auth-modal-submit{width:100%;margin-top:.75rem;padding:.7rem;min-height:44px;border:none;border-radius:10px;background:var(--accent);color:#fff9f0;font:inherit;font-size:.9rem;letter-spacing:.02em;cursor:pointer}.auth-modal-submit:hover{filter:brightness(1.08)}.auth-modal-submit:disabled{opacity:.45;cursor:default;filter:none}.auth-modal .auth-error{margin:.6rem 0 0;font-size:.8rem;color:var(--error);text-align:left}.auth-modal-back{margin-top:.75rem;padding:0;min-height:44px;display:inline-flex;align-items:center;background:none;border:none;font:inherit;font-size:.78rem;color:var(--accent-secondary);cursor:pointer}.auth-modal-back:hover{color:var(--text)}.auth-otp-digits{display:flex;justify-content:center;gap:.45rem;margin:.25rem 0 0}.auth-otp-digit{width:2.8rem;height:3.2rem;border:1px solid var(--border-hover);border-radius:10px;background:var(--interactive);color:var(--text);font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1.35rem;text-align:center;outline:none;caret-color:transparent}.auth-otp-digit:focus{border-color:var(--accent);background:var(--interactive-hover)}.auth-otp-digit::selection{background:transparent}@media(prefers-reduced-motion:reduce){.auth-modal-backdrop,.auth-modal{animation:none}}.save-section{margin-top:1.1rem;padding-top:.85rem;border-top:1px solid var(--border)}.display-toggles{position:absolute;top:1.05rem;right:1.05rem;display:flex;gap:.35rem;z-index:10}@media(min-width:820px){.display-toggles{top:1.4rem;right:1.4rem}}.theme-toggle{font-size:1.1rem;line-height:1}html.light .logo{filter:brightness(.45) contrast(1.1) drop-shadow(0 8px 16px var(--shadow-logo))}html.light .hero-mark{filter:invert(.8)}
