@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css";@import"https://fonts.cdnfonts.com/css/sf-mono";*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg-dark: #121212;--color-bg-alt-dark: #1E1E1E;--color-surface-dark: rgba(255, 255, 255, .05);--color-surface-hover-dark: rgba(255, 255, 255, .08);--color-surface-active-dark: rgba(255, 255, 255, .12);--color-text-dark: #E1E1E1;--color-text-secondary-dark: #A8A8A8;--color-text-tertiary-dark: #7F7F7F;--color-accent-dark: #82aaff;--color-accent-alt-dark: #c792ea;--color-cursor-dark: var(--color-accent-dark);--color-border-dark: rgba(255, 255, 255, .12);--color-recording-dark: #ff453a;--color-success-dark: #32d74b;--glass-bg-dark: rgba(30, 30, 30, .6);--glass-border-dark: rgba(255, 255, 255, .15);--glass-highlight-dark: rgba(255, 255, 255, .1);--glass-shadow-dark: rgba(0, 0, 0, .3);--glass-recording-bg-dark: rgba(28, 28, 30, .75);--glass-recording-border-dark: rgba(255, 255, 255, .15);--color-bg-light: #F7F7F7;--color-bg-alt-light: #EDEDED;--color-surface-light: #FFFFFF;--color-surface-hover-light: #F0F0F0;--color-surface-active-light: #EAEAEA;--color-text-light: #333333;--color-text-secondary-light: #666666;--color-text-tertiary-light: #999999;--color-accent-light: #007AFF;--color-accent-alt-light: #5856d6;--color-cursor-light: var(--color-accent-light);--color-border-light: #DCDCDC;--color-recording-light: #ff3b30;--color-success-light: #30d158;--glass-bg-light: rgba(255, 255, 255, .65);--glass-border-light: rgba(0, 0, 0, .07);--glass-highlight-light: var(--color-surface-active-light);--glass-shadow-light: rgba(0, 0, 0, .05);--glass-recording-bg-light: rgba(248, 248, 248, .75);--glass-recording-border-light: rgba(0, 0, 0, .1);--color-bg: var(--color-bg-dark);--color-bg-alt: var(--color-bg-alt-dark);--color-surface: var(--color-surface-dark);--color-surface-hover: var(--color-surface-hover-dark);--color-surface-active: var(--color-surface-active-dark);--color-text: var(--color-text-dark);--color-text-secondary: var(--color-text-secondary-dark);--color-text-tertiary: var(--color-text-tertiary-dark);--color-accent: var(--color-accent-dark);--color-accent-alt: var(--color-accent-alt-dark);--color-cursor: var(--color-cursor-dark);--color-border: var(--color-border-dark);--color-recording: var(--color-recording-dark);--color-success: var(--color-success-dark);--glass-bg: var(--glass-bg-dark);--glass-border: var(--glass-border-dark);--glass-highlight: var(--glass-highlight-dark);--glass-shadow: var(--glass-shadow-dark);--glass-recording-bg: var(--glass-recording-bg-dark);--glass-recording-border: var(--glass-recording-border-dark);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .4);--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .45s ease;--transition-tabs: .3s cubic-bezier(.4, 0, .2, 1);--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--font-mono: "SF Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--footer-height: 120px;--live-footer-height: 350px;--sidebar-width: 280px}body.light-mode{--color-bg: var(--color-bg-light);--color-bg-alt: var(--color-bg-alt-light);--color-surface: var(--color-surface-light);--color-surface-hover: var(--color-surface-hover-light);--color-surface-active: var(--color-surface-active-light);--color-text: var(--color-text-light);--color-text-secondary: var(--color-text-secondary-light);--color-text-tertiary: var(--color-text-tertiary-light);--color-accent: var(--color-accent-light);--color-accent-alt: var(--color-accent-alt-light);--color-cursor: var(--color-cursor-light);--color-border: var(--color-border-light);--color-recording: var(--color-recording-light);--color-success: var(--color-success-light);--glass-bg: var(--glass-bg-light);--glass-border: var(--glass-border-light);--glass-highlight: var(--glass-highlight-light);--glass-shadow: var(--glass-shadow-light);--glass-recording-bg: var(--glass-recording-bg-light);--glass-recording-border: var(--glass-recording-border-light);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 1px rgba(0,0,0,.03);--shadow-md: 0 2px 4px rgba(0, 0, 0, .05), 0 1px 3px rgba(0,0,0,.04);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .06), 0 2px 6px rgba(0,0,0,.05)}[contenteditable]{caret-color:var(--color-cursor)}[contenteditable][placeholder].placeholder-active{color:var(--color-text-tertiary);opacity:.8}html{height:100%;overflow:hidden}body{font-family:var(--font-primary);background-color:var(--color-bg);color:var(--color-text);line-height:1.65;height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;transition:background-color var(--transition-normal),color var(--transition-normal);margin:0}.app-container{display:flex;height:100%;width:100%;max-width:100%;overflow:hidden}.sidebar{width:var(--sidebar-width);background-color:var(--color-bg-alt);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;transition:all var(--transition-normal)}.sidebar-header{padding:16px 20px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.sidebar-header h2{font-size:18px;font-weight:600;color:var(--color-text)}.sidebar-actions{display:flex;gap:8px}.action-button-sidebar{background:var(--color-surface);border:1px solid var(--color-border);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:14px;cursor:pointer;transition:all var(--transition-fast)}.action-button-sidebar:hover{background:var(--color-surface-hover);color:var(--color-text);transform:scale(1.05)}.notes-list{list-style:none;padding:8px;margin:0;flex-grow:1;overflow-y:auto}.note-item{padding:12px 14px;border-radius:8px;cursor:pointer;transition:background-color var(--transition-fast);position:relative}.note-item:hover{background-color:var(--color-surface)}.note-item.active,body.light-mode .note-item.active{background-color:var(--color-accent);color:#fff}.note-item-title{font-weight:500;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px;color:var(--color-text);transition:color var(--transition-fast)}.note-item.active .note-item-title{color:#fff}.note-item-date{font-size:12px;color:var(--color-text-secondary);transition:color var(--transition-fast)}.note-item.active .note-item-date{color:#ffffffb3}.delete-note-btn{position:absolute;top:50%;right:10px;transform:translateY(-50%);width:28px;height:28px;border:none;background-color:var(--color-surface-hover);color:var(--color-text-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;opacity:0;visibility:hidden;transition:all var(--transition-fast)}.note-item:hover .delete-note-btn{opacity:1;visibility:visible}.note-item.active .delete-note-btn{background-color:#fff3;color:#fff}.delete-note-btn:hover{background-color:var(--color-recording);color:#fff}.main-content-wrapper{flex-grow:1;display:flex;flex-direction:column;overflow:hidden}.main-content{flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:padding-bottom var(--transition-slow) ease-in-out}.main-content:has(>.recording-interface.is-live){padding-bottom:var(--live-footer-height)}.note-area{flex:1;overflow:hidden;display:flex;flex-direction:column;background-color:var(--color-bg);padding:32px 0 0;transition:background-color var(--transition-normal);min-height:0}.note-header{display:flex;justify-content:space-between;align-items:center;padding:0 40px 16px;border-bottom:1px solid var(--color-border);margin-bottom:12px;transition:border-color var(--transition-normal)}.editor-title{font-size:22px;font-weight:600;outline:none;border:none;padding:0;margin:0 24px 0 0;flex-grow:1;color:var(--color-text);font-family:var(--font-primary);background-color:transparent}.note-header-controls{display:flex;align-items:center;gap:12px;flex-shrink:0}.tab-navigation-container{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:10px;padding:4px;display:inline-flex;box-shadow:var(--shadow-sm);transition:background-color var(--transition-normal),border-color var(--transition-normal)}.tab-navigation{display:flex;position:relative;border-radius:7px;overflow:hidden}.tab-button{background:transparent;border:none;padding:6px 16px;margin:0;font-size:13px;font-weight:500;color:var(--color-text-secondary);border-radius:6px;cursor:pointer;transition:color var(--transition-fast);position:relative;z-index:1;flex-shrink:0;font-family:var(--font-primary);letter-spacing:-.01em}.tab-button:hover,.tab-button.active{color:var(--color-text)}body.light-mode .tab-button{color:var(--color-text-secondary)}body.light-mode .tab-button:hover,body.light-mode .tab-button.active{color:var(--color-text)}.active-tab-indicator{position:absolute;top:0;left:0;width:0;height:100%;background-color:var(--glass-highlight);border-radius:6px;transition:left var(--transition-tabs),width var(--transition-tabs);z-index:0;box-shadow:0 .5px 1.5px #0000000a,0 0 0 .5px #00000005 inset}body.light-mode .active-tab-indicator{box-shadow:0 .5px 1.5px #0000000f,0 0 0 .5px #00000008 inset}.download-container{position:relative}.action-button-header{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:14px;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.action-button-header:hover{background:var(--color-surface-hover);color:var(--color-text);border-color:var(--glass-highlight)}.action-button-header:disabled{cursor:not-allowed;opacity:.6;background:var(--color-surface)}.action-button-header:disabled:hover{background:var(--color-surface);color:var(--color-text-secondary);border-color:var(--glass-border)}.action-button-header.recording{background-color:var(--color-recording);border-color:var(--color-recording);color:#fff}.action-button-header.recording:hover{background-color:var(--color-recording);border-color:var(--color-recording);filter:brightness(.9)}.download-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--glass-bg-dark);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:8px;padding:6px;width:160px;box-shadow:var(--shadow-md);z-index:100;display:flex;flex-direction:column;gap:4px;opacity:0;visibility:hidden;transform:translateY(10px) scale(.95);transform-origin:top right;transition:opacity .15s ease-out,transform .15s ease-out,visibility .15s ease-out}body.light-mode .download-menu{background:var(--glass-bg-light)}.download-menu.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.download-option{width:100%;background:transparent;border:none;padding:8px 12px;font-size:14px;font-weight:500;color:var(--color-text);border-radius:6px;cursor:pointer;transition:background-color var(--transition-fast);text-align:left;font-family:var(--font-primary)}.download-option:hover{background-color:var(--color-surface-hover)}.note-content-wrapper{flex:1;overflow-y:auto;padding:0 40px 40px;position:relative;min-height:0}.note-content{outline:none;min-height:100px;font-size:16px;line-height:1.7;color:var(--color-text);padding:12px 0;font-family:var(--font-primary);letter-spacing:-.01em;opacity:0;transform:scale(.985) translateY(8px);transition:opacity var(--transition-tabs),transform var(--transition-tabs);display:none;will-change:opacity,transform;white-space:pre-wrap;word-wrap:break-word}.note-content.active{opacity:1;transform:scale(1) translateY(0);display:block}.note-content h1,.note-content h2,.note-content h3{margin-bottom:.75em;margin-top:1.25em;font-weight:600;color:var(--color-text)}.note-content h1{font-size:1.8em}.note-content h2{font-size:1.5em}.note-content h3{font-size:1.25em}.note-content p{margin-bottom:1em}.note-content ul,.note-content ol{margin-bottom:1em;padding-left:1.5em}.note-content li{margin-bottom:.5em}.note-content pre{background-color:var(--color-bg-alt);padding:1em;border-radius:8px;margin-bottom:1em;font-size:.9em;overflow-x:auto;transition:background-color var(--transition-normal);font-family:var(--font-mono)}.note-content code{font-family:var(--font-mono);background-color:var(--color-bg-alt);padding:.2em .4em;border-radius:4px;font-size:.9em}.note-content pre code{background-color:transparent;padding:0;border-radius:0}.recording-interface{height:var(--footer-height);width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:12px 20px;background-color:transparent;border-top:1px solid transparent;flex-shrink:0;transition:opacity .3s ease-out,transform .35s ease-out,background-color var(--transition-slow) ease-in-out,height var(--transition-slow) ease-in-out;z-index:10}.recording-interface.is-live{position:fixed;bottom:0;left:var(--sidebar-width);right:0;height:var(--live-footer-height);z-index:1000;background-color:var(--glass-recording-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--glass-recording-border);box-shadow:0 -4px 20px var(--glass-shadow);justify-content:space-between;padding-top:20px;padding-bottom:30px}.status-indicator{margin-bottom:16px}.recording-interface.is-live .status-indicator{display:none}.status-text{font-size:14px;color:var(--color-text-tertiary);text-align:center;transition:color var(--transition-normal);font-family:var(--font-primary)}.live-recording-title,#liveWaveformCanvas,.live-recording-timer{opacity:0;transform:translateY(15px);transition:opacity .3s ease-out .1s,transform .35s ease-out .1s}.recording-interface.is-live .live-recording-title,.recording-interface.is-live #liveWaveformCanvas,.recording-interface.is-live .live-recording-timer{opacity:1;transform:translateY(0)}.live-recording-title{font-size:17px;color:var(--color-text);margin-bottom:12px;text-align:center;font-weight:500;font-family:var(--font-primary)}#liveWaveformCanvas{width:100%;max-width:340px;height:70px;margin-bottom:18px;border-radius:4px}.live-recording-timer{font-family:var(--font-mono);font-size:44px;font-weight:400;color:var(--color-text);margin-bottom:22px;text-align:center;letter-spacing:.01em}.recording-controls{display:flex;align-items:center;justify-content:center;position:relative}.record-button{position:relative;width:72px;height:72px;border-radius:50%;border:none;outline:none;background:none;cursor:pointer;z-index:1}.record-button-inner{position:relative;width:100%;height:100%;border-radius:50%;background:var(--glass-bg);border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;color:var(--color-text);font-size:24px;z-index:2;box-shadow:var(--shadow-md);transition:all var(--transition-normal);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}.record-button:hover .record-button-inner{transform:scale(1.08);background-color:var(--color-surface-hover);border-color:var(--glass-highlight)}.record-button.recording .record-button-inner{background-color:var(--color-recording);border:1px solid transparent;color:#fff}body.light-mode .record-button.recording .record-button-inner{color:#fff}.record-button.recording:hover .record-button-inner{background-color:var(--color-recording);filter:brightness(.9)}.recording-interface.is-live .record-button.recording .record-button-inner i.fa-stop{display:inline-block;font-size:20px}.recording-interface.is-live .record-button.recording .record-button-inner i.fa-microphone{display:none}.record-waves{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200px;height:200px;z-index:1;opacity:0;transition:opacity var(--transition-normal);pointer-events:none}.record-button.recording .record-waves{opacity:1}.recording-interface.is-live .record-waves{display:none}.wave{fill:none;stroke:var(--color-recording);stroke-width:1.5px;opacity:0;transform-origin:center}.record-button.recording .wave1{animation:wave 2s infinite ease-out}.record-button.recording .wave2{animation:wave 2s infinite ease-out;animation-delay:.4s}.record-button.recording .wave3{animation:wave 2s infinite ease-out;animation-delay:.8s}@keyframes wave{0%{transform:scale(.4);opacity:.8;stroke-width:2px}to{transform:scale(1.8);opacity:0;stroke-width:.5px}}.record-text{position:absolute;bottom:-30px;left:50%;transform:translate(-50%);font-size:12px;white-space:nowrap;color:var(--color-text-tertiary);opacity:0;transition:opacity var(--transition-fast);font-family:var(--font-primary)}.record-button:hover .record-text{opacity:1}.recording-interface.is-live .record-text{display:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-bg-alt);border-radius:5px}::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:5px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--glass-highlight)}.debug-panel{background-color:#000000f2;color:#3f3;font-family:var(--font-mono);font-size:12px;padding:12px;position:fixed;bottom:0;left:0;max-height:200px;width:100%;z-index:2000;overflow-y:auto;display:none}.debug-panel.visible{display:block}.hidden{display:none!important}@media(max-width:768px){.sidebar{position:absolute;left:0;top:0;bottom:0;transform:translate(-100%);z-index:2000;box-shadow:var(--shadow-lg)}.sidebar.is-open{transform:translate(0)}.main-content-wrapper{width:100%}.note-area{padding:20px 0 0}.note-header{padding:0 20px 12px;flex-direction:column;align-items:stretch;gap:12px}.editor-title{padding:0;font-size:20px;margin-bottom:0;margin-right:0;text-align:left}.note-header-controls{justify-content:space-between;width:100%}.tab-navigation-container{width:auto;flex-grow:1;margin-right:12px}.tab-navigation{width:100%}.tab-button{flex-grow:1;text-align:center}.note-content-wrapper{padding:0 20px 20px}.recording-interface.is-live{left:0;padding-left:15px;padding-right:15px}#liveWaveformCanvas{max-width:calc(100% - 30px);height:60px}.live-recording-timer{font-size:36px}}
