:root{--font-family-system: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Arial", "Noto Sans", "Liberation Sans", sans-serif, "LXGW WenKai Screen", "Yozai";--md-sys-color-primary-light: #8B8680;--md-sys-color-on-primary-light: #ffffff;--md-sys-color-surface-light: #FAF9F5;--md-sys-color-on-surface-light: #2B2926;--md-sys-color-on-surface-variant-light: #6B6763;--md-sys-color-outline-variant-light: #E3E1DB;--md-sys-color-surface-container-light: #F0EEE8;--md-sys-color-on-surface-container-light: #2B2926;--md-sys-color-error-light: #C65746;--md-sys-color-shadow-light: #000000;--glass-bg-light: rgba(250, 249, 245, .75);--code-bg-light: #EEECE6;--user-bubble-bg-light: #E3E1DB;--model-bubble-bg-light: #F0EEE8;--md-sys-color-primary-dark: #A8A39D;--md-sys-color-on-primary-dark: #1a1917;--md-sys-color-surface-dark: #1C1B19;--md-sys-color-on-surface-dark: #E8E6E0;--md-sys-color-on-surface-variant-dark: #A39F9A;--md-sys-color-outline-variant-dark: #3D3B37;--md-sys-color-surface-container-dark: #282725;--md-sys-color-on-surface-container-dark: #E8E6E0;--md-sys-color-error-dark: #E07A6A;--md-sys-color-shadow-dark: #000000;--glass-bg-dark: rgba(28, 27, 25, .75);--code-bg-dark: #242321;--user-bubble-bg-dark: #3D3B37;--model-bubble-bg-dark: #282725;--radius-2xl: 1rem;--radius-full: 9999px;--transition-fluid: .4s cubic-bezier(.2, .8, .2, 1)}body{--md-sys-color-primary: var(--dynamic-primary, var(--md-sys-color-primary-light));--md-sys-color-on-primary: var(--dynamic-on-primary, var(--md-sys-color-on-primary-light));--md-sys-color-surface: var(--dynamic-surface, var(--md-sys-color-surface-light));--md-sys-color-on-surface: var(--dynamic-on-surface, var(--md-sys-color-on-surface-light));--md-sys-color-on-surface-variant: var(--dynamic-on-surface-variant, var(--md-sys-color-on-surface-variant-light));--md-sys-color-outline-variant: var(--dynamic-outline-variant, var(--md-sys-color-outline-variant-light));--md-sys-color-surface-container: var(--dynamic-surface-container, var(--md-sys-color-surface-container-light));--md-sys-color-on-surface-container: var(--dynamic-on-surface-container, var(--md-sys-color-on-surface-container-light));--md-sys-color-error: var(--dynamic-error, var(--md-sys-color-error-light));--md-sys-color-shadow: var(--md-sys-color-shadow-light);--glass-bg: var(--dynamic-glass-bg, var(--glass-bg-light));--code-bg: var(--dynamic-code-bg, var(--code-bg-light));--user-bubble-bg: var(--dynamic-user-bubble-bg, var(--user-bubble-bg-light));--model-bubble-bg: var(--dynamic-model-bubble-bg, var(--model-bubble-bg-light));--shadow-md: 0 4px 12px rgba(var(--md-sys-color-shadow), .08);--accent-color: var(--md-sys-color-surface-container);--accent-color-text: var(--md-sys-color-on-surface-container);background-color:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);--font-family: var(--font-family-system);font-family:var(--font-family);font-size:calc(1rem * var(--font-size-multiplier, 1));margin:0}body[data-font=lxgw]{--font-family: "LXGW WenKai Screen", var(--font-family-system);font-family:var(--font-family)}body[data-font=yozai]{--font-family: "Yozai", var(--font-family-system);font-family:var(--font-family)}body[data-font=system]{--font-family: var(--font-family-system);font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.theme-dark{--md-sys-color-primary: var(--dynamic-primary, var(--md-sys-color-primary-dark));--md-sys-color-on-primary: var(--dynamic-on-primary, var(--md-sys-color-on-primary-dark));--md-sys-color-surface: var(--dynamic-surface, var(--md-sys-color-surface-dark));--md-sys-color-on-surface: var(--dynamic-on-surface, var(--md-sys-color-on-surface-dark));--md-sys-color-on-surface-variant: var(--dynamic-on-surface-variant, var(--md-sys-color-on-surface-variant-dark));--md-sys-color-outline-variant: var(--dynamic-outline-variant, var(--md-sys-color-outline-variant-dark));--md-sys-color-surface-container: var(--dynamic-surface-container, var(--md-sys-color-surface-container-dark));--md-sys-color-on-surface-container: var(--dynamic-on-surface-container, var(--md-sys-color-on-surface-container-dark));--md-sys-color-error: var(--dynamic-error, var(--md-sys-color-error-dark));--md-sys-color-shadow: var(--md-sys-color-shadow-dark);--glass-bg: var(--dynamic-glass-bg, var(--glass-bg-dark));--code-bg: var(--dynamic-code-bg, var(--code-bg-dark));--user-bubble-bg: var(--dynamic-user-bubble-bg, var(--user-bubble-bg-dark));--model-bubble-bg: var(--dynamic-model-bubble-bg, var(--model-bubble-bg-dark));--shadow-md: 0 4px 12px rgba(var(--md-sys-color-shadow), .3)}body.theme-apple-light{--md-sys-color-primary: var(--dynamic-primary, #007aff);--md-sys-color-on-primary: var(--dynamic-on-primary, #ffffff);--md-sys-color-surface: var(--dynamic-surface, #F9F9F9);--md-sys-color-on-surface: var(--dynamic-on-surface, #1d1d1f);--md-sys-color-on-surface-variant: var(--dynamic-on-surface-variant, #6e6e73);--md-sys-color-outline-variant: var(--dynamic-outline-variant, rgba(255, 255, 255, .8));--md-sys-color-surface-container: var(--dynamic-surface-container, #e5e5ea);--md-sys-color-on-surface-container: var(--dynamic-on-surface-container, #1d1d1f);--md-sys-color-error: var(--dynamic-error, #ff3b30);--glass-bg: var(--dynamic-glass-bg, rgba(249, 249, 249, .65));--code-bg: var(--dynamic-code-bg, #f5f5f7);--user-bubble-bg: var(--dynamic-user-bubble-bg, #f0f0f0);--model-bubble-bg: var(--dynamic-model-bubble-bg, var(--md-sys-color-surface-container));--shadow-md: 0 4px 12px rgba(0, 0, 0, .05)}body.theme-apple-dark{--md-sys-color-primary: var(--dynamic-primary, #0a84ff);--md-sys-color-on-primary: var(--dynamic-on-primary, #ffffff);--md-sys-color-surface: var(--dynamic-surface, #1D1D1F);--md-sys-color-on-surface: var(--dynamic-on-surface, #f5f5f7);--md-sys-color-on-surface-variant: var(--dynamic-on-surface-variant, #8e8e93);--md-sys-color-outline-variant: var(--dynamic-outline-variant, rgba(80, 80, 82, .5));--md-sys-color-surface-container: var(--dynamic-surface-container, #2c2c2e);--md-sys-color-on-surface-container: var(--dynamic-on-surface-container, #f5f5f7);--md-sys-color-error: var(--dynamic-error, #ff453a);--glass-bg: var(--dynamic-glass-bg, rgba(40, 40, 42, .6));--code-bg: var(--dynamic-code-bg, #282c34);--user-bubble-bg: var(--dynamic-user-bubble-bg, #2c2c2e);--model-bubble-bg: var(--dynamic-model-bubble-bg, var(--md-sys-color-surface-container));--shadow-md: 0 4px 12px rgba(0, 0, 0, .25)}.glass-pane{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--md-sys-color-outline-variant);box-shadow:var(--shadow-md)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--md-sys-color-on-surface-variant);border-radius:var(--radius-full);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-color:var(--md-sys-color-primary)}.user-bubble{background:color-mix(in srgb,var(--user-bubble-bg) 75%,transparent);border-radius:var(--radius-2xl);color:var(--md-sys-color-on-surface);border:1px solid color-mix(in srgb,var(--user-bubble-bg) 15%,transparent)}body.theme-dark .user-bubble,body.theme-apple-dark .user-bubble{background:color-mix(in srgb,var(--user-bubble-bg) 75%,transparent);border:1px solid color-mix(in srgb,var(--user-bubble-bg) 15%,transparent)}.model-bubble{background-color:color-mix(in srgb,var(--model-bubble-bg) 1%,transparent);color:var(--md-sys-color-on-surface);border-radius:var(--radius-2xl);border:none;box-shadow:none}.model-selector-wrapper{position:relative;width:100%;max-width:280px}.model-selector-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;border-radius:var(--radius-full);transition:all .2s ease}.model-selector-trigger:hover{border-color:var(--md-sys-color-primary)}.model-selector-trigger:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.tool-selector-options,.model-selector-options{position:absolute;min-width:100%;width:max-content;z-index:10;padding:.5rem;border-radius:var(--radius-2xl);opacity:0;pointer-events:none;transition:all .2s ease-out;max-height:min(280px,45vh);overflow-y:auto;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,10px);transform-origin:bottom center;-ms-overflow-style:none;scrollbar-width:none}.tool-selector-options{min-width:280px;left:1rem;transform:translate(0) translateY(10px)}.model-selector-options.header-selector{top:calc(100% + 8px);bottom:auto;left:auto;right:0;transform:translateY(10px);transform-origin:top center}.model-selector-options.visible,.tool-selector-options.visible{opacity:1;transform:translate(-50%);pointer-events:auto}.tool-selector-options.visible{transform:translate(0) translateY(0)}.model-selector-options.header-selector.visible{transform:translateY(0)}.model-selector-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-2xl);cursor:pointer;transition:background-color .2s ease,color .2s ease}.model-selector-option:hover{background-color:color-mix(in srgb,var(--md-sys-color-primary) 20%,transparent)}.model-selector-option.active{background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-container);font-weight:600}.history-item-actions,.folder-actions{display:flex;align-items:center;gap:.25rem;opacity:0;transition:opacity .2s ease}a:hover .history-item-actions,.history-item-actions:focus-within,.folder-header:hover .folder-actions,.folder-actions:focus-within{opacity:1}.history-item-actions button,.folder-actions button{padding:.3rem;border-radius:var(--radius-full);background-color:transparent;transition:background-color .2s ease}.history-item-actions button:hover,.folder-actions button:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 25%,transparent)}.sidebar-search-wrapper{position:relative}.sidebar-search-input{width:100%;padding:.65rem 1rem .65rem 2.5rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--glass-bg) 50%,transparent);border:1px solid var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface);font-size:.95rem;transition:all .2s ease-out}.sidebar-search-input::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.8}.sidebar-search-input:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--md-sys-color-primary) 40%,transparent)}.sidebar-search-icon{position:absolute;top:50%;left:1rem;transform:translateY(-50%);color:var(--md-sys-color-on-surface-variant);pointer-events:none}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;background:#2c2c2e;color:#f5f5f7;padding:.5rem .75rem;border-radius:var(--radius-2xl);font-size:.875rem;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:all .2s ease-out;z-index:10001}body.dark-mode [data-tooltip]:after{background:var(--glass-bg);color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline-variant)}[data-tooltip]:not([data-tooltip-placement]):after,[data-tooltip-placement=bottom]:after{top:100%;left:50%;transform:translate(-50%) translateY(10px) scale(.95);margin-top:8px}[data-tooltip]:not([data-tooltip-placement]):hover:after,[data-tooltip]:not([data-tooltip-placement]):focus-visible:after,[data-tooltip-placement=bottom]:hover:after{opacity:1;transform:translate(-50%) translateY(0) scale(1)}[data-tooltip-placement=top]:after{bottom:100%;left:50%;transform:translate(-50%) translateY(-10px) scale(.95);margin-bottom:8px}[data-tooltip-placement=top]:hover:after,[data-tooltip-placement=top]:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0) scale(1)}[data-tooltip-placement=left]:after{top:50%;right:100%;transform:translateY(-50%) translate(-10px) scale(.95);margin-right:8px}[data-tooltip-placement=left]:hover:after,[data-tooltip-placement=left]:focus-visible:after{opacity:1;transform:translateY(-50%) translate(0) scale(1)}[data-tooltip-placement=right]:after{top:50%;left:100%;transform:translateY(-50%) translate(10px) scale(.95);margin-left:8px}[data-tooltip-placement=right]:hover:after,[data-tooltip-placement=right]:focus-visible:after{opacity:1;transform:translateY(-50%) translate(0) scale(1)}.modal-backdrop{position:fixed;inset:0;z-index:40;background-color:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .3s ease-out}.modal-backdrop.visible{opacity:1}.modal-dialog{position:fixed;top:50%;left:50%;z-index:50;width:90%;max-height:85vh;transform:translate(-50%,-50%) scale(.95);opacity:0;transition:transform .3s ease-out,opacity .3s ease-out}.modal-dialog.visible{transform:translate(-50%,-50%) scale(1);opacity:1}.modal-dialog-sm{max-width:400px}.modal-dialog-md{max-width:550px}.modal-dialog-lg{max-width:700px}body.drawer-open{overflow:hidden}.drawer-backdrop{position:fixed;inset:0;z-index:45;background-color:#0000004d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:opacity .3s ease-out}body.drawer-open .drawer-backdrop{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:90%;max-width:400px;z-index:50;transform:translate(100%);transition:transform var(--transition-fluid);border-radius:0;border-left:1px solid var(--md-sys-color-outline-variant);border-top-left-radius:var(--radius-2xl);border-bottom-left-radius:var(--radius-2xl);background:var(--glass-bg);padding:1.5rem;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);box-shadow:var(--shadow-md)}body.drawer-open .drawer{transform:translate(0)}.drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-shrink:0}.drawer-body{flex-grow:1;min-height:0}.input-glass,.select-glass{width:100%;background:color-mix(in srgb,var(--glass-bg) 25%,transparent);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-2xl);padding:.75rem 1rem;font-size:1rem;color:var(--md-sys-color-on-surface);transition:all .2s ease-out;appearance:none}.input-glass:focus,.select-glass:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--md-sys-color-primary) 40%,transparent)}.input-glass::placeholder{color:var(--md-sys-color-on-surface-variant)}.view-wrapper{position:relative;width:100%;height:100%}.view-container{position:absolute;inset:0;transition:opacity .3s ease-in-out,transform .3s ease-in-out;opacity:0;transform:scale(.98);pointer-events:none}.view-container.active{opacity:1;transform:scale(1);pointer-events:auto}.dropzone-overlay{position:absolute;inset:1rem;z-index:50;background:var(--glass-bg);-webkit-backdrop-filter:blur(10px) saturate(180%);backdrop-filter:blur(10px) saturate(180%);border-radius:var(--radius-2xl);border:2px dashed color-mix(in srgb,var(--md-sys-color-primary) 40%,transparent);display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(1.05);pointer-events:none;transition:opacity .2s ease-out,transform .2s ease-out,backdrop-filter .2s ease-out,border-color .2s ease-out}.dropzone-overlay.visible{opacity:1;transform:scale(1);pointer-events:auto;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-color:color-mix(in srgb,var(--md-sys-color-primary) 50%,transparent)}.dropzone-overlay-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;color:var(--md-sys-color-on-surface);text-shadow:0 2px 4px var(--shadow-md)}@keyframes message-in{0%{opacity:0;transform:translateY(15px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.message-row:not(.deleting){animation:message-in .4s var(--transition-fluid) backwards}@keyframes history-item-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.history-item-enter{animation:history-item-in .4s ease-out backwards}.history-item{transition:max-height .35s ease-out,opacity .3s ease-out,padding .3s ease-out,margin .3s ease-out,background-color .2s ease,color .2s ease;max-height:60px;overflow:hidden;opacity:1}@keyframes history-item-out{0%{opacity:1;transform:scaleY(1);max-height:60px}to{opacity:0;transform:scaleY(.8);max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;overflow:hidden}}.history-item.deleting{transform-origin:top;animation:history-item-out .35s ease-out forwards}@keyframes history-item-archive{0%{opacity:1;transform:translate(0);max-height:60px}to{opacity:0;transform:translate(-100%);max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;overflow:hidden}}.history-item.archiving{animation:history-item-archive .4s ease-in-out forwards}.history-item.hiding{opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;pointer-events:none}.folder-wrapper{transition:max-height .35s ease-out,opacity .3s ease-out,padding .3s ease-out,margin .3s ease-out;max-height:2000px;overflow:hidden}@keyframes folder-out{0%{opacity:1;transform:scaleY(1);max-height:2000px}to{opacity:0;transform:scaleY(.8);max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;overflow:hidden}}.folder-wrapper.deleting{animation:folder-out .35s ease-out forwards}.folder-wrapper.hiding{opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0}.folder-header{display:flex;align-items:center;gap:.5rem;padding:.6rem .5rem;margin:.25rem 0;border-radius:var(--radius-2xl);cursor:pointer;font-weight:500;transition:background-color .2s ease}.folder-header:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 8%,transparent)}.folder-chevron{transition:transform .2s ease-out;color:var(--md-sys-color-on-surface-variant)}.folder-chevron.open{transform:rotate(90deg)}.folder-content{padding-left:.75rem;max-height:0;overflow:hidden;transition:max-height .35s ease-out}.history-item.dragging{opacity:.4}.drop-target{background-color:color-mix(in srgb,var(--md-sys-color-primary) 20%,transparent)!important;outline:1px dashed var(--md-sys-color-primary);outline-offset:-2px}.root-drop-zone{padding:4px;margin-top:8px;border-radius:var(--radius-2xl);transition:background-color .2s ease}@keyframes file-preview-in{0%{opacity:0;transform:scale(.8);max-height:0px}to{opacity:1;transform:scale(1);max-height:80px}}@keyframes file-preview-out{0%{opacity:1;transform:scale(1);max-height:80px}to{opacity:0;transform:scale(.7);max-height:0;padding:0;margin:0;border:0}}.file-preview-wrapper{max-height:80px;overflow:hidden}.file-preview-wrapper.entering{animation:file-preview-in .3s var(--transition-fluid) forwards}.file-preview-wrapper.deleting{animation:file-preview-out .3s ease-out forwards;pointer-events:none}.file-preview-container{display:flex;gap:.75rem;padding:.5rem .75rem;overflow-x:auto;border-bottom:1px solid var(--md-sys-color-outline-variant)}.file-preview-item{position:relative;flex-shrink:0;width:80px;height:80px;border-radius:var(--radius-2xl);overflow:hidden;background-color:var(--md-sys-color-surface-variant);border:1px solid var(--md-sys-color-outline-variant)}.file-preview-item img{width:100%;height:100%;object-fit:cover}.file-preview-item .file-info{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:.5rem;text-align:center;color:var(--md-sys-color-on-surface)}.file-preview-item .file-info span{font-size:.75rem;word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:.25rem}.pdf-parsing-card{display:flex;align-items:center;gap:.75rem;min-height:4rem;padding:.75rem;border-radius:var(--radius-2xl);background:var(--neu-field-bg, var(--md-sys-color-surface-variant));box-shadow:var(--neu-field-shadow, inset 0 1px 2px rgba(0, 0, 0, .08));color:var(--text-color)}.pdf-parsing-icon{width:2rem;height:2rem;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--md-sys-color-primary);background:color-mix(in srgb,var(--md-sys-color-primary) 12%,transparent)}.pdf-parsing-title{font-size:.875rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-parsing-message{margin-top:.125rem;font-size:.75rem;color:var(--text-color-secondary)}.pdf-parsing-track{height:.25rem;margin-top:.5rem;border-radius:var(--radius-full);overflow:hidden;background:color-mix(in srgb,var(--md-sys-color-on-surface) 10%,transparent)}.pdf-parsing-progress{height:100%;border-radius:inherit;background:var(--md-sys-color-primary);transition:width .25s ease}.pdf-parsing-percent{min-width:2.5rem;text-align:right;font-size:.75rem;font-weight:650;color:var(--text-color-secondary)}.remove-file-btn{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:var(--radius-full);background-color:#0009;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.8;transition:opacity .2s ease,transform .2s ease;z-index:2}.remove-file-btn:hover{opacity:1;transform:scale(1.1)}@keyframes tool-chip-in{0%{opacity:0;transform:translateY(5px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.active-tools-indicator{display:flex;gap:.5rem;padding:.5rem .75rem}.active-tool-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .75rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent-color) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent-color) 30%,transparent);font-size:.8rem;font-weight:500;color:var(--accent-color);animation:tool-chip-in .3s var(--transition-fluid) backwards,apple-pulse 2s infinite ease-in-out}@keyframes lightbox-fade-out{0%{opacity:1}to{opacity:0}}@keyframes lightbox-zoom-out{0%{transform:scale(1)}to{transform:scale(.95)}}.lightbox-backdrop{position:fixed;inset:0;z-index:100;background-color:#00000080;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;transition:opacity .3s ease-out}.lightbox-backdrop.visible{opacity:1}.lightbox-backdrop.closing{animation:lightbox-fade-out .2s ease-in forwards}.lightbox-content{position:fixed;inset:0;z-index:101;display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;transform:scale(.95);transition:opacity .3s var(--transition-fluid),transform .3s var(--transition-fluid)}.lightbox-content.visible{opacity:1;transform:scale(1)}.lightbox-content.closing{animation:lightbox-zoom-out .2s ease-in forwards}.lightbox-content img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-2xl);box-shadow:0 10px 30px #0000004d}.lightbox-close-btn{position:absolute;top:1.5rem;right:1.5rem;width:44px;height:44px;border-radius:var(--radius-full);background-color:#00000080;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,background-color .2s ease}.lightbox-close-btn:hover{transform:scale(1.1);background-color:#000000b3}.settings-section-title{font-size:.875rem;font-weight:600;color:var(--md-sys-color-on-surface-variant);text-transform:uppercase;letter-spacing:.05em;margin:1.5rem 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--md-sys-color-outline-variant)}.settings-section-title:first-child{margin-top:0}.settings-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.settings-item-label{font-weight:500}.settings-item-description{font-size:.875rem;color:var(--md-sys-color-on-surface-variant);margin-top:.1rem}.switch-label{display:flex;align-items:center;gap:10px;cursor:pointer}.switch{position:relative;display:inline-block;width:44px;height:26px;flex-shrink:0}.switch input{display:none}.switch-slider{position:absolute;cursor:pointer;inset:0;border-radius:var(--radius-full);background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 20%,transparent);transition:background-color .2s ease}.switch-slider:before{position:absolute;content:"";height:22px;width:22px;left:2px;bottom:2px;background-color:#fff;border-radius:var(--radius-full);transition:transform .2s ease-out;box-shadow:0 1px 3px #0003}.switch input:checked+.switch-slider{background-color:var(--md-sys-color-primary)}.switch input:checked+.switch-slider:before{transform:translate(18px)}.btn-outline{padding:.5rem 1rem;font-size:.9rem;font-weight:600;border-radius:var(--radius-2xl);border:1px solid var(--md-sys-color-outline-variant);background:transparent;color:var(--md-sys-color-on-surface);transition:all .2s ease}.btn-outline:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 10%,transparent);border-color:var(--md-sys-color-on-surface)}.btn-danger{color:var(--md-sys-color-error);border-color:var(--md-sys-color-error)}.btn-danger:hover{background-color:color-mix(in srgb,var(--md-sys-color-error) 15%,transparent)}.collapsible-section{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease-out,opacity .3s ease-out;opacity:0}.collapsible-section.expanded{grid-template-rows:1fr;opacity:1}.collapsible-section>div{overflow:hidden}@keyframes suggestion-in{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.suggestions-container{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;padding:0 6rem .75rem;animation:suggestion-in .4s var(--transition-fluid) backwards}.suggestion-chip{padding:.5rem 1rem;border-radius:var(--radius-full);background:var(--glass-bg);border:1px solid var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.suggestion-chip:hover{background-color:color-mix(in srgb,var(--md-sys-color-primary) 20%,transparent);border-color:var(--md-sys-color-primary);transform:translateY(-2px)}.thoughts-container{transition:all .3s ease-out;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.thoughts-container.expanded{background-color:color-mix(in srgb,var(--model-bubble-bg) 3%,transparent);border-bottom:1px solid var(--md-sys-color-outline-variant)}.thoughts-expander-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.25rem .5rem;font-weight:700;color:var(--md-sys-color-on-surface-variant);cursor:pointer;background:none;border:none;text-align:left;transition:padding .3s ease-out}.thoughts-container.expanded .thoughts-expander-header{padding:.75rem 1rem}.thinking-text{font-family:"Yozai",var(--font-family-system);font-size:1.1em;color:transparent;-webkit-text-stroke:.5px var(--md-sys-color-on-surface-variant);opacity:.5;transition:all .2s ease;font-weight:700}.thoughts-expander-header:hover .thinking-text{opacity:1;color:var(--md-sys-color-on-surface-variant)}.thoughts-expander-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-out}.thoughts-expander-content.expanded{grid-template-rows:1fr}.thoughts-expander-content .inner-content{overflow:hidden;min-height:0}.thoughts-expander-content .inner-content .markdown-content{padding:0 1rem .75rem;font-size:.9em;color:var(--md-sys-color-on-surface-variant)}.ikun-loading-state{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.75rem}.ikun-loading-copy{display:flex;flex-direction:column;gap:.15rem;line-height:1.5}.ikun-loading-title{color:var(--md-sys-color-on-surface);font-size:.95rem;font-weight:500}.ikun-loading-subtitle{color:var(--md-sys-color-on-surface-variant);font-size:.85rem}.ikun-loading-indicator{width:min(220px,66vw);aspect-ratio:220 / 124;position:relative;display:flex;align-items:center;justify-content:center;color:var(--md-sys-color-on-surface);border-radius:8px;overflow:hidden;background-color:color-mix(in srgb,var(--model-bubble-bg) 18%,transparent)}.ikun-loading-fallback{position:absolute;inset:10px;border-radius:6px;opacity:1;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--md-sys-color-on-surface) 9%,transparent),transparent),repeating-linear-gradient(0deg,color-mix(in srgb,var(--md-sys-color-on-surface) 13%,transparent) 0 1px,transparent 1px 5px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--md-sys-color-on-surface) 10%,transparent) 0 1px,transparent 1px 5px);background-size:65% 100%,100% 100%,100% 100%;background-position:-80% 0,0 0,0 0;transition:opacity .18s ease;animation:ikun-loading-scan .9s linear infinite}.ikun-loading-indicator.is-ready .ikun-loading-fallback{opacity:0}.ikun-loading-canvas{position:relative;width:100%;height:100%;display:block}@keyframes ikun-loading-scan{to{background-position:180% 0,0 0,0 0}}.citations-button{display:flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.875rem;font-weight:500;color:var(--md-sys-color-on-surface-variant);background-color:color-mix(in srgb,var(--md-sys-color-on-surface-variant) 10%,transparent);transition:all .2s ease}.citations-button:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface-variant) 20%,transparent);color:var(--md-sys-color-on-surface)}.citations-button .citation-chevron{transition:transform .3s ease-in-out;transform:rotate(-90deg)}.citations-button.open .citation-chevron{transform:rotate(90deg)}.citations-panel{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem}.citation-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:var(--radius-2xl);text-decoration:none;background-color:color-mix(in srgb,var(--md-sys-color-on-surface-variant) 5%,transparent);transition:background-color .2s ease}.citation-item:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface-variant) 10%,transparent)}.citation-index{flex-shrink:0;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);background-color:var(--md-sys-color-on-surface-variant);color:var(--md-sys-color-surface);font-size:.75rem;font-weight:700;display:grid;place-content:center}.citation-content{flex-grow:1}.citation-title{font-weight:600;color:var(--md-sys-color-on-surface);margin-bottom:.1rem}.citation-uri{font-size:.8rem;color:var(--md-sys-color-on-surface-variant);word-break:break-all}.citation-popover{position:absolute;bottom:.5rem;left:calc(100% + 1rem);width:320px;max-height:90%;overflow-y:auto;max-width:80vw;z-index:20;border-radius:var(--radius-2xl);padding:.75rem;opacity:0;transform:translateY(10px) scale(.98);transform-origin:left center;pointer-events:none;transition:transform .2s ease-out,opacity .2s ease-out}.citation-popover.visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.citation-popover .citations-panel{padding-top:0}.citation-popover .citation-item{background-color:transparent}.citation-popover .citation-item:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface-variant) 15%,transparent)}.message-actions{display:flex;gap:.2rem;opacity:0;margin-top:.5rem;transform:translateY(-5px) scale(.95);pointer-events:none;transition:all .2s ease-out;z-index:5}.group:hover .message-actions{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.action-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);color:var(--md-sys-color-on-surface-variant);background:none;border:none;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:color-mix(in srgb,var(--md-sys-color-primary) 20%,transparent);color:var(--md-sys-color-primary)}.action-btn.danger:hover{background:color-mix(in srgb,var(--md-sys-color-error) 20%,transparent);color:var(--md-sys-color-error)}.message-edit-textarea{width:100%;min-height:400px;background:color-mix(in srgb,var(--glass-bg) 50%,transparent);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--radius-2xl);padding:.75rem 1rem;font-size:1rem;line-height:1.5;font-family:var(--font-family-system);color:var(--md-sys-color-on-surface);resize:vertical;margin-bottom:.5rem}.message-edit-textarea:focus{outline:none;border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--md-sys-color-primary) 40%,transparent)}.message-edit-actions{display:flex;justify-content:flex-end;gap:.5rem}@keyframes message-out{0%{opacity:1;transform:scaleY(1);max-height:500px;margin-top:1rem;margin-bottom:2.5rem}to{opacity:0;transform:scaleY(.8);max-height:0;padding:0;margin:0;overflow:hidden}}.message-row.deleting{transform-origin:center;animation:message-out .35s ease-out forwards}.raw-text-view{white-space:pre-wrap;word-break:break-all;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.9em;line-height:1.6;background:color-mix(in srgb,var(--md-sys-color-on-surface) 3%,transparent);border:1px solid var(--md-sys-color-outline-variant);padding:1rem;border-radius:var(--radius-2xl);color:var(--md-sys-color-on-surface)}.message-row.justify-end .raw-text-view{background:#ffffff1a;border-color:#fff3}.personas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}@media (min-width: 640px){.personas-grid{gap:1.5rem}}@keyframes card-in{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.persona-card{position:relative;display:flex;flex-direction:column;background:var(--glass-bg);border-radius:var(--radius-2xl);border:1px solid var(--md-sys-color-outline-variant);padding:1.5rem;transition:transform .3s ease-out,box-shadow .3s ease-out,border-color .3s ease-out,max-height .35s ease-out,opacity .3s ease-out,padding .35s ease-out,margin .35s ease-out;animation:card-in .4s var(--transition-fluid) backwards;max-height:300px;opacity:1;overflow:hidden}.persona-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px var(--shadow-md);border-color:var(--md-sys-color-primary)}.persona-card-actions{position:absolute;top:1rem;right:1rem;display:flex;gap:.25rem;opacity:0;transition:opacity .2s ease;background-color:color-mix(in srgb,var(--glass-bg) 70%,transparent);border-radius:var(--radius-full);padding:.25rem}.persona-card:hover .persona-card-actions{opacity:1}.persona-card-new{border-style:dashed;cursor:pointer;background:transparent}.persona-card-new:hover{border-color:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}@keyframes card-out-delete{0%{opacity:1;transform:translateY(0) scale(1);max-height:300px}to{opacity:0;transform:translateY(20px) scale(.95);max-height:0;padding:0;border:0}}.persona-card.deleting{animation:card-out-delete .4s ease-out forwards;pointer-events:none}.persona-card.hiding{opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-width:0;pointer-events:none}.persona-editor-container{display:flex;height:100%;background:var(--glass-bg);border-radius:var(--radius-2xl);overflow-y:auto;box-shadow:var(--shadow-md)}@media (min-width: 768px){.persona-editor-container{overflow-y:hidden}}.persona-editor-form-pane{flex:60%;min-width:0;display:flex;flex-direction:column;padding:1.5rem;border-right:1px solid var(--md-sys-color-outline-variant)}.persona-editor-builder-pane{flex:40%;min-width:0}.persona-editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-shrink:0;flex-wrap:wrap;gap:.5rem}.persona-editor-header h2{font-size:1.75rem;font-weight:700}.persona-editor-scroll-area{flex-grow:1;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem;padding-right:1rem;margin-right:-1rem}.persona-editor-scroll-area .form-group label{font-weight:600;margin-bottom:.5rem;display:block}.persona-editor-scroll-area textarea{min-height:120px;resize:vertical}.persona-editor-builder{display:flex;flex-direction:column;height:100%;padding:1.5rem}.builder-chat-area{flex-grow:1;overflow-y:auto;margin-bottom:1rem}.builder-message{padding:.65rem 1rem;border-radius:var(--radius-2xl);max-width:85%;margin-bottom:.75rem;font-size:.95rem;line-height:1.5;animation:message-in .4s var(--transition-fluid) backwards}.builder-message.user{background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface-container);margin-left:auto;border-bottom-right-radius:.5rem}.builder-message.model{background-color:var(--md-sys-color-surface-variant);margin-right:auto;border-bottom-left-radius:.5rem}.applying-changes{display:flex;align-items:center;gap:.5rem;font-style:italic;color:var(--md-sys-color-on-surface-variant)}.applying-changes .spinner-sm{width:1rem;height:1rem;border:2px solid var(--md-sys-color-outline-variant);border-top-color:var(--md-sys-color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.builder-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;color:var(--md-sys-color-on-surface-variant);padding:2rem}.builder-welcome .w-12{width:3rem;height:3rem;margin-bottom:1rem;opacity:.5}.builder-welcome h3{font-size:1.25rem;font-weight:600;color:var(--md-sys-color-on-surface);margin-bottom:.5rem}.archived-chats-list{display:flex;flex-direction:column;gap:.5rem}.archived-chat-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:var(--radius-2xl);background-color:var(--glass-bg);border:1px solid var(--md-sys-color-outline-variant);transition:background-color .3s ease-out,max-height .35s ease-out,opacity .35s ease-out,padding .35s ease-out,margin .35s ease-out;cursor:pointer;animation:history-item-in .4s ease-out backwards;max-height:60px;overflow:hidden;opacity:1}.archived-chat-item:hover{background-color:color-mix(in srgb,var(--md-sys-color-primary) 10%,transparent)}.archived-chat-item-actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}@keyframes archive-item-out-delete{0%{opacity:1;transform:scaleY(1);max-height:60px}to{opacity:0;transform:scaleY(.8);max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;overflow:hidden}}.archived-chat-item.leaving{animation:archive-item-out-delete .35s ease-out forwards;pointer-events:none}.archived-chat-item.hiding{max-height:0;opacity:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-width:0;pointer-events:none}.markdown-content{line-height:1.7;word-wrap:break-word;font-size:inherit}.markdown-content>*:first-child{margin-top:0}.markdown-content>*:last-child{margin-bottom:0}.markdown-content p,.markdown-content ul,.markdown-content ol,.markdown-content blockquote,.markdown-content .code-block-wrapper,.markdown-content table,.markdown-content .mermaid{margin:0 0 1em}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5{margin:1.5em 0 .8em;font-weight:700;line-height:1.3;padding-bottom:.3em;border-bottom:1px solid var(--md-sys-color-outline-variant)}.markdown-content h1{font-size:2em}.markdown-content h2{font-size:1.5em}.markdown-content h3{font-size:1.25em}.markdown-content a{color:var(--md-sys-color-primary);text-decoration:none;font-weight:500}.markdown-content a:hover{text-decoration:underline;text-underline-offset:3px}.message-row.justify-end .markdown-content a{color:inherit;text-decoration:underline}.markdown-content ul,.markdown-content ol{padding-left:2em;list-style-position:outside;display:block}.markdown-content ul{list-style-type:disc}.markdown-content ul ul{list-style-type:circle}.markdown-content ul ul ul{list-style-type:square}.markdown-content ol{list-style-type:decimal}.markdown-content li{margin-bottom:.5em;display:list-item}.markdown-content li>p{margin-bottom:.25em}.markdown-content ul li::marker{color:var(--md-sys-color-on-surface-variant);content:"• "}.markdown-content ol li::marker{color:var(--md-sys-color-on-surface-variant)}.markdown-content blockquote{padding:1rem 1.5rem;border-left:4px solid var(--md-sys-color-primary);background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 3%,transparent);color:var(--md-sys-color-on-surface-variant);border-radius:0 var(--radius-2xl) var(--radius-2xl) 0}.markdown-content blockquote p{margin-bottom:0}.message-row.justify-end .markdown-content blockquote{border-left-color:#ffffffb3;background-color:#ffffff1a}.markdown-content hr{border:none;height:2px;background:linear-gradient(to right,transparent,var(--md-sys-color-outline-variant),transparent);margin:2.5em 0}.markdown-content table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0;border-radius:var(--radius-2xl);overflow:hidden;border:1px solid var(--md-sys-color-outline-variant)}.markdown-content th,.markdown-content td{padding:.75rem 1rem;border-bottom:1px solid var(--md-sys-color-outline-variant)}.markdown-content td{border-right:1px solid var(--md-sys-color-outline-variant)}.markdown-content th:last-child,.markdown-content td:last-child{border-right:0}.markdown-content tr:last-child td{border-bottom:0}.markdown-content th{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 5%,transparent);font-weight:600;text-align:left}.markdown-content tr:nth-child(2n){background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 2%,transparent)}.message-row.justify-end .markdown-content th,.message-row.justify-end .markdown-content tr:nth-child(2n){background-color:#ffffff0d}.message-row.justify-end .markdown-content th,.message-row.justify-end .markdown-content td{border-color:#fff3}.markdown-content code:not([class*=language-]){background:color-mix(in srgb,var(--md-sys-color-primary) 15%,transparent);border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 25%,transparent);padding:.2em .5em;border-radius:.5rem;font-size:.9em;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;color:var(--md-sys-color-primary)}.message-row.justify-end .markdown-content code:not([class*=language-]){background:#ffffff40;border-color:#fff6;color:#fff}.markdown-content .code-block-wrapper{border-radius:var(--radius-2xl);overflow:hidden;background-color:var(--code-bg);border:1px solid var(--md-sys-color-outline-variant)}.markdown-content .code-block-header{display:flex;justify-content:space-between;align-items:center;background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 5%,transparent);padding:.5rem 1rem;font-family:SF Mono,Fira Code,Menlo,Consolas,monospace;font-size:.8em;color:var(--md-sys-color-on-surface-variant)}.message-row.justify-end .code-block-header{background-color:#0003}.markdown-content .code-block-copy-btn{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--md-sys-color-on-surface-variant);padding:.25rem .5rem;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.markdown-content .code-block-copy-btn:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 10%,transparent);color:var(--md-sys-color-on-surface)}.markdown-content pre{margin:0}.markdown-content pre code.hljs{padding:1.25rem;font-size:.9em;line-height:1.6;background:none}.markdown-content img{max-width:100%;border-radius:var(--radius-2xl);margin:1em 0}.markdown-content .task-list-item{list-style-type:none;display:flex;align-items:center;gap:.75em;margin-left:-1em}.markdown-content .task-list-item input[type=checkbox]{-webkit-appearance:none;appearance:none;width:1.25em;height:1.25em;border:2px solid var(--md-sys-color-on-surface-variant);border-radius:.35em;display:inline-block;position:relative;cursor:default;flex-shrink:0;margin-top:.2em}.markdown-content .task-list-item input[type=checkbox]:checked{background-color:var(--md-sys-color-surface-container);border-color:var(--md-sys-color-surface-container)}.markdown-content .task-list-item input[type=checkbox]:checked:before{content:"✔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.9em;color:var(--md-sys-color-on-surface-container)}.message-row.justify-end .markdown-content .task-list-item input[type=checkbox]:checked{background-color:var(--md-sys-color-surface-container);border-color:var(--md-sys-color-surface-container)}.message-row.justify-end .markdown-content .task-list-item input[type=checkbox]:checked:before{color:var(--md-sys-color-on-surface-container)}.katex-display{overflow-x:auto;overflow-y:hidden;padding:.5rem 0}body:not(.dark-mode) .hljs{background:var(--code-bg);color:#383a42}body:not(.dark-mode) .hljs-comment,body:not(.dark-mode) .hljs-quote{color:#a0a1a7;font-style:italic}body:not(.dark-mode) .hljs-doctag,body:not(.dark-mode) .hljs-keyword,body:not(.dark-mode) .hljs-formula{color:#a626a4}body:not(.dark-mode) .hljs-section,body:not(.dark-mode) .hljs-name,body:not(.dark-mode) .hljs-selector-tag,body:not(.dark-mode) .hljs-deletion,body:not(.dark-mode) .hljs-subst{color:#e45649}body:not(.dark-mode) .hljs-literal{color:#0184bb}body:not(.dark-mode) .hljs-string,body:not(.dark-mode) .hljs-regexp,body:not(.dark-mode) .hljs-addition,body:not(.dark-mode) .hljs-attribute,body:not(.dark-mode) .hljs-meta-string{color:#50a14f}body:not(.dark-mode) .hljs-built_in,body:not(.dark-mode) .hljs-class .hljs-title{color:#c18401}body:not(.dark-mode) .hljs-attr,body:not(.dark-mode) .hljs-variable,body:not(.dark-mode) .hljs-template-variable,body:not(.dark-mode) .hljs-type,body:not(.dark-mode) .hljs-selector-class,body:not(.dark-mode) .hljs-selector-attr,body:not(.dark-mode) .hljs-selector-pseudo,body:not(.dark-mode) .hljs-number{color:#986801}body:not(.dark-mode) .hljs-symbol,body:not(.dark-mode) .hljs-bullet,body:not(.dark-mode) .hljs-link,body:not(.dark-mode) .hljs-meta,body:not(.dark-mode) .hljs-selector-id,body:not(.dark-mode) .hljs-title{color:#4078f2}body:not(.dark-mode) .hljs-emphasis{font-style:italic}body:not(.dark-mode) .hljs-strong{font-weight:700}body:not(.dark-mode) .hljs-link{text-decoration:underline}@keyframes toast-in-right{0%{opacity:0;transform:translate(100%) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toast-out-right{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(50%) scale(.9)}}.toast-root-container{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;align-items:flex-end}.toast-item{display:flex;align-items:center;gap:.75rem;width:350px;max-width:90vw;padding:1rem;border-radius:var(--radius-2xl);animation:toast-in-right .4s var(--transition-fluid);transition:transform .4s var(--transition-fluid),opacity .4s ease-out}.toast-item.leaving{animation:toast-out-right .4s ease-out forwards}.toast-icon{flex-shrink:0}.toast-message{flex-grow:1;font-size:.95rem;font-weight:500;color:var(--md-sys-color-on-surface);margin:0;padding:0}.toast-close-btn{background:none;border:none;color:var(--md-sys-color-on-surface-variant);padding:0;margin-left:auto;cursor:pointer;opacity:.7;transition:opacity .2s ease}.toast-close-btn:hover{opacity:1}.message-row{display:flex;flex-direction:column;margin-top:.5rem}.message-row.justify-start{align-items:flex-start}.message-row.justify-end{align-items:flex-end}.message-header{display:flex;align-items:center;gap:10px;margin-bottom:4px}.message-row.justify-start .message-header,.message-row.justify-end .message-header{flex-direction:row}.message-header .w-8{width:20px!important;height:20px!important;background-color:#9ca3af!important}.sender-name{font-size:1rem;font-weight:500;color:var(--md-sys-color-on-surface-variant);white-space:nowrap}.message-row{display:flex;flex-direction:column;margin-top:1rem;align-items:flex-start}@media (min-width: 768px){.message-row.justify-end{align-items:flex-end}}.markdown-content p,.markdown-content div{text-align:left!important}@media (max-width: 640px){.message-header{gap:8px;margin-bottom:3px}.suggestions-container{padding:0 1rem .75rem}}.katex-container .katex{font-size:1em!important}.katex-container .katex-display{display:block;text-align:center;margin:1em 0;overflow-x:auto;overflow-y:hidden;padding:.5rem 0}.katex-container .katex-html{display:block}.katex-container .katex-mathml{position:absolute;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden}body.theme-dark .katex-container .katex,body.theme-apple-dark .katex-container .katex{color:var(--md-sys-color-on-surface)!important}.katex-container .katex-error{color:#c00!important}.katex-container .katex:not(.katex-display){display:inline-block;vertical-align:middle}.katex-container .katex>.katex-html:before{border-color:currentColor}@keyframes apple-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.7}}.sidebar-collapse-transition{transition:width .3s ease-in-out,opacity .3s ease-in-out}.collapsed-sidebar{width:4rem!important}.collapsed-sidebar .sidebar-title,.collapsed-sidebar .sidebar-search,.collapsed-sidebar .sidebar-actions,.collapsed-sidebar .folder-name,.collapsed-sidebar .chat-title,.collapsed-sidebar .new-chat-btn{display:none}.collapsed-sidebar .sidebar-icon{margin:0 auto}.collapsed-sidebar .folder-header{justify-content:center;padding:.6rem .5rem}.collapsed-sidebar .chevron{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(20px) scale(.98)}to{transform:translateY(0) scale(1)}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.modal-content{background-color:var(--surface-color);padding:24px;border-radius:12px;width:90%;max-width:800px;box-shadow:0 10px 25px #0000001a;border:1px solid var(--glass-border);animation:slideIn .3s ease-out}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}@media screen and (min-width: 768px) and (orientation: landscape){.main-layout-container>aside{position:relative!important;transform:none!important;transition:width .3s ease-in-out}}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:300px;transform:translateY(0)}}@keyframes slideUp{0%{opacity:1;max-height:300px;transform:translateY(0)}to{opacity:0;max-height:0;transform:translateY(-10px)}}.filter-panel-enter{animation:slideDown .3s ease-out forwards}.filter-panel-exit{animation:slideUp .3s ease-out forwards}body{--text-color: var(--neu-text);--text-color-secondary: var(--neu-text-muted);--bg-image: var(--neu-base);--glass-bg: var(--neu-surface);--hover-bg: var(--neu-accent-soft);--glass-border: transparent;--border-color: transparent;--background-primary: var(--neu-base);--background-secondary: var(--neu-surface);--background-tertiary: var(--neu-pressed);--md-sys-color-surface: var(--neu-base);--md-sys-color-surface-container-low: var(--neu-base);--md-sys-color-surface-container: var(--neu-surface);--md-sys-color-surface-container-high: var(--neu-pressed);--md-sys-color-on-surface: var(--neu-text);--md-sys-color-on-surface-variant: var(--neu-text-muted);--neu-base: #e0e5ec;--neu-surface: #e0e5ec;--neu-surface-raised: #f0f0f3;--neu-pressed: #d1d9e6;--neu-shadow-dark: #b8bcc2;--neu-shadow-light: #f2f5f8;--neu-text: #333333;--neu-text-muted: #6b7280;--neu-accent-soft: color-mix(in srgb, var(--md-sys-color-primary) 12%, #e0e5ec);--neu-accent-pressed: color-mix(in srgb, var(--md-sys-color-primary) 18%, #d1d9e6);--neu-focus-ring: 0 0 0 3px color-mix(in srgb, var(--md-sys-color-primary) 28%, transparent);--neu-shadow-raised-sm: 4px 4px 8px var(--neu-shadow-dark), -4px -4px 8px var(--neu-shadow-light);--neu-shadow-raised: 6px 6px 12px var(--neu-shadow-dark), -6px -6px 12px var(--neu-shadow-light);--neu-shadow-raised-lg: 10px 10px 20px var(--neu-shadow-dark), -10px -10px 20px var(--neu-shadow-light);--neu-shadow-hover: 4px 4px 8px var(--neu-shadow-dark), -4px -4px 8px var(--neu-shadow-light);--neu-shadow-inset: inset 4px 4px 8px var(--neu-shadow-dark), inset -4px -4px 8px var(--neu-shadow-light);--neu-shadow-inset-deep: inset 8px 8px 16px var(--neu-shadow-dark), inset -8px -8px 16px var(--neu-shadow-light);--neu-radius-control: var(--radius-2xl);--neu-radius-panel: var(--radius-2xl);--neu-panel-bg: var(--neu-surface);--neu-field-bg: var(--neu-pressed);--neu-control-bg: var(--neu-surface);--neu-control-hover-bg: var(--neu-accent-soft);--neu-control-active-bg: var(--neu-accent-pressed);--neu-panel-shadow: var(--neu-shadow-raised);--neu-control-shadow: var(--neu-shadow-raised-sm);--neu-popover-shadow: var(--neu-shadow-raised-lg);--neu-field-shadow: var(--neu-shadow-inset);--neu-field-focus-shadow: var(--neu-shadow-inset-deep), var(--neu-focus-ring);--neu-active-shadow: var(--neu-shadow-inset);--shadow-md: var(--neu-shadow-raised);--accent-color: var(--md-sys-color-primary);--accent-color-text: #ffffff;background-color:var(--neu-base);color:var(--neu-text)}body.theme-apple-dark{--neu-base: #2d333b;--neu-surface: #2d333b;--neu-surface-raised: #343b44;--neu-pressed: #252b32;--neu-shadow-dark: #1c2127;--neu-shadow-light: #3e4651;--neu-text: #f4f6f8;--neu-text-muted: #c1c8d1;--neu-accent-soft: color-mix(in srgb, var(--md-sys-color-primary) 18%, #2d333b);--neu-accent-pressed: color-mix(in srgb, var(--md-sys-color-primary) 24%, #252b32)}body,.h-dvh-screen{background:var(--neu-base)!important}.main-layout-container{background:var(--neu-base)}.main-layout-container>aside .glass-pane{margin:1rem 0 1rem 1rem;height:calc(100% - 2rem)}.glass-pane,.modal-dialog,.toast-item,.persona-editor-container{background:var(--neu-panel-bg)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:0!important;box-shadow:var(--neu-panel-shadow)!important}.chat-header-surface{margin:1rem 1rem .75rem;padding:.75rem;border-radius:var(--radius-2xl);background:var(--neu-panel-bg);box-shadow:var(--neu-panel-shadow)}.chat-input-shell{margin-bottom:.75rem;border-radius:var(--radius-2xl)}.drawer,.modal-content{background:var(--neu-panel-bg)!important;border:0!important;box-shadow:var(--neu-popover-shadow)!important}.modal-backdrop,.drawer-backdrop{background:color-mix(in srgb,var(--neu-text) 22%,transparent)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.user-bubble,.model-bubble{border:0!important;background:var(--neu-panel-bg)!important;box-shadow:var(--neu-control-shadow);color:var(--neu-text)!important}.user-bubble{background:color-mix(in srgb,var(--md-sys-color-primary) 8%,var(--neu-surface))!important}.model-bubble{background:var(--neu-panel-bg)!important}.input-glass,.select-glass,.sidebar-search-input,.raw-text-view,.markdown-content .code-block-wrapper,.markdown-content table,.custom-color-input,textarea:not(.raw-text-view),input[type=text],input[type=password],input[type=number],input[type=url],input[type=search]{background:var(--neu-field-bg)!important;border:0!important;box-shadow:var(--neu-field-shadow)!important;color:var(--neu-text)!important}.input-glass:focus,.select-glass:focus,.sidebar-search-input:focus,textarea:focus,input:focus{outline:none!important;box-shadow:var(--neu-field-focus-shadow)!important}.chat-input-textarea,.chat-input-textarea:focus{background:transparent!important;box-shadow:none!important}.sidebar-search-wrapper,.model-selector-options,.tool-selector-options,.custom-select-option,.model-selector-option{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.model-selector-options,.tool-selector-options{background:var(--neu-panel-bg)!important;border:0!important;box-shadow:var(--neu-panel-shadow)!important;gap:.45rem;padding:.65rem!important}.model-selector-options{display:flex;flex-direction:column}.model-selector-trigger{min-height:3rem;gap:.85rem;padding-inline:1.1rem}.model-selector-option{min-height:3rem;padding:.8rem 1rem}.sidebar-history-list{gap:.55rem!important}.root-drop-zone{display:flex;flex-direction:column;gap:.55rem;padding-block:.35rem}.sidebar-footer-actions{border-top:0;gap:.55rem!important}.btn-outline,.suggestion-chip,.citations-button,.citation-item,.archived-chat-item,.persona-card,.folder-header,.history-item,.model-selector-trigger,.model-selector-option,.custom-select-option,.tool-selector-options,.model-selector-options,.color-palette-option,.custom-color-btn,.builder-message,.pdf-preview,.file-preview,button.neu-button,button:not(.raw-copy-button):not(.code-block-copy-btn){border:0!important;background:var(--neu-control-bg)!important;box-shadow:var(--neu-control-shadow);color:var(--neu-text);transition:box-shadow .2s ease,background-color .2s ease,color .2s ease,opacity .2s ease}button:not(:disabled):hover,.btn-outline:hover,.suggestion-chip:hover,.citations-button:hover,.citation-item:hover,.archived-chat-item:hover,.persona-card:hover,.folder-header:hover,.history-item:hover,.model-selector-trigger:hover,.model-selector-option:hover,.custom-select-option:hover{background:var(--neu-control-hover-bg)!important;box-shadow:var(--neu-shadow-hover);transform:none!important}button:not(:disabled):active,.btn-outline:active,.suggestion-chip:active,.history-item:active,.model-selector-option.active,.model-selector-option[aria-selected=true],.custom-select-option.active,.history-item.active,.drop-target,.switch input:checked+.switch-slider{background:var(--neu-control-active-bg)!important;box-shadow:var(--neu-active-shadow)!important;color:var(--neu-text)!important}.drop-target{outline:0!important}button:focus-visible,a:focus-visible,.model-selector-trigger:focus-visible{outline:none!important;box-shadow:var(--neu-control-shadow),var(--neu-focus-ring)!important}.switch-slider{background:var(--neu-field-bg)!important;box-shadow:var(--neu-field-shadow)!important}.switch-slider:before{background:var(--neu-surface-raised)!important;box-shadow:var(--neu-control-shadow)!important}.switch input:checked+.switch-slider:before{background:var(--md-sys-color-primary)!important}.settings-item,.archived-chat-item,.persona-card{background:var(--neu-panel-bg);border-radius:var(--radius-2xl);padding:1rem;box-shadow:var(--neu-control-shadow)}.settings-section-title{border-bottom:0;letter-spacing:0;text-transform:none}.settings-modal{width:min(960px,calc(100vw - 2rem));max-width:min(960px,calc(100vw - 2rem))!important;height:min(760px,calc(100vh - 2rem));max-height:calc(100vh - 2rem)}.settings-modal-header{align-items:center}.settings-search{width:min(320px,42vw)}.settings-modal-body{display:grid;grid-template-columns:minmax(164px,.28fr) minmax(0,1fr);gap:1rem;overflow:hidden}.settings-nav{display:flex;flex-direction:column;gap:.55rem;min-height:0;overflow-y:auto;padding:.35rem}.settings-nav-item{width:100%;min-height:3rem;justify-content:flex-start!important;gap:.75rem;padding:.8rem .9rem!important;border-radius:var(--radius-2xl);font-weight:650;text-align:left}.settings-nav-item svg,.settings-nav-item .w-4{flex-shrink:0}.settings-nav-item.active{background:var(--neu-control-active-bg)!important;box-shadow:var(--neu-active-shadow)!important;color:var(--neu-text)!important}.settings-content{padding:.35rem .35rem .7rem}.settings-section{display:flex;flex-direction:column;gap:.85rem}.settings-section+.settings-section{margin-top:1.25rem}.settings-subsection{margin-top:1rem;padding-top:1rem}.settings-item{gap:1rem;min-height:4.25rem}.settings-item>div:first-child{min-width:0}.settings-item>:last-child{flex-shrink:0}.settings-group{background:var(--neu-panel-bg);border-radius:var(--radius-2xl);box-shadow:var(--neu-control-shadow);padding:1rem}.settings-group-title{color:var(--neu-text);font-size:1rem;font-weight:700;margin-bottom:.25rem}.thoughts-container.expanded,.dropzone-overlay,.ikun-loading-indicator{background:var(--neu-field-bg)!important;border:0!important;box-shadow:var(--neu-field-shadow)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.markdown-content blockquote,.markdown-content code:not([class*=language-]),.markdown-content th,.markdown-content tr:nth-child(2n),.markdown-content .code-block-header{background:color-mix(in srgb,var(--md-sys-color-on-surface) 4%,var(--neu-surface))!important;border-color:transparent!important}.toast-root-container{filter:none}.page-meter-bar{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding:.55rem .65rem;border-radius:8px;background:color-mix(in srgb,var(--neu-surface) 76%,transparent);box-shadow:var(--neu-inset-shadow);color:var(--text-color-secondary);font-size:.72rem;font-weight:700;line-height:1.25}.page-meter-bar span{min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.charity-ad-widget{position:fixed;right:max(1.25rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:35;display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;color:var(--text-color);pointer-events:auto}.charity-ad-header{display:flex;align-items:center;gap:.35rem;padding-right:.35rem}.charity-ad-title{color:color-mix(in srgb,var(--text-color) 78%,transparent);font-size:.95rem;font-weight:800;line-height:1;text-shadow:0 1px 2px color-mix(in srgb,var(--neu-surface) 80%,transparent)}.charity-ad-dismiss{width:1.25rem!important;height:1.25rem!important;min-width:1.25rem!important;min-height:1.25rem!important;display:grid!important;place-items:center!important;padding:0!important;border:0!important;border-radius:999px!important;background:color-mix(in srgb,var(--neu-surface) 82%,transparent)!important;box-shadow:var(--neu-control-shadow)!important;color:var(--text-color-secondary)!important;cursor:pointer;font-size:.82rem;font-weight:700;line-height:1}.charity-ad-dismiss:hover{color:var(--text-color)!important;background:var(--neu-control-hover-bg)!important}.charity-ad-avatars{display:flex;flex-direction:row-reverse;align-items:center;padding-right:.2rem}.charity-ad-avatar{width:2.35rem;height:2.35rem;display:block;position:relative;margin-left:-.38rem;overflow:hidden;border:2px solid color-mix(in srgb,var(--neu-surface) 90%,white 10%);border-radius:999px;background:var(--neu-surface-raised);box-shadow:0 4px 12px color-mix(in srgb,black 18%,transparent);transition:transform .18s ease,box-shadow .18s ease}.charity-ad-avatar:hover,.charity-ad-avatar:focus-visible{transform:translateY(-3px);box-shadow:0 8px 18px color-mix(in srgb,black 24%,transparent)}.charity-ad-avatar img,.charity-ad-avatar-fallback{width:100%;height:100%;display:grid;place-items:center;object-fit:cover}.charity-ad-avatar-fallback{background:color-mix(in srgb,var(--md-sys-color-primary) 18%,var(--neu-surface));color:var(--text-color);font-size:1rem;font-weight:800}.charity-ad-popover{position:fixed;z-index:99;width:min(352px,calc(100vw - 24px));display:grid;grid-template-columns:6rem minmax(0,1fr);gap:.85rem;padding:.85rem;border-radius:8px;background:var(--neu-panel-bg);box-shadow:var(--neu-shadow-raised);color:var(--text-color)}.charity-ad-popover:after{content:"";position:absolute;right:1.35rem;width:.85rem;height:.85rem;background:var(--neu-panel-bg);transform:rotate(45deg)}.charity-ad-popover[data-placement=top]:after{bottom:-.35rem}.charity-ad-popover[data-placement=bottom]:after{top:-.35rem}.charity-ad-popover-image,.charity-ad-popover-image-fallback{width:6rem;height:7.2rem;border-radius:8px;object-fit:cover;background:var(--neu-field-bg);box-shadow:var(--neu-field-shadow)}.charity-ad-popover-image-fallback{display:grid;place-items:center;color:var(--text-color-secondary);font-size:.85rem;font-weight:700}.charity-ad-popover-body{min-width:0;display:flex;flex-direction:column;gap:.45rem}.charity-ad-popover-name{font-size:.98rem;font-weight:800;line-height:1.25}.charity-ad-popover-meta{display:flex;flex-direction:column;gap:.28rem}.charity-ad-popover-row{min-width:0;display:grid;grid-template-columns:4.25rem minmax(0,1fr);gap:.45rem;font-size:.78rem;line-height:1.35}.charity-ad-popover-label{color:var(--text-color-secondary);font-weight:700}.charity-ad-popover-value{min-width:0;color:var(--text-color)}.charity-ad-popover-value-clamped{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.charity-ad-popover-link{width:fit-content;margin-top:auto;color:var(--md-sys-color-primary);font-size:.82rem;font-weight:800;text-decoration:none}.charity-ad-popover-link:hover{text-decoration:underline}@media (max-width: 760px){.settings-modal{width:calc(100vw - 1rem);height:calc(100vh - 1rem);padding:1rem!important}.settings-modal-header{flex-wrap:wrap}.settings-search{order:3;width:100%}.settings-modal-body{display:flex;flex-direction:column}.settings-nav{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem}.settings-nav-item{width:auto;min-width:max-content;min-height:2.75rem;padding-inline:.95rem!important}.settings-content{padding-right:.15rem}.settings-item{align-items:flex-start;flex-direction:column}.settings-item>:last-child{width:100%}.charity-ad-widget{right:max(.85rem,env(safe-area-inset-right));bottom:max(5.8rem,env(safe-area-inset-bottom))}.charity-ad-title{font-size:.82rem}.charity-ad-avatar{width:2.05rem;height:2.05rem;margin-left:-.32rem}.charity-ad-popover{grid-template-columns:4.8rem minmax(0,1fr);gap:.7rem;padding:.75rem}.charity-ad-popover-image,.charity-ad-popover-image-fallback{width:4.8rem;height:5.8rem}.charity-ad-popover-row{grid-template-columns:3.8rem minmax(0,1fr)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.password-view-container{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#faf9f5;overflow:hidden;padding:2rem}.rain-container{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.rain-drop{position:absolute;top:-30px;width:1px;background:linear-gradient(to bottom,transparent,rgba(139,134,128,.3),transparent);animation:rain-fall linear infinite;will-change:transform}@keyframes rain-fall{0%{transform:translateY(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(100vh);opacity:0}}@media (max-width: 768px){.rain-drop:nth-child(n+16){display:none}}@keyframes text-fade-in-out{0%,to{visibility:hidden;opacity:0}1%{visibility:visible;opacity:0}7%{visibility:visible;opacity:1}15%{visibility:visible;opacity:1}25%{visibility:hidden;opacity:0}}@keyframes wipe-cover{0%,15%,to{transform:scaleX(0)}25%{transform:scaleX(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.poetry-container{position:absolute;bottom:2rem;right:2.5rem;z-index:2;pointer-events:none;display:flex;align-items:center;gap:1rem}.rotating-text-wrapper{position:relative;width:160px;height:1.5rem}.poetry-line{font-family:LXGW WenKai Screen,Source Han Sans,Noto Sans CJK SC,serif;font-size:1rem;color:#8b8680b3;font-weight:300;-webkit-user-select:none;user-select:none;margin:0;position:absolute;right:0;top:0;width:100%;text-align:right;visibility:hidden;animation:text-fade-in-out 16s infinite}.poetry-line:after{content:"";position:absolute;inset:0;background-color:#faf9f5;transform-origin:left;transform:scaleX(0);animation:wipe-cover 16s infinite}.poetry-line-2,.poetry-line-2:after{animation-delay:4s}.poetry-line-3,.poetry-line-3:after{animation-delay:8s}.poetry-line-4,.poetry-line-4:after{animation-delay:12s}.rotating-basketball{animation:spin 4s linear infinite}@media (max-width: 768px){.poetry-container{bottom:1.5rem;right:1.5rem;gap:.75rem}.rotating-text-wrapper{width:140px}.poetry-line{font-size:.875rem}}body.theme-dark .poetry-line:after{background-color:#1c1b19}.login-card{position:relative;z-index:10;width:100%;max-width:420px;background:#faf9f5;border-radius:20px;padding:3rem 2.5rem;box-shadow:0 8px 32px #2b29260f;border:1px solid rgba(227,225,219,.3);animation:card-appear .6s ease-out}@keyframes card-appear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem;gap:1rem}.login-logo{width:100px;height:100px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(43,41,38,.08));transition:transform .3s ease}.login-logo:hover{transform:scale(1.05)}.login-title{font-size:1.75rem;font-weight:400;color:#2b2926;margin:0;letter-spacing:.02em}.input-group{position:relative;margin-bottom:1.5rem}.login-input{width:100%;padding:1rem 3rem 1rem 0;background:transparent;border:none;border-bottom:1px solid #E3E1DB;color:#2b2926;font-size:1rem;transition:border-color .3s ease;outline:none;font-family:inherit}.login-input::placeholder{color:#6b6763;opacity:.8}.login-input:focus{border-bottom-color:#8b8680}.input-submit-icon{position:absolute;top:50%;right:0;transform:translateY(-50%);padding:.5rem;background:transparent;border:none;color:#6b6763;cursor:pointer;transition:color .3s ease;display:flex;align-items:center;justify-content:center}.input-submit-icon:hover{color:#8b8680}.input-submit-icon:active{transform:translateY(-50%) scale(.95)}.error-message{margin:.75rem 0 1rem;font-size:.875rem;color:#c65746;text-align:center;animation:error-shake .4s ease}@keyframes error-shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.remember-me-group{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.remember-checkbox{width:1.125rem;height:1.125rem;border-radius:4px;border:1.5px solid #E3E1DB;background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none;position:relative;transition:all .3s ease;flex-shrink:0}.remember-checkbox:checked{background:#8b8680;border-color:#8b8680}.remember-checkbox:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:6px;border-left:2px solid #FAF9F5;border-bottom:2px solid #FAF9F5;transform:translate(-50%,-60%) rotate(-45deg)}.remember-checkbox:focus{outline:2px solid rgba(139,134,128,.3);outline-offset:2px}.remember-label{font-size:.9375rem;color:#6b6763;font-weight:400;cursor:pointer;-webkit-user-select:none;user-select:none;margin:0}.login-button{width:100%;padding:1rem 1.5rem;background:#8b8680;color:#faf9f5;border:none;border-radius:12px;font-size:1rem;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:opacity .3s ease,transform .15s ease;outline:none;font-family:inherit}.login-button:hover{opacity:.9}.login-button:active{transform:scale(.98)}.login-button:focus-visible{outline:2px solid #8B8680;outline-offset:2px}@media (max-width: 768px){.password-view-container{padding:1.5rem}.login-card{padding:2.5rem 2rem;max-width:100%}.login-logo{width:80px;height:80px}.login-title{font-size:1.5rem}.login-header{margin-bottom:2rem}}@media (max-width: 480px){.login-card{padding:2rem 1.5rem;border-radius:16px}.login-header{gap:.75rem;margin-bottom:1.75rem}.login-logo{width:70px;height:70px}.login-title{font-size:1.375rem}.login-input{font-size:.9375rem;padding:.875rem 2.5rem .875rem 0}.remember-label{font-size:.875rem}.login-button{padding:.875rem 1.25rem;font-size:.9375rem}}@media (prefers-reduced-motion: reduce){.rain-drop,.login-card{animation:none}.poetry-column{transition:none}*{transition-duration:.01ms!important}}@media (prefers-color-scheme: dark){body.theme-dark .password-view-container{background-color:#1c1b19}body.theme-dark .login-card{background:#1c1b19;border-color:#3d3b374d;box-shadow:0 8px 32px #0000004d}body.theme-dark .login-title{color:#e8e6e0}body.theme-dark .login-input{color:#e8e6e0;border-bottom-color:#3d3b37}body.theme-dark .login-input::placeholder{color:#a39f9a}body.theme-dark .login-input:focus{border-bottom-color:#a8a39d}body.theme-dark .remember-label{color:#a39f9a}body.theme-dark .remember-checkbox{border-color:#3d3b37}body.theme-dark .remember-checkbox:checked{background:#a8a39d;border-color:#a8a39d}body.theme-dark .login-button{background:#a8a39d;color:#1c1b19}body.theme-dark .input-submit-icon{color:#a39f9a}body.theme-dark .input-submit-icon:hover{color:#a8a39d}body.theme-dark .rain-drop{background:linear-gradient(to bottom,transparent,rgba(168,163,157,.08),transparent)}body.theme-dark .poetry-column{color:#a8a39d0f}}.login-input:focus,.remember-checkbox:focus,.login-button:focus-visible,.input-submit-icon:focus-visible{outline-offset:2px}@media (prefers-contrast: high){.login-card{border:2px solid #8B8680}.login-input{border-bottom-width:2px}.poetry-column{color:#8b868026}}.password-view-container{background:var(--neu-base, #e8ebef)!important}.login-card{background:var(--neu-surface, #e8ebef)!important;border:0!important;box-shadow:var(--neu-shadow-raised-lg, 12px 12px 24px rgba(120, 126, 135, .22), -12px -12px 24px rgba(255, 255, 255, .86))!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.login-input,.remember-checkbox{background:var(--neu-pressed, #dde2e8)!important;border:0!important;box-shadow:var(--neu-shadow-inset, inset 4px 4px 8px rgba(120, 126, 135, .22), inset -4px -4px 8px rgba(255, 255, 255, .86))!important}.login-input:focus,.remember-checkbox:focus{box-shadow:var(--neu-shadow-inset-deep, inset 6px 6px 12px rgba(120, 126, 135, .24), inset -6px -6px 12px rgba(255, 255, 255, .9)),var(--neu-focus-ring, 0 0 0 3px rgba(139, 134, 128, .22))!important}.input-submit-icon,.login-button{background:var(--neu-surface, #e8ebef)!important;border:0!important;color:var(--md-sys-color-on-surface, #2b2926)!important;box-shadow:var(--neu-shadow-raised-sm, 4px 4px 8px rgba(120, 126, 135, .22), -4px -4px 8px rgba(255, 255, 255, .86))!important}.input-submit-icon:hover,.login-button:hover{background:var(--neu-accent-soft, #e2e4e8)!important;box-shadow:var(--neu-shadow-hover, 5px 5px 10px rgba(120, 126, 135, .22), -5px -5px 10px rgba(255, 255, 255, .86))!important}.input-submit-icon:active,.login-button:active,.remember-checkbox:checked{background:var(--neu-accent-soft, #e2e4e8)!important;box-shadow:var(--neu-shadow-inset, inset 4px 4px 8px rgba(120, 126, 135, .22), inset -4px -4px 8px rgba(255, 255, 255, .86))!important}
