:root{--c-amber: #F59E0B;--c-amber-light: #FBBF24;--c-amber-dark: #D97706;--c-amber-muted: rgba(245, 158, 11, .15);--c-amber-glow: rgba(245, 158, 11, .3);--c-bg-primary: #141210;--c-bg-secondary: #1C1916;--c-bg-tertiary: #242019;--c-bg-elevated: #2A2520;--c-bg-editor: #1A1714;--c-text-primary: #E8E0D4;--c-text-secondary: #B8AFA3;--c-text-muted: #7A7267;--c-text-disabled: #524D45;--c-text-inverse: #141210;--c-border-subtle: rgba(232, 224, 212, .08);--c-border-default: rgba(232, 224, 212, .12);--c-border-strong: rgba(232, 224, 212, .2);--c-border-focus: var(--c-amber);--c-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--c-shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--c-shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--c-shadow-glow: 0 0 20px var(--c-amber-muted);--c-radius-sm: 4px;--c-radius-md: 8px;--c-radius-lg: 12px;--c-radius-xl: 16px;--c-space-xs: 4px;--c-space-sm: 8px;--c-space-md: 16px;--c-space-lg: 24px;--c-space-xl: 32px;--c-space-2xl: 48px;--c-editor-width: 720px;--c-sidebar-width: 280px;--c-transition-fast: .12s ease;--c-transition-normal: .2s ease;--c-transition-slow: .35s ease;--c-z-sidebar: 100;--c-z-toolbar: 200;--c-z-dropdown: 300;--c-z-modal: 400;--c-z-toast: 500;--c-success: #22C55E;--c-warning: #F59E0B;--c-error: #EF4444;--c-info: #3B82F6}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--c-bg-primary);color:var(--c-text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,Georgia,Times New Roman,serif;font-weight:700;line-height:1.3;color:var(--c-text-primary)}code,pre,kbd{font-family:JetBrains Mono,Fira Code,Consolas,monospace}a{color:var(--c-amber);text-decoration:none;transition:color var(--c-transition-fast)}a:hover{color:var(--c-amber-light)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-border-default);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--c-border-strong)}::selection{background:var(--c-amber-muted);color:var(--c-text-primary)}:focus-visible{outline:2px solid var(--c-amber);outline-offset:2px}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;font-size:inherit}.chronicle-editor .ProseMirror{max-width:var(--c-editor-width);margin:0 auto;padding:var(--c-space-xl) var(--c-space-lg);min-height:calc(100vh - 160px);outline:none;color:var(--c-text-primary);font-size:1.0625rem;line-height:1.75;caret-color:var(--c-amber)}.chronicle-editor .ProseMirror>*+*{margin-top:.75em}.chronicle-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--c-text-muted);pointer-events:none;height:0;font-style:italic}.chronicle-editor .ProseMirror h1{font-size:2rem;margin-top:1.5em;margin-bottom:.5em}.chronicle-editor .ProseMirror h2{font-size:1.5rem;margin-top:1.25em;margin-bottom:.5em}.chronicle-editor .ProseMirror h3{font-size:1.25rem;margin-top:1em;margin-bottom:.5em}.chronicle-editor .ProseMirror ul,.chronicle-editor .ProseMirror ol{padding-left:1.5em}.chronicle-editor .ProseMirror li{margin-top:.25em}.chronicle-editor .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:0}.chronicle-editor .ProseMirror ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:.5em}.chronicle-editor .ProseMirror ul[data-type=taskList] li>label{flex-shrink:0;margin-top:.25em}.chronicle-editor .ProseMirror ul[data-type=taskList] li>label input[type=checkbox]{accent-color:var(--c-amber)}.chronicle-editor .ProseMirror blockquote{border-left:3px solid var(--c-amber);padding-left:1em;color:var(--c-text-secondary);font-style:italic}.chronicle-editor .ProseMirror code{background:var(--c-bg-tertiary);padding:.15em .4em;border-radius:var(--c-radius-sm);font-size:.875em;color:var(--c-amber-light)}.chronicle-editor .ProseMirror pre{background:var(--c-bg-tertiary);border:1px solid var(--c-border-subtle);border-radius:var(--c-radius-md);padding:var(--c-space-md);overflow-x:auto}.chronicle-editor .ProseMirror pre code{background:none;padding:0;border-radius:0;color:var(--c-text-primary);font-size:.875rem;line-height:1.6}.chronicle-editor .ProseMirror table{border-collapse:collapse;width:100%;margin:1em 0}.chronicle-editor .ProseMirror th,.chronicle-editor .ProseMirror td{border:1px solid var(--c-border-default);padding:.5em .75em;text-align:left}.chronicle-editor .ProseMirror th{background:var(--c-bg-tertiary);font-weight:600}.chronicle-editor .ProseMirror td{background:var(--c-bg-secondary)}.chronicle-editor .ProseMirror hr{border:none;border-top:1px solid var(--c-border-default);margin:2em 0}.chronicle-editor .ProseMirror img{max-width:100%;height:auto;border-radius:var(--c-radius-md)}.chronicle-editor .ProseMirror mark{background:var(--c-amber-muted);color:inherit;padding:.1em .2em;border-radius:2px}.ai-suggestion{color:var(--c-text-muted);border-bottom:1px dashed var(--c-amber);opacity:.6}.focus-mode .chronicle-sidebar,.focus-mode .chronicle-toolbar{opacity:0;pointer-events:none;transition:opacity var(--c-transition-slow)}.focus-mode:hover .chronicle-sidebar,.focus-mode:hover .chronicle-toolbar{opacity:1;pointer-events:auto}.typewriter-mode .ProseMirror{padding-bottom:50vh}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--c-transition-normal) ease forwards}.animate-slide-up{animation:slideUp var(--c-transition-normal) ease forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
