:root{--gemini-bg:#f8fafc;--gemini-surface:#fff;--gemini-border:#e2e8f0;--gemini-text:#0f172a;--gemini-text-muted:#64748b;--gemini-text-subtle:#94a3b8;--gemini-primary:#6366f1;--gemini-primary-hover:#4f46e5;--gemini-primary-soft:#eef2ff;--gemini-success:#10b981;--gemini-radius-sm:6px;--gemini-radius-md:8px;--gemini-radius-lg:12px;--gemini-shadow-sm:0 1px 3px #00000005;--gemini-font-mono:"Fira Code", monospace}.icon-muted{color:var(--gemini-text-muted)}.icon-subtle{color:var(--gemini-text-subtle)}.icon-primary{color:var(--gemini-primary)}.icon-faint{color:#cbd5e1}.chevron-rotate-90{transform:rotate(90deg)}.export-chevron{margin-left:4px}.app-layout{background-color:var(--gemini-bg);width:100%;height:100vh;display:flex;overflow:hidden}.main-content{flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden}.dashboard-main{background-color:var(--gemini-bg);flex:1;overflow-y:auto}.page-container{max-width:1200px;margin:0 auto;padding:24px 32px}.sidebar{background-color:var(--gemini-surface);border-right:1px solid var(--gemini-border);flex-direction:column;flex-shrink:0;width:260px;height:100%;transition:width .2s;display:flex;overflow:hidden}.sidebar.collapsed{width:72px}.sidebar.collapsed .sidebar-header{flex-direction:column;align-items:center;gap:8px;padding:16px 12px 12px}.sidebar.collapsed .logo{justify-content:center;width:100%}.sidebar.collapsed .logo-text{display:none}.sidebar.collapsed .sidebar-cta{padding:0 12px 12px}.sidebar.collapsed .new-diagram-btn{padding:10px}.sidebar.collapsed .sidebar-nav{padding:0 8px}.sidebar.collapsed .sidebar-nav-item{justify-content:center;padding:10px}.sidebar.collapsed .sidebar-footer{padding:12px 8px}.sidebar.collapsed .sidebar-footer-links{flex-direction:column;align-items:center;gap:4px}.sidebar.collapsed .sidebar-footer-link{justify-content:center;width:100%;padding:8px}.sidebar.collapsed .pro-tip-card{flex-direction:column;align-items:center;padding:12px 8px;display:flex}.sidebar.collapsed .pro-tip-header{margin-bottom:0}.sidebar.collapsed .pro-tip-action .sidebar-label,.sidebar.collapsed .pro-tip-action svg,.sidebar.collapsed .sidebar-note{display:none}.sidebar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar.collapsed .sidebar-label{display:none}.mr-2{margin-right:8px}.sidebar-header{justify-content:space-between;align-items:flex-start;padding:20px 24px 12px;display:flex}.sidebar-header-compact{padding:24px}.logo{align-items:center;gap:12px;display:flex}.logo-icon{background-color:var(--gemini-primary);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;font-weight:600;display:flex}.logo-text h2{color:var(--gemini-text);margin:0;font-size:14px;font-weight:600}.logo-text span{color:var(--gemini-text-muted);font-size:12px}.icon-btn{cursor:pointer;color:var(--gemini-text-muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.icon-btn:hover{background-color:#f1f5f9}.sidebar-cta{padding:0 16px 16px}.sidebar-content{flex:1;padding:0 12px;overflow-y:auto}.sidebar-section{margin-bottom:24px}.section-title{color:var(--gemini-text-subtle);letter-spacing:.5px;text-transform:uppercase;align-items:center;margin-bottom:12px;padding-left:8px;font-size:11px;font-weight:600;display:flex}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.sidebar-nav-item{border-radius:var(--gemini-radius-md);color:var(--gemini-text-muted);align-items:center;gap:12px;padding:8px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.sidebar-nav-item:hover{color:var(--gemini-text);background-color:#f8fafc}.sidebar-nav-item.active{color:var(--gemini-primary);background-color:#f1f5f9}.sidebar-nav-item .nav-icon{color:var(--gemini-text-subtle)}.sidebar-nav-item.active .nav-icon{color:var(--gemini-primary)}.sidebar-note{padding:0 16px 12px}.sidebar-note-title{color:var(--gemini-text);align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.sidebar-note p{color:var(--gemini-text-muted);margin:4px 0 0;font-size:12px;line-height:1.5}.sidebar-footer{border-top:1px solid var(--gemini-border);padding:16px}.sidebar-footer-links{align-items:center;gap:24px;display:flex}.sidebar-footer-link{color:var(--gemini-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:14px;display:flex}.sidebar-footer-link:hover{color:var(--gemini-text)}.dropdown-selector,.nav-item{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-sm);color:var(--gemini-text);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.nav-item{border:none;padding-left:8px;padding-right:8px;text-decoration:none}.nav-item:hover{background-color:#f8fafc}.appearance-container{flex-direction:column;gap:8px;padding:0 8px;display:flex}.appearance-label{color:#475569;font-size:13px;font-weight:500}.pro-tip-card{background-color:var(--gemini-surface);border-radius:var(--gemini-radius-md);border:1px solid var(--gemini-border);box-shadow:var(--gemini-shadow-sm);margin-bottom:16px;padding:16px}.pro-tip-header{color:var(--gemini-text);align-items:center;gap:6px;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.pro-tip-card p{color:var(--gemini-text-muted);margin:0 0 12px;font-size:12px;line-height:1.5}.browse-templates-btn,.pro-tip-action{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-sm);color:var(--gemini-text);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:4px;width:100%;padding:8px 12px;font-size:12px;font-weight:500;text-decoration:none;display:flex}.browse-templates-btn:hover,.pro-tip-action:hover{background-color:#f8fafc}.user-profile{cursor:pointer;border-radius:var(--gemini-radius-sm);align-items:center;gap:8px;padding:8px;display:flex}.user-profile:hover{background-color:#f1f5f9}.user-avatar{border-radius:var(--gemini-radius-md);width:24px;height:24px;color:var(--gemini-text);background-color:#f1f5f9;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.user-name{color:var(--gemini-text);font-size:13px;font-weight:500}.pro-badge{background-color:var(--gemini-primary-soft);color:var(--gemini-primary);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.btn{border-radius:var(--gemini-radius-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--gemini-primary);color:#fff}.btn-primary:hover{background-color:var(--gemini-primary-hover)}.new-diagram-btn{box-sizing:border-box;border-radius:var(--gemini-radius-md);color:#fff;background-color:var(--gemini-primary);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;line-height:1;text-decoration:none;transition:background-color .2s;display:flex}.new-diagram-btn:hover{background-color:var(--gemini-primary-hover);color:#fff}.btn-secondary{background-color:var(--gemini-surface);color:var(--gemini-text);border-color:var(--gemini-border);box-shadow:var(--gemini-shadow-sm)}.btn-secondary:hover{background-color:#f8fafc}.btn-icon-only{background-color:var(--gemini-surface);color:#475569;border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-sm);cursor:pointer;justify-content:center;align-items:center;padding:8px;display:flex}.btn-icon-only:hover{background-color:#f8fafc}.btn-ghost{color:var(--gemini-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:500}.btn-ghost:hover{color:var(--gemini-primary-hover)}.topbar{background-color:var(--gemini-surface);border-bottom:1px solid var(--gemini-border);flex-shrink:0;justify-content:space-between;align-items:center;height:72px;padding:16px 24px;display:flex}.topbar-left{align-items:center;gap:16px;display:flex}.title-area{flex-direction:column;display:flex}.title-row{align-items:center;gap:8px;display:flex}.title-row h1{color:var(--gemini-text);margin:0;font-size:18px;font-weight:600}.saved-status{color:var(--gemini-primary);align-items:center;gap:4px;margin-left:8px;padding:2px 6px;font-size:12px;font-weight:500;display:flex}.subtitle{color:var(--gemini-text-muted);margin-top:2px;font-size:13px}.topbar-right{align-items:center;gap:12px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-title{color:var(--gemini-text);margin:0;font-size:24px;font-weight:700}.page-subtitle{color:var(--gemini-text-muted);margin:4px 0 0;font-size:14px}.page-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.toolbar-row{align-items:center;gap:12px;margin-top:24px;display:flex}.search-input-wrapper{flex:1;position:relative}.search-input-icon{color:var(--gemini-text-subtle);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);background:var(--gemini-surface);width:100%;color:var(--gemini-text);box-shadow:var(--gemini-shadow-sm);padding:10px 16px 10px 40px;font-size:14px}.search-input::placeholder{color:var(--gemini-text-subtle)}.search-input:focus{border-color:#a5b4fc;outline:none;box-shadow:0 0 0 3px #6366f11a}.filter-btn{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);color:var(--gemini-text);background:var(--gemini-surface);cursor:pointer;box-shadow:var(--gemini-shadow-sm);white-space:nowrap;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:flex}.filter-btn:hover{background-color:#f8fafc}.view-toggle{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);background:var(--gemini-surface);box-shadow:var(--gemini-shadow-sm);display:flex;overflow:hidden}.view-toggle-btn{cursor:pointer;color:var(--gemini-text-subtle);background:0 0;border:none;align-items:center;padding:10px;display:flex}.view-toggle-btn:hover{color:var(--gemini-text-muted)}.view-toggle-btn.active{color:var(--gemini-text);background-color:#f1f5f9}.content-section{margin-top:32px}.section-heading{color:var(--gemini-text);margin:0;font-size:14px;font-weight:600}.section-heading-row{justify-content:space-between;align-items:center;display:flex}.chip-row{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.chip{cursor:pointer;color:var(--gemini-text-muted);background:#f1f5f9;border:none;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:500;transition:background-color .15s,color .15s}.chip:hover{background:#e2e8f0}.chip.active{background:var(--gemini-primary);color:#fff}.card-grid{grid-template-columns:repeat(1,1fr);gap:16px;margin-top:16px;display:grid}@media (width>=640px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.card-grid{grid-template-columns:repeat(4,1fr)}}.folder-row{gap:12px;margin-top:12px;padding-bottom:8px;display:flex;overflow-x:auto}.card{background:var(--gemini-surface);border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-lg);box-shadow:var(--gemini-shadow-sm);overflow:hidden}.diagram-card{color:inherit;flex-direction:column;text-decoration:none;transition:box-shadow .15s;display:flex}.diagram-card:hover{box-shadow:0 4px 12px #0000000f}.diagram-card-preview{background:#f8fafc;height:140px;padding:12px;position:relative;overflow:hidden}.diagram-card-body{flex-direction:column;flex:1;padding:16px;display:flex}.diagram-card-title-row{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.diagram-card-title{color:var(--gemini-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:600;overflow:hidden}.diagram-card-meta{color:var(--gemini-text-muted);margin:4px 0 0;font-size:12px}.diagram-card-footer{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.diagram-card-actions{align-items:center;gap:4px;display:flex}.folder-card{flex:0 0 200px;align-items:center;gap:12px;width:200px;max-width:200px;padding:16px;display:flex}.folder-card-icon{border-radius:var(--gemini-radius-md);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.folder-card-info{flex:1;min-width:0}.folder-card-name{color:var(--gemini-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.folder-card-count{color:var(--gemini-text-muted);font-size:12px}.new-folder-card{border:2px dashed var(--gemini-border);background:var(--gemini-surface);border-radius:var(--gemini-radius-lg);width:200px;max-width:200px;color:var(--gemini-text-muted);cursor:pointer;flex:0 0 200px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:14px;font-weight:500;display:flex}.new-folder-card:hover{color:var(--gemini-primary);border-color:#a5b4fc}.create-folder-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.create-folder-dialog{background:var(--gemini-surface);border-radius:var(--gemini-radius-lg);width:min(420px,100%);overflow:hidden;box-shadow:0 24px 48px #0f172a2e,0 0 0 1px #e2e8f0cc}.create-folder-header{justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 0;display:flex}.create-folder-header h2{color:var(--gemini-text);margin:0;font-size:16px;font-weight:600}.create-folder-form{padding:16px}.create-folder-input{box-sizing:border-box;border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);background:var(--gemini-surface);width:100%;color:var(--gemini-text);box-shadow:var(--gemini-shadow-sm);padding:10px 12px;font-size:14px}.create-folder-input::placeholder{color:var(--gemini-text-subtle)}.create-folder-input:focus{border-color:#a5b4fc;outline:none;box-shadow:0 0 0 3px #6366f11a}.create-folder-input--error{border-color:#f87171}.create-folder-input--error:focus{box-shadow:0 0 0 3px #f8717126}.create-folder-error{color:#dc2626;margin:8px 0 0;font-size:13px}.create-folder-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.template-card{flex-direction:column;display:flex}.template-card-preview{background:#f8fafc;height:150px;padding:16px;position:relative;overflow:hidden}.template-card-icon{z-index:1;border-radius:var(--gemini-radius-md);justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:12px;left:12px}.template-card-body{flex-direction:column;flex:1;padding:16px;display:flex}.template-card-title{color:var(--gemini-text);margin:0;font-size:14px;font-weight:600}.template-card-desc{color:var(--gemini-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.template-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:16px;display:flex}.template-use-btn{text-align:center;border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);color:var(--gemini-text);flex:1;padding:8px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s}.template-use-btn:hover{background-color:#f8fafc}.badge{border-radius:var(--gemini-radius-sm);padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.badge-flowchart{color:#6d28d9;background:#f5f3ff}.badge-journey{color:#be185d;background:#fdf2f8}.badge-sequence{color:#1d4ed8;background:#eff6ff}.badge-er{color:#0e7490;background:#ecfeff}.badge-gantt{color:#c2410c;background:#fff7ed}.badge-class{color:#4338ca;background:#eef2ff}.badge-requirement{color:#3730a3;background:#eef2ff}.badge-c4{color:#334155;background:#f1f5f9}.badge-block{color:#475569;background:#f1f5f9}.badge-architecture{color:#1e293b;background:#f1f5f9}.badge-timeline{color:#9a3412;background:#fff7ed}.badge-kanban{color:#c2410c;background:#fff7ed}.badge-git{color:#7c3aed;background:#f5f3ff}.badge-database{color:#334155;background:#f8fafc}.badge-state{color:#b45309;background:#fffbeb}.badge-pie{color:#047857;background:#d1fae5}.badge-quadrant{color:#065f46;background:#d1fae5}.badge-xychart{color:#059669;background:#d1fae5}.badge-sankey{color:#047857;background:#ecfdf5}.badge-radar{color:#047857;background:#d1fae5}.badge-treemap{color:#065f46;background:#ecfdf5}.badge-packet{color:#334155;background:#f1f5f9}.badge-c4-container{color:#1e293b;background:#f1f5f9}.badge-ishikawa{color:#9a3412;background:#fff7ed}.badge-info{color:#6d28d9;background:#f5f3ff}.badge-mindmap{color:#be185d;background:#fdf2f8}.badge-default{color:#475569;background:#f8fafc}.tint-violet-bg{background:#ede9fe}.tint-violet-text{color:#7c3aed}.tint-blue-bg{background:#dbeafe}.tint-blue-text{color:#2563eb}.tint-emerald-bg{background:#d1fae5}.tint-emerald-text{color:#059669}.tint-orange-bg{background:#ffedd5}.tint-orange-text{color:#ea580c}.tint-cyan-bg{background:#cffafe}.tint-cyan-text{color:#0891b2}.tint-amber-bg{background:#fef3c7}.tint-amber-text{color:#d97706}.tint-pink-bg{background:#fce7f3}.tint-pink-text{color:#db2777}.tint-slate-bg{background:#f1f5f9}.tint-slate-text{color:#475569}.star-btn{cursor:pointer;color:#cbd5e1;background:0 0;border:none;align-items:center;padding:0;display:flex}.star-btn:hover,.star-btn.active{color:#fbbf24}.menu-btn{cursor:pointer;color:var(--gemini-text-subtle);background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;display:flex}.menu-btn:hover{color:var(--gemini-text-muted);background:#f1f5f9}.pagination-row{justify-content:space-between;align-items:center;margin-top:32px;display:flex}.pagination{align-items:center;gap:4px;display:flex}.pagination-btn{border-radius:var(--gemini-radius-md);cursor:pointer;min-width:32px;height:32px;color:var(--gemini-text-muted);background:0 0;border:none;justify-content:center;align-items:center;padding:0 8px;font-size:14px;font-weight:500;display:flex}.pagination-btn:hover{background:#f1f5f9}.pagination-btn.active{background:var(--gemini-primary);color:#fff}.pagination-btn.nav{color:var(--gemini-text-subtle)}.pagination-ellipsis{color:var(--gemini-text-subtle);padding:0 8px;font-size:14px}.load-more-row{justify-content:center;margin-top:32px;display:flex}.divider{background-color:var(--gemini-border);width:1px;height:16px;margin:0 4px}.panel{background:var(--gemini-surface);border-radius:var(--gemini-radius-lg);border:1px solid var(--gemini-border);min-width:0;min-height:0;box-shadow:var(--gemini-shadow-sm);flex-direction:column;flex:1 1 0;display:flex}.panel-header{border-bottom:1px solid var(--gemini-border);--panel-toolbar-height:28px;--panel-toolbar-pill-inset:2px;justify-content:space-between;align-items:center;height:52px;padding:0 16px;display:flex}.panel-footer{border-top:1px solid var(--gemini-border);color:var(--gemini-text-muted);border-bottom-left-radius:var(--gemini-radius-lg);border-bottom-right-radius:var(--gemini-radius-lg);background:#fff;justify-content:space-between;align-items:center;padding:12px 16px;font-size:12px;display:flex}.workspace{background-color:var(--gemini-bg);flex:1;gap:16px;min-height:0;padding:16px;display:flex;overflow:hidden}@media (width<=1024px){.workspace{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.topbar-right .btn-secondary,.subtitle{display:none}}.mobile-menu-btn{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-sm);background:var(--gemini-surface);width:36px;height:36px;color:var(--gemini-text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:none}.mobile-menu-btn:hover{background:#f8fafc}.mobile-topbar{flex-shrink:0;padding:12px 16px 0;display:none}.sidebar-backdrop{z-index:40;cursor:pointer;background:#0f172a66;border:none;margin:0;padding:0;display:none;position:fixed;inset:0}@media (width<=768px){.mobile-menu-btn{display:flex}.mobile-topbar,.sidebar-backdrop{display:block}.sidebar{z-index:50;width:260px;box-shadow:none;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 24px #00000026}.sidebar-toggle{display:none}.page-container{padding:16px}.page-actions{flex-wrap:wrap}}.mermaid-render{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.mermaid-render svg{max-width:100%;max-height:100%}.mermaid-render-host{justify-content:center;align-items:center;width:100%;min-height:120px;display:flex;position:relative}.mermaid-render--hidden{display:none}.mermaid-render-error{text-align:center;border-radius:var(--gemini-radius-md);background:#fff7ed;border:1px solid #fed7aa;flex-direction:column;justify-content:center;align-items:center;gap:4px;max-width:360px;padding:16px 20px;display:flex}.mermaid-render-error-title{color:#9a3412;margin:0;font-size:13px;font-weight:600}.mermaid-render-error-detail{color:#c2410c;word-break:break-word;margin:0;font-size:12px;line-height:1.4}.note-editor-embedded{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.note-editor{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-lg);background:#fff;flex-direction:column;display:flex;overflow:hidden}.note-editor-body{flex:1;min-height:0;overflow:auto}.note-textarea{resize:none;border:none;outline:none;width:100%;height:100%;min-height:280px;padding:16px;font-family:ui-monospace,monospace;font-size:13px;line-height:1.6}.markdown-preview{color:var(--gemini-text);padding:16px 20px;font-size:14px;line-height:1.65}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{margin:1em 0 .5em;font-weight:600}.markdown-preview p{margin:.5em 0}.markdown-preview code{background:var(--gemini-surface-subtle);border-radius:4px;padding:2px 6px;font-size:.9em}.markdown-preview pre{background:var(--gemini-surface-subtle);border-radius:var(--gemini-radius-sm);padding:12px;overflow-x:auto}.markdown-preview ul,.markdown-preview ol{margin:.5em 0;padding-left:1.5em}.markdown-preview a{color:var(--gemini-primary)}.title-input{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-sm);min-width:160px;padding:4px 8px;font-size:18px;font-weight:600}.folder-select{flex-shrink:0;align-items:center;gap:6px;margin-left:4px;display:inline-flex}.folder-select-icon{flex-shrink:0}.folder-select-input{appearance:none;border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-sm);background:var(--gemini-surface);color:var(--gemini-text-muted);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;max-width:200px;padding:4px 24px 4px 8px;font-size:12px;font-weight:500}.folder-select-input:hover{border-color:var(--gemini-text-subtle);color:var(--gemini-text)}.folder-select-input:focus{outline:2px solid var(--gemini-primary);outline-offset:1px}@media (width<=1024px){.folder-select{display:none}}.revision-badges{gap:6px;margin-left:8px;display:flex}.revision-badge{color:var(--gemini-text-muted);background:var(--gemini-surface-subtle);border-radius:999px;padding:2px 8px;font-size:11px}.saved-status--dirty{color:var(--gemini-text-muted)}.saved-status--error,.icon-error{color:#dc2626}.db-error-banner{color:#991b1b;background:#fef2f2;border-bottom:1px solid #fecaca;padding:8px 16px;font-size:13px}.editor-loading{text-align:center;color:var(--gemini-text-muted);padding:48px}.folder-path-bar{border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);background:#f8fafc;flex-wrap:wrap;align-items:center;gap:4px;margin-top:16px;padding:10px 14px;font-size:13px;line-height:1.4;display:flex}.folder-path-leading{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.folder-path-title{color:var(--gemini-text);margin:0;font-size:14px;font-weight:600}.folder-path-title-sep{flex-shrink:0}.folder-path-trail{flex-wrap:wrap;align-items:center;gap:2px;min-width:0;display:inline-flex}.folder-path-segment{align-items:center;gap:2px;min-width:0;display:inline-flex}.folder-path-sep{flex-shrink:0;margin:0 2px}.folder-path-link{border-radius:var(--gemini-radius-sm);color:var(--gemini-text-muted);font-size:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:2px 6px;font-weight:500;transition:color .15s,background-color .15s;display:inline-flex}.folder-path-link:hover{color:var(--gemini-primary);background:var(--gemini-primary-soft)}.folder-path-link--home{padding:4px 6px}.folder-path-current{color:var(--gemini-text);text-overflow:ellipsis;white-space:nowrap;padding:2px 6px;font-weight:600;overflow:hidden}.folder-path-bar+.content-section--folders{margin-top:12px}.folder-path-bar+.content-section--folders .folder-row{margin-top:0}.folder-card--clickable{cursor:pointer;text-align:left;font:inherit;border:none}.empty-folder-message{color:var(--gemini-text-muted);padding:24px 0;font-size:14px}.version-history-overlay{z-index:1000;background:#0f172a66;justify-content:flex-end;display:flex;position:fixed;inset:0}.version-history-panel{background:#fff;flex-direction:column;width:min(400px,100vw);height:100%;display:flex;box-shadow:-4px 0 24px #0000001a}.version-history-panel-header{border-bottom:1px solid var(--gemini-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.version-history-panel-header h2{margin:0;font-size:16px;font-weight:600}.version-history-filters{border-bottom:1px solid var(--gemini-border);gap:8px;padding:12px 20px;display:flex}.version-filter-btn{border:1px solid var(--gemini-border);cursor:pointer;background:#fff;border-radius:999px;padding:4px 12px;font-size:12px}.version-filter-btn.active{background:var(--gemini-primary);color:#fff;border-color:var(--gemini-primary)}.version-history-list{flex:1;padding:12px 20px;overflow-y:auto}.version-history-item{border-bottom:1px solid var(--gemini-border);padding:12px 0}.version-history-item-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.version-history-snapshot{font-size:14px;font-weight:600}.version-history-time{color:var(--gemini-text-muted);font-size:12px}.version-history-stats{align-items:center;gap:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;display:flex}.version-diff-stat--add{color:#15803d}.version-diff-stat--remove{color:#b91c1c}.version-diff-stat--neutral{color:var(--gemini-text-muted)}.version-history-title-change{color:var(--gemini-text-muted);margin:0 0 8px;font-size:12px}.version-history-commit-message{color:var(--gemini-text);margin:0 0 8px;font-size:13px;font-weight:500}.version-diff-preview{border:1px solid var(--gemini-border);background:#f8fafc;border-radius:6px;margin:0 0 10px;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.5;overflow-x:auto}.version-diff-line{white-space:pre;display:block}.version-diff-line--add{color:#15803d;background:#f0fdf4}.version-diff-line--remove{color:#b91c1c;background:#fef2f2}.version-diff-more{color:var(--gemini-text-muted);margin-top:4px;font-size:11px;display:block}.version-history-revisions{color:var(--gemini-text-muted);margin-bottom:8px;font-size:12px}.version-history-chips{gap:6px;margin-bottom:8px;display:flex}.version-chip{background:var(--gemini-surface-subtle);border-radius:4px;padding:2px 8px;font-size:11px}.version-history-empty{color:var(--gemini-text-muted);text-align:center;padding:32px 0;font-size:14px}.btn-sm{padding:4px 12px;font-size:12px}.note-editor .tab{cursor:pointer;color:var(--gemini-text-muted);background:0 0;border:none;padding:8px 12px;font-size:13px;font-weight:500}.note-editor .tab.active{color:var(--gemini-text);border-bottom:2px solid var(--gemini-primary)}:root{--font-sans:"Inter", ui-sans-serif, system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);background-color:var(--gemini-bg);color:var(--gemini-text);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.ai-panel-overlay{z-index:20;border-radius:inherit;background:var(--gemini-surface);flex-direction:column;animation:.2s ai-panel-fade-in;display:flex;position:absolute;inset:0}@keyframes ai-panel-fade-in{0%{opacity:0}to{opacity:1}}.ai-panel-header{gap:8px}.ai-panel-header-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.ai-panel-title{color:var(--gemini-text);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.ai-panel-title-icon{color:var(--gemini-primary)}.ai-panel-messages{background:#fafbfc;flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px;display:flex;overflow-y:auto}.ai-message{align-items:flex-start;gap:8px;max-width:100%;display:flex}.ai-message--user{flex-direction:row-reverse}.ai-message-avatar{border-radius:var(--gemini-radius-sm);background:var(--gemini-primary-soft);width:28px;height:28px;color:var(--gemini-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ai-message-bubble{border-radius:var(--gemini-radius-md);color:var(--gemini-text);background:var(--gemini-surface);border:1px solid var(--gemini-border);max-width:calc(100% - 36px);padding:10px 12px;font-size:13px;line-height:1.5}.ai-message--user .ai-message-bubble{background:var(--gemini-primary);border-color:var(--gemini-primary);color:#fff}.ai-panel-suggestions{border-top:1px solid var(--gemini-border);background:#fafbfc;padding:0 16px 12px}.ai-panel-suggestions-label{text-transform:uppercase;letter-spacing:.04em;color:var(--gemini-text-subtle);margin:12px 0 8px;font-size:11px;font-weight:600}.ai-panel-chips{flex-wrap:wrap;gap:6px;display:flex}.ai-chip{color:var(--gemini-text-muted);background:var(--gemini-surface);border:1px solid var(--gemini-border);cursor:pointer;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:500;transition:background-color .15s,border-color .15s,color .15s}.ai-chip:hover{background:var(--gemini-primary-soft);color:var(--gemini-primary);border-color:#c7d2fe}.ai-panel-composer{border-top:1px solid var(--gemini-border);background:var(--gemini-surface);border-bottom-left-radius:var(--gemini-radius-lg);border-bottom-right-radius:var(--gemini-radius-lg);align-items:flex-end;gap:8px;padding:12px 16px;display:flex}.ai-panel-input{min-height:44px;max-height:120px;color:var(--gemini-text);border:1px solid var(--gemini-border);border-radius:var(--gemini-radius-md);resize:none;background:#f8fafc;outline:none;flex:1;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .15s,box-shadow .15s}.ai-panel-input:focus{border-color:#a5b4fc;box-shadow:0 0 0 3px #6366f11f}.ai-panel-input::placeholder{color:var(--gemini-text-subtle)}.ai-panel-send{border-radius:var(--gemini-radius-md);background:var(--gemini-primary);color:#fff;cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .15s,opacity .15s;display:flex}.ai-panel-send:hover:not(:disabled){background:var(--gemini-primary-hover)}.ai-panel-send:disabled{opacity:.4;cursor:not-allowed}.ai-panel-send-spinner{animation:.8s linear infinite ai-spin}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-message-bubble--error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.ai-message-bubble--streaming{min-width:72px}.ai-message-thinking{color:var(--gemini-text-muted);font-style:italic}.ai-message-cursor{vertical-align:text-bottom;background:var(--gemini-primary);width:2px;height:1em;margin-left:2px;animation:1s step-end infinite ai-cursor-blink;display:inline-block}@keyframes ai-cursor-blink{50%{opacity:0}}.ai-message-markdown{font-size:13px;line-height:1.5}.ai-message-markdown p{margin:0 0 .75em}.ai-message-markdown p:last-child{margin-bottom:0}.ai-message-markdown pre{border-radius:var(--gemini-radius-sm);border:1px solid var(--gemini-border);background:#f1f5f9;margin:.5em 0;padding:10px 12px;overflow-x:auto}.ai-message-markdown code{font-family:Fira Code,monospace;font-size:12px}.ai-message-markdown :not(pre)>code{background:#f1f5f9;border-radius:4px;padding:.1em .35em}.ai-panel-input:disabled{opacity:.7;cursor:not-allowed}.ai-chip:disabled{opacity:.5;cursor:not-allowed}.ai-tool-status{border-radius:var(--gemini-radius-sm);align-items:flex-start;gap:8px;margin-bottom:8px;padding:8px 10px;font-size:12px;line-height:1.4;display:flex}.ai-tool-status--ok{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.ai-tool-status--error{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa}.ai-tool-status-text{flex-direction:column;gap:2px;display:flex}.ai-tool-status-summary{font-weight:600}.template-select{position:relative}.template-select-trigger{align-items:center;gap:6px;display:inline-flex}.template-select-chevron{transition:transform .15s}.template-select--open .template-select-chevron{transform:rotate(180deg)}.template-select-menu{z-index:30;border:1px solid var(--gemini-border);background:var(--gemini-surface);border-radius:8px;min-width:280px;max-height:320px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.template-select-option{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;transition:background-color .15s;display:flex}.template-select-option:hover{background:#f1f5f9}.template-select-option-name{color:var(--gemini-text);font-size:13px;font-weight:600}.template-select-option-desc{color:var(--gemini-text-muted);font-size:12px;line-height:1.4}.code-editor-panel{position:relative;overflow:hidden}.panel-header-left{align-items:center;gap:12px;min-width:0;height:100%;display:flex}.ai-toggle-btn{width:var(--panel-toolbar-height);height:var(--panel-toolbar-height);box-sizing:border-box;color:#6366f1;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s,color .15s;display:flex}.ai-toggle-btn:hover{background:#eef2ff;border-color:#c7d2fe}.ai-toggle-btn.active{color:#fff;background:#6366f1;border-color:#6366f1}.tabs{height:100%;display:flex}.tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;margin-right:16px;padding:0 8px;font-size:14px;font-weight:600;display:flex}.tab.active{color:#0f172a;border-bottom-color:#6366f1}.note-view-controls{height:var(--panel-toolbar-height);box-sizing:border-box;padding:var(--panel-toolbar-pill-inset);background-color:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:2px;display:flex}.note-view-controls .icon-btn{height:calc(var(--panel-toolbar-height) - var(--panel-toolbar-pill-inset) * 2);box-sizing:border-box;color:#475569;border-radius:4px;min-width:36px;min-height:0;padding:0 10px}.note-view-controls .icon-btn:hover:not(.active){background-color:#f8fafc}.note-view-controls .icon-btn.active{color:#fff;background-color:#6366f1}.toolbar{align-items:center;gap:8px;display:flex}.toolbar-btn{height:var(--panel-toolbar-height);box-sizing:border-box;color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:500;display:flex}.toolbar-btn:hover{background-color:#f8fafc}.toggle-wrapper{color:#0f172a;cursor:pointer;align-items:center;gap:8px;margin-left:4px;font-size:12px;font-weight:500;display:flex}.toggle-switch{background-color:#cbd5e1;border-radius:12px;width:36px;height:20px;transition:background-color .2s;position:relative}.toggle-switch.active{background-color:#6366f1}.toggle-knob{background-color:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0000001a}.toggle-switch.active .toggle-knob{transform:translate(16px)}.editor-container{background-color:#fff;flex:1;display:flex;position:relative;overflow:hidden}.editor-container--busy .code-textarea{cursor:wait}.line-numbers{text-align:right;color:#94a3b8;font-family:var(--gemini-font-mono);-webkit-user-select:none;user-select:none;background-color:#fff;min-width:44px;padding:16px 8px 16px 16px;font-size:13px;line-height:1.6;overflow-y:hidden}.line-number--error{color:#dc2626;font-weight:600}.code-editor-input{flex:1;min-width:0;position:relative;overflow:hidden}.code-editor-highlights{pointer-events:none;position:absolute;inset:0;overflow:hidden}.code-editor-highlights-inner{will-change:transform;min-height:100%;position:relative}.code-editor-error-line{background-color:#fee2e2a6;border-left:3px solid #ef4444;height:20.8px;position:absolute;left:0;right:0}.code-textarea{z-index:1;resize:none;width:100%;height:100%;font-family:var(--gemini-font-mono);white-space:pre;color:#6366f1;box-sizing:border-box;background-color:#0000;border:none;outline:none;padding:16px;font-size:13px;line-height:1.6;position:relative;overflow:auto}.editor-busy-overlay{z-index:2;color:#475569;pointer-events:none;background:#ffffffb8;justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex;position:absolute;inset:0}.editor-busy-spinner,.editor-fix-btn-spinner{animation:.8s linear infinite editor-spin}@keyframes editor-spin{to{transform:rotate(360deg)}}.editor-error-banner{align-items:center;gap:12px;width:100%;min-width:0;display:flex}.editor-error-message{color:#b91c1c;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;overflow:hidden}.editor-fix-btn{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;flex-shrink:0;align-items:center;gap:6px;height:28px;padding:0 10px;font-size:12px;font-weight:600;transition:background-color .15s,border-color .15s;display:inline-flex}.editor-fix-btn:hover:not(:disabled){background:#e0e7ff;border-color:#a5b4fc}.editor-fix-btn:disabled{opacity:.7;cursor:not-allowed}.status-item{align-items:center;gap:6px;display:flex}.status-item.success{color:#10b981}.dot{background-color:#10b981;border-radius:50%;width:8px;height:8px}.status-right{gap:16px;margin-left:auto;display:flex}.export-dropdown{position:relative}.export-dropdown-topbar .export-dropdown-trigger{align-items:center;gap:8px;display:inline-flex}.export-dropdown-trigger-toolbar{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;display:flex}.export-dropdown-trigger-toolbar:hover,.export-dropdown-trigger.is-open{background-color:#f8fafc}.export-chevron.is-open{transform:rotate(180deg)}.export-dropdown-menu{z-index:30;background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:240px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #0f172a1f}.export-dropdown-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;display:flex}.export-dropdown-item:hover:not(:disabled){background-color:#f8fafc}.export-dropdown-item:disabled{opacity:.6;cursor:wait}.export-dropdown-item-label{color:#0f172a;font-size:13px;font-weight:600}.export-dropdown-item-description{color:#64748b;font-size:12px}.export-dropdown-feedback{z-index:50;color:#fff;pointer-events:none;background:#0f172a;border-radius:8px;padding:10px 14px;font-size:13px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #0f172a2e}.preview-panel{flex-direction:column;display:flex}.preview-panel.is-fullscreen{background:#fff;border-radius:0}.preview-title{color:#0f172a;padding:0 8px;font-size:14px;font-weight:600}.preview-toolbar{align-items:center;gap:8px;display:flex}.zoom-controls{height:var(--panel-toolbar-height);box-sizing:border-box;padding:var(--panel-toolbar-pill-inset);background-color:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;display:flex}.zoom-controls .icon-btn{height:calc(var(--panel-toolbar-height) - var(--panel-toolbar-pill-inset) * 2);box-sizing:border-box;color:#475569;min-height:0;padding:0 6px}.zoom-level{color:#0f172a;text-align:center;min-width:48px;font-size:12px;font-weight:500}.btn-toolbar-icon{width:var(--panel-toolbar-height);height:var(--panel-toolbar-height);box-sizing:border-box;color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex}.btn-toolbar-icon:hover{background-color:#f8fafc}.preview-content-container{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background-color:#fff;background-image:radial-gradient(#e2e8f0 1px,#0000 1px);background-size:20px 20px;flex:1;position:relative;overflow:hidden}.preview-content-container.is-dragging{cursor:grabbing}.preview-viewport{transform-origin:0 0;will-change:transform;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.mermaid-wrapper{justify-content:center;align-items:center;display:flex}.mermaid-wrapper svg{pointer-events:auto;height:auto!important;font-family:Inter,sans-serif!important}.preview-empty{text-align:center;max-width:280px;padding:24px}.preview-empty-title{color:#334155;margin:0 0 6px;font-size:14px;font-weight:600}.preview-empty-desc{color:#64748b;margin:0;font-size:13px;line-height:1.5}.mermaid-wrapper rect{rx:6px;ry:6px}.preview-footer{background:#fff;border-top:1px solid #e2e8f0;border-bottom-right-radius:12px;border-bottom-left-radius:12px;justify-content:center;padding:16px;display:flex}.hints{color:#64748b;align-items:center;gap:12px;font-size:12px;display:flex}.hint{align-items:center;gap:6px;display:flex}.dot-separator{color:#cbd5e1;font-size:18px;line-height:1}
