:root{--app-bg: #f5f0e8;--editor-bg: #fdfaF4;--sidebar-bg: #ede8df;--text-primary: #2c2a26;--text-secondary: #7a7468;--divider: #d6d0c4;--accent: #8b6f47;--accent-hover: #7a5f3a;--saved: #6a9e6a;--error: #c0544a}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:var(--app-bg);color:var(--text-primary)}button,input,select{font:inherit}.app-shell{width:100vw;height:100vh;display:grid;grid-template-columns:18.5rem 1fr;grid-template-rows:1fr auto;background:var(--app-bg);color:var(--text-primary);transition:background-color .2s ease,color .2s ease,grid-template-columns .2s ease}.app-shell.sidebar-collapsed{grid-template-columns:3.2rem 1fr}.app-shell .editor-host{width:100%;height:100%}.app-shell.theme-dark{--app-bg: #1e1c1a;--editor-bg: #242220;--sidebar-bg: #1a1917;--text-primary: #e8e4dc;--text-secondary: #8a8680;--divider: #333030;--accent: #c4956a;--accent-hover: #d4a57a;--saved: #6a9e6a;--error: #c0544a}.sidebar{grid-row:1 / 3;background:var(--sidebar-bg);border-right:1px solid color-mix(in srgb,var(--divider) 80%,transparent);display:flex;flex-direction:column;transition:width .2s ease,transform .2s ease,background-color .2s ease;width:18.5rem;min-width:0;overflow:hidden}.sidebar.is-collapsed{width:3.2rem}.sidebar-header{min-height:3rem;padding:.7rem;display:flex;align-items:center;justify-content:space-between}.sidebar-scroll{flex:1;overflow:auto;padding:0 .5rem .8rem}.project-section{margin-bottom:.65rem}.project-row,.document-row{min-height:2rem;display:flex;align-items:center;justify-content:space-between;gap:.35rem;border-radius:10px;padding:.18rem .4rem;transition:background-color .18s ease}.project-row:hover,.document-row:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.document-row.is-active{background:color-mix(in srgb,var(--accent) 20%,transparent)}.project-name-button,.name-button{border:none;background:transparent;color:inherit;cursor:pointer;min-width:0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0}.project-name-button{font-size:.82rem;font-weight:640}.name-button{font-size:.81rem;padding-left:.95rem}.item-actions{display:inline-flex;align-items:center;gap:.2rem;opacity:0;transform:translateY(2px);transition:opacity .18s ease,transform .18s ease}.project-row:hover .item-actions,.document-row:hover .item-actions,.project-row:focus-within .item-actions,.document-row:focus-within .item-actions{opacity:1;transform:translateY(0)}.icon-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;color:inherit;border-radius:8px;width:1.8rem;height:1.8rem;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.icon-button:hover{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 28%,transparent);color:var(--accent-hover)}.document-list{list-style:none;margin:0;padding:0}.inline-rename{width:100%;display:flex;align-items:center;gap:.22rem}.inline-rename-input{flex:1;min-width:0;border:1px solid color-mix(in srgb,var(--divider) 85%,transparent);background:color-mix(in srgb,var(--app-bg) 75%,transparent);color:inherit;border-radius:7px;padding:.22rem .35rem;font-size:.81rem}.inline-confirm{max-height:0;opacity:0;overflow:hidden;transform:translateY(-2px);transition:max-height .2s ease,opacity .18s ease,transform .18s ease;margin-left:1rem;display:flex;align-items:center;gap:.35rem;color:var(--text-secondary);font-size:.75rem}.inline-confirm.is-open{max-height:2.2rem;opacity:1;transform:translateY(0)}.inline-confirm-action{border:none;background:color-mix(in srgb,var(--accent) 12%,transparent);color:inherit;border-radius:6px;padding:.15rem .4rem;cursor:pointer}.editor-area{min-width:0;min-height:0;background:var(--editor-bg);transition:background-color .2s ease;position:relative}.status-slot{grid-column:2 / 3}.status-bar{height:2.2rem;border-top:1px solid color-mix(in srgb,var(--divider) 70%,transparent);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 .85rem;font-size:.75rem;color:var(--text-secondary);transition:border-color .2s ease,color .2s ease}.status-left{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-project,.status-document{color:var(--text-secondary)}.status-separator{margin:0 .35rem}.status-center{text-align:center}.status-right{justify-self:end;display:inline-flex;align-items:center;gap:.3rem}.save-status{min-width:4.4rem;text-align:right;transition:color .18s ease}.save-status-saved{color:var(--saved)}.save-status-error{color:var(--error)}.save-status-saving{color:var(--text-secondary)}.export-menu{position:relative}.export-popover{position:absolute;right:0;bottom:2.1rem;background:color-mix(in srgb,var(--sidebar-bg) 88%,transparent);border:1px solid color-mix(in srgb,var(--divider) 80%,transparent);border-radius:10px;padding:.35rem;display:grid;gap:.15rem;min-width:11.5rem;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .17s ease,transform .17s ease}.export-popover.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.export-popover button{border:none;background:transparent;color:inherit;font-size:.75rem;text-align:left;border-radius:6px;padding:.3rem .35rem;cursor:pointer}.export-popover button:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.hidden-file-input{display:none}.editor-host-wrap{position:relative;width:100%;height:100%}.ai-floating-layer{position:fixed;inset:0;pointer-events:none;z-index:35}.ai-trigger,.ai-command-menu,.ai-result-card{pointer-events:auto}.ai-trigger{position:fixed;display:inline-flex;align-items:center;gap:.25rem;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:999px;padding:.3rem .55rem;background:color-mix(in srgb,var(--sidebar-bg) 95%,transparent);color:var(--accent);cursor:pointer;opacity:0;transform:translateY(4px);transition:opacity .17s ease,transform .17s ease,background-color .17s ease}.ai-trigger.is-open{opacity:1;transform:translateY(0)}.ai-trigger:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.ai-command-menu{position:fixed;min-width:200px;max-height:220px;overflow:auto;border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);border-radius:10px;background:color-mix(in srgb,var(--sidebar-bg) 92%,transparent);box-shadow:0 8px 24px #00000029;padding:.35rem;display:grid;gap:.12rem;animation:aiMenuIn .17s ease}@keyframes aiMenuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ai-command-menu-item{display:inline-flex;align-items:center;gap:.4rem;border:none;background:transparent;color:inherit;text-align:left;padding:.33rem .4rem;border-radius:8px;cursor:pointer}.ai-command-menu-item:hover,.ai-command-menu-item.is-active{background:color-mix(in srgb,var(--accent) 14%,transparent)}.ai-result-card{position:fixed;width:min(28rem,calc(100vw - 1.5rem));border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--sidebar-bg) 94%,transparent);box-shadow:0 10px 24px #00000029;padding:.65rem;animation:aiMenuIn .17s ease}.ai-result-header{font-size:.78rem;color:var(--text-secondary);margin-bottom:.45rem}.ai-result-loading{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-secondary);font-size:.78rem}.ai-spinner{animation:aiSpin .8s linear infinite;color:var(--accent)}@keyframes aiSpin{to{transform:rotate(360deg)}}.ai-result-text{max-height:150px;overflow:auto;font-size:.84rem;line-height:1.5;padding:.4rem;border-radius:8px;background:color-mix(in srgb,var(--app-bg) 70%,transparent)}.ai-stream-cursor{display:inline-block;margin-left:.12rem;color:var(--accent);animation:aiBlink .9s steps(1,end) infinite}@keyframes aiBlink{50%{opacity:0}}.ai-result-actions{margin-top:.5rem;display:flex;gap:.35rem;justify-content:flex-end}.ai-result-actions button{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);background:transparent;color:inherit;border-radius:8px;padding:.28rem .52rem;display:inline-flex;align-items:center;gap:.3rem;cursor:pointer}.ai-result-actions button:disabled{opacity:.55;cursor:not-allowed}.ai-result-actions .ai-accept{border-color:color-mix(in srgb,var(--accent) 32%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.ai-result-actions .ai-retry{color:var(--text-secondary)}.ai-toast{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);border:1px solid color-mix(in srgb,var(--divider) 75%,transparent);border-radius:999px;background:color-mix(in srgb,var(--sidebar-bg) 95%,transparent);color:var(--text-secondary);font-size:.75rem;padding:.36rem .66rem;z-index:45}.settings-backdrop{position:fixed;inset:0;border:none;background:#00000047;opacity:0;pointer-events:none;transition:opacity .2s ease}.settings-backdrop.is-open{opacity:1;pointer-events:auto}.settings-panel{position:fixed;top:0;right:0;width:min(24rem,100%);height:100%;background:var(--sidebar-bg);color:var(--text-primary);border-left:1px solid color-mix(in srgb,var(--divider) 70%,transparent);transform:translate(100%);transition:transform .22s ease;z-index:20;display:grid;grid-template-rows:auto 1fr}.ai-commands-panel{z-index:21}.settings-panel.is-open{transform:translate(0)}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem .5rem}.settings-header h2{margin:0;font-size:1rem;font-weight:630}.settings-content{padding:.7rem 1rem 1.2rem;display:grid;align-content:start;gap:1rem}.settings-field{display:grid;gap:.4rem;font-size:.82rem}.settings-field select,.settings-field input[type=range],.settings-field input,.settings-field textarea{width:100%}.settings-field textarea,.settings-field input{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);background:color-mix(in srgb,var(--app-bg) 75%,transparent);color:inherit;border-radius:8px;padding:.45rem .5rem}.theme-toggle{display:inline-flex;gap:.3rem}.theme-option{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);background:transparent;color:inherit;border-radius:8px;padding:.25rem .6rem;cursor:pointer}.theme-option.is-active{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 28%,transparent)}.commands-panel-toolbar button,.command-form-actions button{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);background:transparent;color:inherit;border-radius:8px;padding:.32rem .58rem;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem}.commands-panel-toolbar button:hover,.command-form-actions button:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.commands-list{display:grid;gap:.45rem}.command-row-wrap{display:grid}.command-row{display:flex;align-items:center;justify-content:space-between;gap:.45rem;border-radius:8px;padding:.28rem .25rem}.command-row:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.command-row-main{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.command-row-main span{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-row-actions{display:inline-flex;align-items:center;gap:.15rem}.command-form{display:grid;gap:.9rem}.command-icon-picker{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.25rem}.command-icon-option{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);background:transparent;color:inherit;border-radius:8px;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.command-icon-option.is-active{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.command-icon-preview{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary);font-size:.74rem}.command-form-actions{display:inline-flex;gap:.35rem}.inline-error{color:var(--error);font-size:.72rem}.unsaved-overlay{position:fixed;inset:0;background:#00000047;display:grid;place-items:center;z-index:40}.unsaved-dialog{width:min(28rem,calc(100vw - 2rem));border:1px solid color-mix(in srgb,var(--divider) 75%,transparent);background:var(--sidebar-bg);color:var(--text-primary);border-radius:12px;padding:.95rem}.unsaved-dialog p{margin:0 0 .75rem;color:var(--text-secondary);font-size:.84rem}.unsaved-actions{display:flex;gap:.4rem;justify-content:flex-end}.unsaved-actions button{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent);background:transparent;color:inherit;border-radius:8px;padding:.34rem .6rem;cursor:pointer}.unsaved-actions button:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}@media(max-width:920px){.app-shell{grid-template-columns:16rem 1fr}.sidebar.is-collapsed{width:2.9rem}.status-bar{grid-template-columns:1fr;row-gap:.25rem;height:auto;padding:.35rem .7rem}.status-center{text-align:left}.status-right{justify-self:start}}
