:root{--hue-primary: #e799b0;--hue-accent: #f7c297;--hue-secondary: var(--hue-accent);--hue-success: #b4e7ce;--hue-error: #f5a3b7;--hue-danger: var(--hue-error);--hue-warning: #f7c297;--hue-primary-rgb: 231, 153, 176;--hue-primary-faint: rgba(var(--hue-primary-rgb), .2);--bg-app: #fff8fa;--bg-panel: #fef0f5;--bg-panel-alt: var(--bg-panel);--bg-overlay: #ffffff;--bg-hover: #f3f4f6;--hover-bg: var(--bg-hover);--background-hover: var(--bg-hover);--background-alt: var(--bg-panel);--bg-input: var(--bg-panel);--bg-button: var(--bg-panel);--bg-secondary: var(--bg-panel);--bg-selection: var(--bg-hover);--text-body: #5a4e54;--text-normal: var(--text-body);--text-heading: var(--text-body);--text-muted: #8b7a82;--text-secondary: var(--text-muted);--text-faint: #b5a3ab;--border: #e5e7eb;--border-light: var(--border);--border-focus: #e799b0;--highlight: #fef08a;--status-success-bg: #d4edda;--status-warning-bg: #fef3cd;--status-error-bg: #f8d7da;--status-info-bg: var(--bg-hover);--status-danger-bg: var(--status-error-bg);--status-warning: var(--hue-warning);--status-error: var(--hue-error);--state-warning: var(--status-warning-bg);--state-error: var(--status-error-bg);--editor-gutter: var(--bg-panel);--editor-gutter-text: var(--text-muted);--font-mono: "Courier New", Courier, monospace;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--app-viewport-height: 100vh}*{box-sizing:border-box}html{touch-action:pan-x pan-y;overflow-x:hidden}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-body);background-color:var(--bg-app);overscroll-behavior:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overflow-x:hidden}code{font-family:Courier New,Courier,monospace}button{font-family:inherit}button:hover{opacity:.9}button:active{transform:scale(.98)}textarea{font-family:inherit;field-sizing:content}textarea:focus{outline:2px solid var(--hue-primary);outline-offset:2px}.scrollable,[style*="overflow-y: auto"],[style*="overflowY: auto"]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}body{font-size:16px;line-height:1.5}.markdown-content{font-size:16px;line-height:1.6}.markdown-content h1{font-size:1.75em;font-weight:700;margin:.5em 0 .3em;color:var(--text-body)}.markdown-content h2{font-size:1.4em;font-weight:600;margin:.5em 0 .3em;color:var(--text-body)}.markdown-content h3{font-size:1.15em;font-weight:600;margin:.4em 0 .2em;color:var(--text-body)}.markdown-content p{margin:.75em 0}.markdown-content ul,.markdown-content ol{margin:.5em 0;padding-left:1.5em}.markdown-content li{margin:.25em 0}.markdown-content li.task-list-item{list-style-type:none;margin-left:-1.5em;display:flex;align-items:flex-start;gap:.25em}.markdown-content li.task-list-item>input[type=checkbox]{margin-top:.3em}.markdown-content li.task-list-item:has(input:checked)>*{text-decoration:line-through;opacity:.7}.markdown-content li.task-list-item:has(input:checked)>input{text-decoration:none;opacity:1}.markdown-content pre{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:6px;padding:12px;overflow-x:auto;white-space:pre;font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.4;margin:.5em 0}.markdown-content code{font-family:Courier New,Courier,monospace;font-size:.9em}.markdown-content :not(pre)>code{background-color:var(--bg-panel);padding:.15em .4em;border-radius:4px;font-size:.875em}.markdown-content table{border-collapse:collapse;width:100%;margin:.5em 0}.markdown-content th,.markdown-content td{border:1px solid var(--border);padding:8px 12px;text-align:left}.markdown-content th{background-color:var(--bg-panel);font-weight:600}.markdown-content tr:hover{background-color:var(--bg-hover)}.markdown-content ruby{ruby-position:over}.markdown-content rt{font-size:.55em;color:var(--text-muted);font-style:normal;font-weight:400;opacity:.85}code,pre,.code-block,.cm-editor{font-size:14px;line-height:1.4}.meta-text,.block-meta,.validation-error,.schema-label,.tag-text{font-size:12px;line-height:1.3}.tag-item .tag-delete-btn,.tag-item:hover .tag-colon{display:none}.tag-item:hover .tag-delete-btn{display:inline}.block-container{position:relative}.block-gutter{-webkit-user-select:none;user-select:none}.block-content{word-wrap:break-word;overflow-wrap:break-word}.markdown-content{background:transparent;border:1px solid transparent;padding:0 8px}.code-block-container{position:relative;background-color:var(--bg-panel);border:1px solid var(--border);border-radius:6px;overflow:hidden}.code-block-container .run-button{opacity:.6;transition:opacity .15s ease}.code-block-container:hover .run-button,.code-block-container:focus-within .run-button,.code-block-container .run-button:hover{opacity:1}.image-block-container .resize-handle{opacity:0;transition:opacity .15s ease}.image-block-container:hover .resize-handle{opacity:.6}.image-block-container .resize-handle:hover{opacity:1!important}.pdf-viewer{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg-panel);width:100%}.pdf-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--border);background:var(--bg-panel);gap:8px;flex-wrap:wrap}.pdf-viewer-nav{display:flex;align-items:center;gap:4px}.pdf-viewer-nav button{background:none;border:1px solid var(--border);border-radius:4px;padding:4px 6px;cursor:pointer;color:var(--text-body);display:flex;align-items:center}.pdf-viewer-nav button:disabled{opacity:.3;cursor:default}.pdf-viewer-page-info{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-muted)}.pdf-viewer-page-input{width:40px;text-align:center;border:1px solid var(--border);border-radius:4px;padding:2px 4px;font-size:13px;background:var(--bg-base);color:var(--text-body)}.pdf-viewer-zoom{display:flex;align-items:center;gap:4px}.pdf-viewer-zoom button{background:none;border:1px solid var(--border);border-radius:4px;width:28px;height:28px;cursor:pointer;font-size:16px;color:var(--text-body);display:flex;align-items:center;justify-content:center}.pdf-viewer-zoom-label{font-size:12px;color:var(--text-muted);min-width:40px;text-align:center}.pdf-viewer-colors{display:flex;align-items:center;gap:4px}.pdf-color-swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:border-color .15s}.pdf-color-swatch.active{border-color:var(--text-body);box-shadow:0 0 0 1px var(--bg-panel)}.pdf-viewer-highlight-count{font-size:11px;color:var(--text-muted);background:var(--bg-base);padding:1px 6px;border-radius:10px}.pdf-viewer-page-container{overflow:auto;display:flex;flex-direction:column;align-items:center;background:#525659;position:relative}.pdf-viewer-page-container .react-pdf__Page{box-shadow:0 2px 8px #0003}.pdf-viewer-loading,.pdf-viewer-error{padding:40px;text-align:center;color:var(--text-muted);font-size:14px}.pdf-highlight{transition:opacity .15s;z-index:2}.pdf-highlight:hover{opacity:.5!important}.pdf-highlight.selected{outline:2px solid var(--hue-primary);outline-offset:1px}.pdf-floating-highlight-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--hue-primary);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;box-shadow:0 2px 12px #00000040;animation:fadeIn .12s ease-out;white-space:nowrap;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pdf-floating-highlight-btn:active{transform:scale(.94)}.pdf-highlight-popover{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:12px;width:280px;max-width:90%;box-shadow:0 4px 16px #00000026;z-index:10}.pdf-highlight-text{font-size:12px;color:var(--text-muted);font-style:italic;margin-bottom:8px;max-height:60px;overflow:hidden;text-overflow:ellipsis}.pdf-highlight-note-input{width:100%;border:1px solid var(--border);border-radius:4px;padding:6px 8px;font-size:13px;background:var(--bg-base);color:var(--text-body);resize:vertical;font-family:inherit}.pdf-highlight-actions{display:flex;justify-content:space-between;margin-top:8px;gap:8px}.pdf-highlight-delete{background:none;border:none;color:#d32f2f;font-size:12px;cursor:pointer;padding:4px 8px}.pdf-highlight-close{background:var(--hue-primary);color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;padding:4px 12px}.pdf-viewer-toolbar-actions{display:flex;align-items:center;gap:4px}.pdf-toolbar-expand-btn{background:none;border:1px solid var(--border);border-radius:4px;width:28px;height:28px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:all .15s}.pdf-toolbar-expand-btn:hover{color:var(--text-body);border-color:var(--text-muted)}.pdf-zen-overlay .pdf-viewer{border:none;border-radius:0;flex:1;display:flex;flex-direction:column}.pdf-zen-overlay .pdf-viewer-page-container{flex:1}.pdf-zen-layout{display:flex;flex:1;min-height:0;overflow:hidden}.pdf-zen-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.pdf-zen-sidebar{width:300px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;background:var(--bg-panel, var(--bg-app))}.pdf-zen-sidebar-header{padding:12px 16px;font-size:13px;font-weight:600;color:var(--text-body);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;flex-shrink:0}.pdf-zen-sidebar-count{font-size:11px;font-weight:500;color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 12%,transparent);padding:1px 7px;border-radius:10px}.pdf-zen-sidebar-content{flex:1;overflow-y:auto;padding:8px 12px}@media(max-width:900px){.pdf-zen-sidebar{display:none}}@media(max-width:768px){.pdf-viewer-toolbar{padding:4px 6px;gap:4px}.pdf-viewer-zoom-label{display:none}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes contextMenuIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.mobile-bottom-nav-glass{position:relative;background:#fff8fa6b;backdrop-filter:blur(40px) saturate(200%);-webkit-backdrop-filter:blur(40px) saturate(200%);box-shadow:0 8px 32px #00000014,0 1px 4px #0000000a,inset 0 1px #ffffff8c,inset 0 -1px #fff3;transition:opacity .25s ease,transform .25s ease,height .4s cubic-bezier(.34,1,.64,1),border-radius .4s cubic-bezier(.34,1,.64,1)}.mobile-bottom-nav-glass:before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 20%,rgba(255,255,255,.85) 50%,rgba(255,255,255,.6) 80%,transparent 100%);border-radius:1px;pointer-events:none;z-index:1}.mobile-bottom-nav-glass:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,transparent 100%);border-radius:inherit;pointer-events:none;z-index:0}.mobile-bottom-nav-glass:active{transform:scale(1)!important}.mobile-fab-glass{position:relative;background:#fff8faa6;backdrop-filter:blur(40px) saturate(200%);-webkit-backdrop-filter:blur(40px) saturate(200%);box-shadow:0 4px 20px #0000001a,0 1px 3px #0000000f,inset 0 1px #ffffff80}.mobile-fab-glass:before{content:"";position:absolute;top:1px;left:15%;right:15%;height:40%;background:linear-gradient(180deg,rgba(255,255,255,.35) 0%,transparent 100%);border-radius:50%;pointer-events:none}.mobile-search-circle-glass{position:relative;background:#fff8fa8c;backdrop-filter:blur(40px) saturate(200%);-webkit-backdrop-filter:blur(40px) saturate(200%);box-shadow:0 8px 32px #00000014,0 1px 4px #0000000a,inset 0 1px #ffffff80;transition:width .4s cubic-bezier(.34,1,.64,1),height .4s cubic-bezier(.34,1,.64,1)}.mobile-search-circle-glass:before{content:"";position:absolute;top:1px;left:15%;right:15%;height:40%;background:linear-gradient(180deg,rgba(255,255,255,.35) 0%,transparent 100%);border-radius:50%;pointer-events:none}.mobile-search-circle-glass:active{transform:scale(.94)}.zen-format-bar-glass{position:relative;background:#fff8fa6b;backdrop-filter:blur(40px) saturate(200%);-webkit-backdrop-filter:blur(40px) saturate(200%);box-shadow:0 8px 32px #00000014,0 1px 4px #0000000a,inset 0 1px #ffffff8c,inset 0 -1px #fff3}.zen-format-pill:active{transform:scale(.93)!important;background:#ffffff59!important;box-shadow:0 0 2px #0000000f,inset 0 1px #ffffff4d!important}.zen-format-bar-glass:before{content:"";position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 20%,rgba(255,255,255,.85) 50%,rgba(255,255,255,.6) 80%,transparent 100%);border-radius:1px;pointer-events:none;z-index:1}.zen-format-bar-glass:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,transparent 100%);border-radius:inherit;pointer-events:none;z-index:0}.mobile-header-glass{background:#fff8fabf;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.35);box-shadow:0 1px 8px #0000000a}.toast-glass{background:#fff8fab3;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 16px #0000001a,inset 0 1px #ffffff80;border-radius:14px}
