:root{--primary-color:#0084ff;--primary-hover:#0077e6;--bg-dark:#222;--bg-dark-transparent:#222f;--bg-light-transparent:#def3;--bg-lighter-transparent:#def4;--bg-lightest-transparent:#def5;--bg-header-transparent:#def2;--text-light:#fff;--text-muted:#ccc;--text-placeholder:#888;--input-bg:#333;--card-shadow:0px 3px 6px 0 #0004;--inset-shadow:inset 0px 3px 6px 0 #0002;--border-radius-sm:6px;--border-radius:12px;--border-radius-lg:24px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:20px;--spacing-xl:28px;--shadow-light:#0002;--shadow-medium:#0003;--shadow-dark:#0004;--bg-subtle-transparent:#1112;--bg-light-gray-transparent:#1233;--bg-medium-gray-transparent:#1234;--bg-dark-gray-transparent:#1235;--bg-darker-gray-transparent:#1236;--bg-darkest-transparent:#0125;--bg-modal-transparent:#0009;--bg-colorful-transparent:#abf4;--bg-blue-transparent:#336db162;--text-dark:#000;--text-lighter-gray:#eee;--text-medium-gray:#aaa;--text-date-color:#def9;--text-chat-light:#ecf0f1;--text-loading:#fffa;--border-light-transparent:#ccc3;--btn-success-light:#69a3;--btn-success-medium:#69a4;--btn-success-dark:#69a5;--btn-disabled:#69a1;--btn-danger-light:#e53935aa;--btn-danger-dark:#d32f2f;--chat-user-bubble:#f1f0f0;--chat-sidebar-bg:#def1;--chat-item-bg:#1235;--chat-item-hover:#9ac4;--chat-item-active:#336db190;--chat-input-bg:#1238;--fs-xxs:9px;--fs-xs:12px;--fs-sm:14px;--fs-md:16px;--fs-lg:20px;--fs-xl:24px;--fs-md-2:16px;--fs-xs-2:11px;--chat-messages-padding-top:70px;--chat-messages-padding-bottom:150px;--common-input-padding:0.75rem 1rem;--common-border-radius-sm:6px;--common-hover-transform:translateY(-2px) scale(1.1);--messages-padding-top:70px;--messages-padding-bottom:120px;--std-padding:0.75rem 1rem;--std-font-xs:12px;--std-font-sm:14px;--std-font-md:16px;--std-font-lg:20px;--std-font-xl:24px}@media screen and (max-width:1200px){:root{--fs-xxs:7px;--fs-xs:9px;--fs-sm:12px;--fs-md:13px;--fs-lg:16px;--fs-xl:20px;--fs-md-2:15px;--fs-xs-2:9px}}h1{font-size:var(--fs-xl)}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-md)}h4{font-size:var(--fs-sm)}.auth-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--bg-dark-transparent);border-radius:var(--border-radius);box-shadow:var(--card-shadow);overflow:clip}.auth-card .header{display:flex;justify-content:center;align-items:center;font-size:var(--fs-xl);font-weight:700;color:var(--text-light);height:50px;background-color:var(--bg-header-transparent)}.auth-card .content{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-lg) var(--spacing-lg)}.auth-card .status{color:var(--text-light);font-size:var(--fs-sm);margin-bottom:10px;margin-top:var(--spacing-sm);background-color:var(--bg-subtle-transparent);padding:var(--spacing-md);box-shadow:var(--inset-shadow)}.auth-card .status,.auth-form{border-radius:var(--border-radius)}.auth-form{display:flex;flex-direction:column;align-items:center;padding:2rem;background-color:var(--bg-darkest-transparent);box-shadow:0 4px 8px var(--shadow-medium);margin:var(--spacing-md) auto}.auth-form h2{color:var(--text-light);margin-bottom:1rem}.auth-form form{width:100%;display:flex;flex-direction:column}.auth-form label{color:var(--text-muted);margin-bottom:.5rem;font-size:var(--fs-md)}.auth-form input{width:100%;padding:var(--common-input-padding);margin-top:var(--spacing-md);margin-bottom:.75rem;border:none;border-radius:var(--common-border-radius-sm);background-color:var(--input-bg);color:var(--text-light)}.auth-form input::placeholder{color:var(--text-placeholder)}.auth-form button[type=submit]{width:100%;padding:.75rem 1rem;background-color:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .3s ease}.auth-form button[type=submit]:hover{background-color:var(--primary-hover)}.auth-form p{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;margin-top:.5rem}.auth-form p:first-of-type{margin-top:16px}.auth-form button[type=button]{background:none;border:none;color:var(--primary-color);text-decoration:underline;cursor:pointer;font-size:var(--fs-sm)}.auth-form button[type=button]:hover{color:var(--primary-hover)}.login-form{width:500px}.confirm-sign-up-form,.sign-up-form{max-width:500px}.forgot-password-form{max-width:400px}.navbar{z-index:1000;position:absolute;top:0;left:0;width:100svw;height:60px;display:grid;grid-template-columns:auto 5fr 2fr;grid-template-areas:"logo search menu";background-color:var(--bg-header-transparent);-webkit-backdrop-filter:blur(10px) brightness(80%) saturate(120%);backdrop-filter:blur(10px) brightness(80%) saturate(120%);box-shadow:0 3px 4px 0 var(--shadow-dark)}.logo{grid-area:logo;justify-content:left;padding:0 var(--spacing-xl);font-size:24px;color:var(--text-light);-webkit-user-select:none;-moz-user-select:none;user-select:none}.logo,.search-section{display:flex;align-items:center}.search-section{grid-area:search;justify-content:center;font-size:var(--fs-xl)}.search-input{width:100%;height:40px;padding:0 10px;border-radius:var(--border-radius) 0 0 var(--border-radius);border:none;background-color:var(--bg-header-transparent);color:var(--text-light)}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{outline:none}input.search-input{background-color:var(--bg-dark-gray-transparent)}.search-button{width:100px;height:40px;border-radius:0 var(--border-radius) var(--border-radius) 0;border:none;background-color:var(--bg-light-transparent);color:var(--text-light);cursor:pointer;font-size:var(--fs-xs);transition:.2s}.search-button:hover{box-shadow:1px 1px 4px 0 var(--shadow-dark);background-color:var(--bg-lighter-transparent);transform:scale(1.03)}.views{grid-area:menu;display:flex;align-items:center;justify-content:right;padding-left:var(--spacing-xl);font-size:24px}.views-mobile{width:calc(100svw - 12px)}.view-button{padding:0 20px;height:100%;width:95px;border:none;background-color:var(--bg-light-transparent);color:var(--text-light);cursor:pointer;transition:.2s}.view-button.active{background-color:var(--bg-lightest-transparent);transform:translateY(-2px) scale(1.02)}.view-button:hover{background-color:var(--bg-lighter-transparent);transform:translateY(-2px) scale(1.02);box-shadow:0 3px 4px 0 var(--shadow-dark)}.view-button:active{background-color:var(--bg-lightest-transparent);transform:translateY(-2px) scale(1.02)}@media (max-width:900px){.auth-container{transform:translate(-50%,-50%) scale(.9);width:90%;max-width:500px}.edit-note-form,.login-form,.new-note-form,.sign-up-form{width:100%;max-width:500px;min-width:unset}.delete-note-form,.save-chat-form{min-width:100%}.login-form input[type=password],.login-form input[type=text],.login-form label,.sign-up-form input[type=password],.sign-up-form input[type=text],.sign-up-form label{margin-bottom:0}.note-grid{padding-top:110px}.note-grid-header{margin-top:6px}.note-header{grid-template-columns:1fr;grid-template-rows:1fr 20px}.note-date{margin-bottom:20px;padding:var(--spacing-md);font-size:12px}.modal-content{min-width:95%}}.note-grid{height:100svh;padding-top:80px;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg);padding-bottom:var(--spacing-lg);overflow-y:scroll}.note-card{width:100%;height:100%;overflow:clip;border-radius:var(--border-radius);background-color:var(--bg-light-transparent);color:var(--text-light);cursor:pointer;box-shadow:2px 3px 6px 2px var(--shadow-dark);border:1px solid var(--bg-lighter-transparent);transition:.2s}.note-card:hover:not(.full-view):not(.editable){box-shadow:var(--card-shadow);transform:translateY(-2px) scale(1.02)}.note-card.full-view{cursor:default}.chat-container .note-card{height:-moz-fit-content;height:fit-content}.note-header{border-bottom:1px solid var(--shadow-dark);display:grid;grid-gap:var(--spacing-sm);gap:var(--spacing-sm);grid-template-columns:1fr 155px;justify-content:space-between;align-items:center;background-color:var(--bg-header-transparent)}.note-title{font-size:var(--fs-lg);font-weight:700;padding:var(--spacing-sm) var(--spacing-md)}.note-date{font-size:var(--fs-sm);color:var(--text-date-color)}.note-content{font-size:var(--fs-md);padding:10px}.note-footer{min-height:30px;padding-bottom:var(--spacing-sm);display:grid;grid-template-columns:1fr 32px 30px 30px 30px;margin-right:var(--spacing-sm);color:var(--text-light);font-size:var(--fs-sm)}.note-tags{flex-wrap:wrap;justify-content:left;padding-left:10px;gap:5px}.note-tags,.note-tags .tag{display:flex;align-items:center}.note-tags .tag{justify-content:center;height:26px;background-color:var(--bg-light-transparent);color:var(--text-dark);padding:5px 10px;border-radius:var(--border-radius);font-size:14px;transition:.2s}.note-tags .tag:hover{background-color:var(--bg-lighter-transparent);transform:translateY(-2px) scale(1.02);box-shadow:var(--card-shadow)}.note-extra{margin-top:var(--spacing-md);overflow:clip;background-color:var(--bg-darkest-transparent);padding:var(--spacing-md);border-radius:var(--border-radius);font-size:14px;box-shadow:inset 2px 3px 4px 0 var(--shadow-medium)}.note-extra h3{margin-top:var(--spacing-sm);margin-bottom:4px}.youtube-thumbnail{width:100%;max-width:400px;height:150px;object-fit:cover;border-radius:var(--border-radius);background-color:var(--bg-light-transparent);box-shadow:var(--card-shadow);margin-top:var(--spacing-md);transition:.2s}.youtube-thumbnail:hover{transform:scale(1.02)}.todo-list{list-style:none;padding-left:4px;padding-top:4px;margin:0}.todo-list li{display:flex;align-items:center;margin-bottom:var(--spacing-sm)}.todo-list li input[type=checkbox]{margin-right:10px;width:16px;height:16px;cursor:pointer}.todo-list li span{font-size:14px;color:var(--text-light)}.note-view{width:80svw;overflow:clip;display:grid;grid-template-columns:5fr 7fr;grid-gap:var(--spacing-lg);gap:var(--spacing-lg);margin:var(--spacing-lg)}.note-view.mobile{margin-right:0;display:block}.note-view .note-card{width:100%;height:-moz-fit-content;height:fit-content}.current-note,.related-notes{height:80svh;width:100%;overflow-y:auto;display:flex;flex-direction:column;padding:var(--spacing-lg);background-color:var(--bg-dark-gray-transparent);border-radius:var(--border-radius);box-shadow:inset 0 3px 6px 0 var(--shadow-dark)}.modal-content:has(>.note-view){overflow-y:clip}.related-notes .note-card{margin-bottom:24px}.note-card.editable{margin:24px 16px 16px;width:80svw;cursor:default;box-shadow:0 0 0 2px var(--primary-color),2px 3px 6px 2px var(--shadow-dark)}.note-card.editable .note-header{display:grid;grid-template-columns:1fr 155px}.note-card.editable .note-title-input{font-size:var(--fs-lg);font-weight:700;padding:var(--spacing-sm) var(--spacing-md);background-color:transparent;border:none;color:var(--text-light);width:100%}.note-card.editable .note-title-input::placeholder{color:var(--text-lighter-gray)}.note-card.editable .note-title-input:focus{outline:none;border-bottom:1px dashed var(--text-light)}.note-card.editable textarea{width:100%;height:25svh;background-color:transparent;border:none;color:var(--text-light);font-family:inherit;font-size:14px}.note-card.editable textarea::placeholder{color:var(--text-light)}.note-card.editable textarea:focus{outline:none;border-bottom:1px dashed var(--text-light)}.note-card.editable .note-extra input[type=text],.note-card.editable .note-extra textarea{width:100%;background-color:var(--bg-dark-gray-transparent);border:1px solid var(--border-light-transparent);border-radius:var(--border-radius-sm);color:var(--text-light);padding:var(--spacing-sm);margin-top:var(--spacing-xs);margin-bottom:var(--spacing-md)}.note-card.editable .note-type-selection{display:flex;justify-content:center;padding:var(--spacing-md);background-color:var(--bg-header-transparent)}.note-card.editable .note-type-selection select{width:100%;max-width:300px;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-dark-gray-transparent);border:1px solid var(--border-light-transparent);border-radius:var(--border-radius-sm);color:var(--text-light);appearance:none;-webkit-appearance:none;-moz-appearance:none;background-position:right 10px top 50%;background-repeat:no-repeat;padding-right:30px;cursor:pointer;transition:all .2s ease}.note-card.editable .note-type-selection select:focus{outline:none;border:1px solid var(--primary-color);box-shadow:0 0 0 2px var(--primary-color)}.note-card.editable .note-type-selection select:hover{background-color:var(--bg-medium-gray-transparent)}.note-card.editable .note-type-selection select option{padding:var(--spacing-md);background-color:var(--bg-darkest-transparent);color:var(--text-light);font-size:14px}.note-card.editable .note-type-selection select option:checked{background-color:var(--primary-hover);color:var(--text-lighter-gray);font-weight:700}.note-card.editable .note-type-selection select optgroup{background-color:var(--bg-dark-transparent);color:var(--text-muted);font-style:italic}.note-card.editable .note-footer{grid-template-columns:1fr auto;gap:var(--spacing-md);padding-left:var(--spacing-sm);padding-right:var(--spacing-sm);align-items:center}.note-card.editable .note-tags-input{position:relative;width:100%}.note-card.editable .note-tags-input input{width:100%;background-color:transparent;border:none;border-bottom:1px solid var(--border-light-transparent);color:var(--text-light);padding:var(--spacing-xs)}.note-card.editable .note-tags-input input::placeholder{color:var(--text-lighter-gray)}.note-card.editable .note-tags-input input:focus{outline:none;border-bottom:1px solid var(--text-light)}.note-card.editable .note-actions{display:flex;gap:var(--spacing-sm)}.note-card.editable .cancel-button,.note-card.editable .save-button{width:30px;height:30px;background-color:transparent;border:none;color:var(--text-light);display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;cursor:pointer}.note-card.editable .save-button{background-color:var(--btn-success-light)}.note-card.editable .cancel-button{background-color:var(--btn-danger-light)}.note-card.editable .save-button:hover{background-color:var(--btn-success-medium);transform:translateY(-2px) scale(1.1)}.note-card.editable .cancel-button:hover{background-color:var(--btn-danger-dark);transform:translateY(-2px) scale(1.1)}.note-card.editable .save-button:disabled{background-color:var(--btn-disabled);cursor:not-allowed;transform:none}.editable-todo-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.editable-todo-list .subtasks-container{background-color:var(--bg-dark-gray-transparent);border-radius:var(--border-radius-sm);padding:6px;margin-bottom:var(--spacing-sm);margin-right:var(--spacing-sm);box-shadow:inset 0 3px 6px 0 var(--shadow-dark)}.todo-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.note-card:not(editable) .todo-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background-color:transparent!important;border-radius:var(--border-radius-lg);color:var(--text-light)}.todo-list:not(.editable-todo-list) .subtasks-container{position:relative;padding:6px;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);margin-right:var(--spacing-sm);box-shadow:inset 0 3px 6px 0 var(--shadow-dark)}.todo-item,.todo-list:not(.editable-todo-list) .subtasks-container{background-color:var(--bg-dark-gray-transparent);border-radius:var(--border-radius-sm)}.todo-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)}.todo-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.todo-item input[type=text]{flex:1 1;background-color:transparent;border:none;color:var(--text-light);padding:var(--spacing-xs);margin-bottom:6px!important}.todo-item input[type=text]:focus{outline:none;border-bottom:1px dashed var(--text-light)}.todo-item button{width:24px;height:24px;border-radius:50%;background-color:var(--btn-danger-light);border:none;color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px}.todo-item .task-actions{display:flex;gap:var(--spacing-xs)}.add-task-btn{align-self:flex-start;background-color:var(--btn-success-light);border:none;color:var(--text-light);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer;margin-top:var(--spacing-sm)}.add-task-btn:hover{background-color:var(--btn-success-medium)}.upload-image-btn{background-color:var(--btn-success-light);border:none;color:var(--text-light);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer;margin:var(--spacing-sm);margin-left:0}.image-preview{width:-moz-fit-content;width:fit-content;max-width:100%;height:-moz-fit-content;height:fit-content;overflow:clip;border-radius:var(--border-radius);background-color:var(--bg-light-transparent);box-shadow:var(--card-shadow);margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.uploaded-image-preview{max-height:200px;overflow:clip}.loading-indicator{justify-content:center;height:100px;color:var(--text-muted);font-style:italic}.error-message{color:var(--btn-danger-light);font-size:14px;margin-top:var(--spacing-xs)}.thumbnail-preview{display:flex;justify-content:center;margin-top:var(--spacing-sm)}.note-card.editable label{display:flex;flex-direction:column;color:var(--text-muted);font-size:14px;margin-bottom:var(--spacing-sm)}.form-base{display:flex;flex-direction:column;gap:1rem;padding:var(--spacing-md);color:var(--text-light)}.form-base h2{text-align:center;color:var(--text-light)}.form-base label{margin-top:var(--spacing-md);font-size:16px;color:var(--text-lighter-gray);display:flex;flex-direction:column}.form-base input,.form-base textarea{width:100%;padding:.5rem;margin-top:.5rem;border:1px solid var(--border-light-transparent);border-radius:var(--border-radius-sm);background-color:var(--bg-dark-gray-transparent);color:var(--text-lighter-gray);box-shadow:var(--inset-shadow)}.form-base textarea{height:200px}.form-base button{padding:.75rem;border:none;cursor:pointer;font-size:16px;border-radius:var(--border-radius)}.form-base .form-actions{display:flex}.form-base .form-actions button{padding:.75rem;border:none;cursor:pointer;font-size:16px;flex:1 1}.form-base .form-actions button:first-of-type{border-radius:var(--border-radius-sm) 0 0 var(--border-radius-sm)}.form-base .form-actions button:last-of-type{border-radius:0 var(--border-radius-sm) var(--border-radius-sm) 0}.form-base button[type=submit]{background-color:var(--btn-success-light);color:var(--text-light);margin-top:1rem}.form-base button[type=submit]:hover{background-color:var(--btn-success-medium)}.form-base button[type=submit]:disabled{background-color:var(--btn-disabled);color:var(--text-medium-gray);cursor:not-allowed}.form-base button[type=button]{background-color:var(--bg-light-gray-transparent);color:var(--text-lighter-gray)}.form-base button[type=button]:hover{background-color:var(--bg-medium-gray-transparent)}.new-note-form{min-width:700px}.new-note-form .form-actions button[type=button]{margin-top:1rem}.new-note-form .note-type-selection{display:grid;grid-template-columns:repeat(3,1fr)}.new-note-form .note-type-selection button{background-color:var(--bg-medium-gray-transparent);color:var(--text-lighter-gray);padding:var(--spacing-md);border-radius:0}.new-note-form .note-type-selection button:hover{background-color:var(--bg-dark-gray-transparent)}.note-type-selection button.active{background-color:var(--bg-darker-gray-transparent);color:var(--text-light);font-weight:700;border-color:#0056b3}.new-note-form .note-type-selection button:first-of-type{border-radius:var(--border-radius) 0 0 var(--border-radius)}.new-note-form .note-type-selection button:last-of-type{border-radius:0 var(--border-radius) var(--border-radius) 0}.edit-note-form{min-width:700px}.edit-note-form textarea{height:calc(50svh - 200px)}.delete-note-form{min-width:400px;margin:0 auto}.delete-note-form h2{font-size:var(--fs-xl);font-weight:700}.delete-note-form p{text-align:center;font-size:var(--fs-md);margin-bottom:var(--spacing-sm)}.delete-note-form button:first-of-type{background-color:var(--btn-danger-light)}.delete-note-form button:first-of-type:hover{background-color:var(--btn-danger-dark)}.delete-note-form button:last-of-type{background-color:var(--btn-success-medium)}.delete-note-form button:last-of-type:hover{background-color:var(--btn-success-dark)}.save-chat-form{min-width:500px}.save-chat-form .form-group{display:flex;flex-direction:column;margin-top:var(--spacing-md)}.save-chat-form .form-buttons{display:grid;grid-template-columns:1fr 1fr}.save-chat-form .form-buttons button{margin-top:var(--spacing-md)}.save-chat-form .form-buttons button:first-of-type{border-radius:var(--border-radius) 0 0 var(--border-radius)}.save-chat-form .form-buttons button:last-of-type{border-radius:0 var(--border-radius) var(--border-radius) 0}.floating-button{position:fixed;bottom:20px;right:30px;width:50px;height:50px;border-radius:50%;background-color:var(--bg-blue-transparent);color:var(--text-light);font-size:24px;box-shadow:0 2px 10px var(--shadow-dark);z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-button,.floating-button{border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.action-button{height:100%;width:100%;background-color:transparent;border-radius:var(--border-radius);transition:.2s}.action-button:hover{transform:translateY(-2px) scale(1.1)}.chat-button,.delete-button,.edit-button,.makeideaslink-button{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:transparent;cursor:pointer;border:none;border-radius:var(--border-radius);transition:.2s}.chat-button:hover,.delete-button:hover,.edit-button:hover,.makeideaslink-button:hover{transform:var(--common-hover-transform)}.makeideaslink-button{font-size:16px}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:99999;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-content{background-color:var(--bg-colorful-transparent);padding:var(--spacing-lg);border-radius:var(--border-radius);box-shadow:var(--card-shadow);max-width:90%;max-height:90%;animation:fadeIn .3s ease-out;position:relative;box-shadow:0 0 20px var(--shadow-medium);overflow:clip;overflow-y:auto}.close-button{position:absolute;top:10px;right:10px;background-color:transparent;border:none;border-radius:100%;color:var(--text-light);font-size:20px;cursor:pointer;width:30px;height:30px;z-index:1000}.modal-content button:hover{background-color:var(--bg-lightest-transparent)}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999999;display:flex;justify-content:center;align-items:center;background-color:var(--bg-modal-transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.loading-overlay h1{font-size:2rem;color:var(--text-loading)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chat-container.chat-view{position:relative;display:flex;height:100svh;padding-top:60px;width:100%;overflow:hidden}.chat-container.chat-view .chat-sidebar{flex:0 0 400px;background-color:var(--chat-sidebar-bg);height:calc(100%);border-right:1px solid var(--border-light-transparent);display:flex;flex-direction:column;box-shadow:2px 0 8px var(--shadow-medium);z-index:2;overflow:hidden;transition:all .3s ease}.chat-container.chat-view .chat-sidebar.mobile,.chat-container.chat-view .chat-sidebar.tablet{background-color:#234a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;top:0;padding-top:60px;left:0;width:80%;max-width:400px;z-index:10;transform:translateX(-100%);transition:transform .3s ease}.chat-container.chat-view .chat-sidebar.mobile.visible,.chat-container.chat-view .chat-sidebar.tablet.visible{transform:translateX(0)}.chat-container.chat-view .chat-sidebar-header{display:flex;align-items:center;width:100%;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--border-light-transparent);background-color:var(--bg-dark-gray-transparent)}.chat-container.chat-view .chat-sidebar-header h2{color:var(--text-light);font-size:1.2rem;margin:0}.chat-container.chat-view .new-chat-button{width:36px;height:36px;border-radius:50%;background-color:var(--primary-color);color:var(--text-light);border:none;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.chat-container.chat-view .new-chat-button:hover{background-color:var(--primary-hover);transform:scale(1.05)}.chat-container.chat-view .new-chat-button:disabled{background-color:var(--btn-disabled);cursor:not-allowed}.chat-container.chat-view .chat-search{padding:var(--spacing-sm);border-bottom:1px solid var(--border-light-transparent)}.chat-container.chat-view .chat-search input{width:100%;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);border:1px solid var(--border-light-transparent);background-color:var(--chat-input-bg)}.chat-container.chat-view .chat-search input::placeholder{color:var(--text-placeholder)}.chat-container.chat-view .chat-list{flex:1 1;overflow-y:auto;padding:var(--spacing-xs)}.chat-container.chat-view .chat-item{display:flex;align-items:center;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-sm);cursor:pointer;position:relative;transition:all .2s ease;background-color:var(--chat-item-bg);border:1px solid transparent;overflow:hidden}.chat-container.chat-view .chat-item:hover{background-color:var(--chat-item-hover);transform:translateY(-2px)}.chat-container.chat-view .chat-item.active{background-color:var(--chat-item-active);border:1px solid var(--primary-color);color:var(--text-light)}.chat-container.chat-view .chat-icon{flex:0 0 30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md-2);margin-right:var(--spacing-sm);background-color:var(--bg-blue-transparent);border-radius:var(--border-radius-sm)}.chat-container.chat-view .chat-details{flex:1 1;overflow:hidden;display:flex;flex-direction:column}.chat-container.chat-view .chat-title{font-weight:700;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-container.chat-view .chat-preview{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.chat-container.chat-view .chat-date{font-size:var(--fs-xxs);color:var(--text-date-color)}.chat-container.chat-view .chat-actions{margin-left:12px;flex:0 0 60px;display:flex;gap:var(--spacing-xs);opacity:0;transition:opacity .2s ease}.chat-container.chat-view .chat-item:hover .chat-actions{opacity:1}.chat-container.chat-view .chat-actions button{width:24px;height:24px;border-radius:50%;border:none;background-color:var(--bg-blue-transparent);color:var(--text-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease}.chat-container.chat-view .chat-actions .edit-button:hover{background-color:var(--btn-success-medium)}.chat-container.chat-view .chat-actions .delete-button:hover{background-color:var(--btn-danger-light)}.chat-container.chat-view .edit-chat-title{width:100%;display:flex;align-items:center}.chat-container.chat-view .edit-chat-title input{flex:1 1;padding:var(--spacing-xs);border:1px solid var(--primary-color);border-radius:var(--border-radius-sm);background-color:var(--chat-input-bg);color:var(--text-light);margin-right:var(--spacing-sm)}.chat-container.chat-view .edit-actions{display:flex;gap:4px}.chat-container.chat-view .edit-actions button{width:24px;height:24px;border-radius:4px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.chat-container.chat-view .edit-actions button:first-child{background-color:var(--btn-success-medium);color:var(--text-light)}.chat-container.chat-view .edit-actions button:last-child{background-color:var(--btn-danger-light);color:var(--text-light)}.chat-container.chat-view .no-chats{padding:var(--spacing-lg);text-align:center;color:var(--text-muted)}.chat-container.chat-view .chat-main{flex:1 1;display:flex;flex-direction:column;position:relative;height:calc(100%)}.chat-container.chat-view .messages-container{flex:1 1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.mobile .chat-main{margin-top:0!important}.chat-main.desktop .messages-container,.chat-main.tablet .messages-container{padding-top:calc(10px + var(--messages-padding-top));padding-bottom:var(--messages-padding-bottom)}.chat-main.mobile .messages-container{padding-top:var(--messages-padding-top);padding-bottom:var(--messages-padding-bottom)}.chat-container.chat-view .message-bubble{max-width:70%;padding:var(--spacing-md);border-radius:var(--border-radius-sm);box-shadow:0 1px 2px var(--shadow-medium);position:relative;overflow-wrap:break-word}.chat-container.chat-view .message-bubble.user{align-self:flex-end;background-color:#007cf0;border-radius:var(--border-radius-sm) var(--border-radius-sm) 0 var(--border-radius-sm)}.chat-container.chat-view .message-bubble.assistant{align-self:flex-start;background-color:white;color:var(--text-dark);border-radius:var(--border-radius-sm) var(--border-radius-sm) var(--border-radius-sm) 0}.message-bubble.thinking,.modal-content .message-bubble.thinking{background-color:#fff;color:var(--text-dark);font-style:italic;animation:thinking 1.5s infinite}@keyframes thinking{0%{background-color:#fff}50%{background-color:#abc}to{background-color:#fff}}.chat-container.chat-view .message-bubble p:last-child{margin-bottom:0}.chat-container.chat-view .message-bubble code{background-color:var(--bg-darkest-transparent);padding:.15em .3em;border-radius:3px;font-family:monospace;font-size:.9em}.chat-container.chat-view .message-bubble pre{background-color:var(--bg-darkest-transparent);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);overflow-x:auto;margin:var(--spacing-sm) 0}.chat-container.chat-view .message-bubble pre code{background-color:transparent;padding:0}.chat-container.chat-view .input-container{padding:var(--spacing-md);display:flex;gap:var(--spacing-sm);background-color:var(--bg-header-transparent);border-top:1px solid var(--border-light-transparent)}.chat-main.desktop .input-container,.chat-main.mobile .input-container,.chat-main.tablet .input-container{position:absolute;bottom:0;left:0;width:100%;-webkit-backdrop-filter:blur(10px) brightness(60%) saturate(1.5);backdrop-filter:blur(10px) brightness(60%) saturate(1.5)}.chat-container.chat-view .input{flex:1 1;padding:var(--spacing-md);border-radius:var(--border-radius-sm);border:1px solid var(--border-light-transparent);background-color:var(--chat-input-bg);resize:none;min-height:50px}.chat-container.chat-view .input:focus{outline:none;border-color:var(--primary-color)}.chat-container.chat-view .button{margin:2px 0;padding:0 var(--spacing-lg);border-radius:var(--border-radius-sm);border:none;background-color:var(--primary-color);color:var(--text-light);font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center}.chat-container.chat-view .button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-2px)}.chat-container.chat-view .button:disabled{background-color:var(--btn-success-dark);cursor:not-allowed}.chat-container.chat-view .no-chat-selected{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-placeholder);padding:var(--spacing-lg)}.chat-container.chat-view .no-chat-selected p{margin-bottom:var(--spacing-md)}.chat-container.chat-view .toggle-sidebar{position:absolute;top:65px;right:10px;width:40px;height:40px;border-radius:50%;background-color:var(--bg-blue-transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-light);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100}.chat-container.chat-view .chat-sidebar-footer{margin-top:auto;padding:10px;border-top:1px solid #e0e0e0}.chat-container.chat-view .clear-cache-button{width:100%;padding:var(--spacing-md);border-radius:var(--border-radius-sm);background-color:var(--btn-danger-light);color:var(--text-light);font-weight:700;cursor:pointer;transition:all .2s ease}.chat-container.chat-view .clear-cache-button:hover{background-color:var(--btn-danger-dark);transform:translateY(-2px)}.chat-container.chat-view .clear-cache-button:disabled{opacity:.5;cursor:not-allowed}.chat-container.chat-view{padding-top:0}.loading-container p{font-size:18px;color:var(--text-muted);font-style:italic;text-align:center;margin:var(--spacing-md) 0}.message-bubble.system{background-color:var(--bg-header-transparent);font-style:italic;font-size:16px;text-align:center;padding:var(--spacing-sm);border-radius:var(--border-radius-sm)}.desktop .chat-sidebar{padding-top:60px}.notes-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--bg-dark-transparent);border-radius:var(--border-radius);box-shadow:var(--card-shadow);padding:var(--spacing-lg);justify-content:center}.notes-error p{display:flex;justify-content:center}.temporary{margin-top:100px}@media (max-width:900px){.auth-container{transform:translate(-50%,-50%) scale(.9);width:90%;max-width:500px}.edit-note-form,.login-form,.new-note-form,.sign-up-form{width:100%;max-width:500px;min-width:unset}.delete-note-form,.save-chat-form{min-width:100%}.login-form input[type=password],.login-form input[type=text],.login-form label,.sign-up-form input[type=password],.sign-up-form input[type=text],.sign-up-form label{margin-bottom:0}.note-grid{padding-top:110px}.note-header{grid-template-columns:1fr;grid-template-rows:1fr 20px}.note-date{margin-bottom:20px;padding:var(--spacing-md);font-size:12px}.modal-content{min-width:95%}}.navbar-mobile{height:auto;flex-direction:column;grid-template-columns:1fr;grid-template-areas:"menu" "search";padding-bottom:10px}.navbar-tablet{grid-template-columns:3fr auto;grid-template-areas:"search menu";padding:0 15px}.navbar-desktop{padding:0}.search-section-mobile{width:100%;padding:0 10px;margin-top:5px}.views-mobile,.views-tablet{padding-right:0!important;margin-right:-14px}.views-mobile{overflow-x:auto;justify-content:space-between;padding:6px 10px 0;padding-left:8px!important}.views-mobile .view-button{font-size:12px;padding:12px 8px;white-space:nowrap;width:100%}.views-mobile .view-button:first-of-type{border-radius:var(--border-radius) 0 0 var(--border-radius)}.views-mobile .view-button:last-of-type{border-radius:0 var(--border-radius) var(--border-radius) 0}.views-tablet{padding-right:10px}.views-tablet .view-button{font-size:14px;width:auto;padding:0 15px}.tablet .chat-main{margin-left:0}.mobile .chat-main{font-size:14px;margin-left:0;margin-right:-15%;margin-top:30px}@media (max-width:800px){.note-card.editable .note-footer,.note-card.editable .note-header{grid-template-columns:1fr}.note-card.editable .note-actions{justify-content:flex-end;margin-top:var(--spacing-sm)}}@media (max-width:1200px){.chat-container{flex-direction:column}.chat-main{height:70vh}.message-bubble{max-width:85%!important}.messages-container{padding:var(--spacing-md);width:100svw}}.lazy-image-container{min-height:150px;margin-bottom:1rem}.image-placeholder,.lazy-image-container{width:100%;display:flex;justify-content:center;align-items:center}.image-placeholder{flex-direction:column;height:150px;background-color:#f5f5f5;border-radius:8px}.loading-spinner{margin-bottom:10px}.image-error{padding:1rem;color:#ff3333;text-align:center;background-color:#ffeeee;border-radius:8px;width:100%}.note-image{max-height:400px;max-width:100%;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.load-more{display:flex;justify-content:center;align-items:center;margin-top:var(--spacing-lg)}.load-more,.load-more-button{padding:var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer}.load-more-button{background-color:var(--btn-success-light);color:var(--text-light);border:none;transition:.2s}.load-more-button:hover{background-color:var(--btn-success-medium);transform:translateY(-2px) scale(1.02)}.modal-content .chat-container{padding-top:0;position:relative;display:flex;flex-direction:column;width:80svw;min-height:80svh;gap:10px;margin:-19px}.modal-content .sidebar{position:absolute;top:0;left:0;width:500px;height:100%;background-color:var(--bg-darkest-transparent);color:var(--text-chat-light);display:flex;flex-direction:column;padding:1rem;box-shadow:2px 0 8px var(--shadow-medium);overflow-y:clip;border-right:1px solid var(--border-light-transparent)}.modal-content .sidebar-buttons{display:grid;grid-template-columns:1fr 1fr}.modal-content .sidebar-buttons button{background-color:var(--btn-success-light);color:var(--text-light);border:none;padding:10px;cursor:pointer;font-size:16px}.modal-content .sidebar-buttons button:first-of-type{border-radius:var(--border-radius) 0 0 var(--border-radius)}.modal-content .sidebar-buttons button:last-of-type{border-radius:0 var(--border-radius) var(--border-radius) 0}.modal-content .sidebar-buttons button:not(:disabled):hover{background-color:var(--btn-success-medium);transform:translateY(-2px);transition:.2s}.modal-content .chat-main{flex:1 1;display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--border-radius-sm);padding:1rem;color:var(--text-chat-light);margin-left:500px}.modal-content .messages-container{display:flex;flex-direction:column;gap:10px;height:100%}.modal-content .message-bubble{padding:10px;border-radius:var(--border-radius-sm);max-width:80%;word-wrap:break-word}.modal-content .message-bubble:last-child{margin-bottom:18px}.modal-content .assistant{align-self:flex-start;background-color:var(--chat-user-bubble);color:var(--text-dark)}.modal-content .user{align-self:flex-end;background-color:var(--primary-color);color:var(--text-light)}.modal-content .input-container{display:flex;gap:10px}.modal-content .input{flex:1 1;padding:10px;border-radius:var(--border-radius-sm);border:1px solid var(--border-light-transparent)}.modal-content .button{padding:10px 15px;border-radius:var(--border-radius-sm);border:none;background-color:var(--primary-color);color:var(--text-light);cursor:pointer}pre{background-color:#334!important;box-shadow:inset 0 0 20px 8px #000a;overflow:auto;border-radius:var(--border-radius-sm)}pre,pre>div{color:white;font-weight:700}pre>div{font-family:unset!important;font-size:.8em!important;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;overflow-wrap:normal;line-height:1.5;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none;margin:.5em 0;border:none!important;border-radius:.5em;box-shadow:none!important;padding:6px 16px!important;overflow:auto}code,pre>div{text-shadow:none!important;background-color:#223!important;border-radius:var(--border-radius-sm)}code{color:white;font-weight:700;padding:2px 4px!important}pre>div>code{background-color:unset!important;padding:0!important}span.katex-html{overflow-x:scroll}.sentinel-container{display:flex;justify-content:center;align-items:center;padding:2rem 0;width:100%}.loading-indicator{display:flex;flex-direction:column;align-items:center;opacity:.7}.loading-spinner{border-radius:50%;border:4px solid rgba(0,0,0,.1);border-top-color:#3498db;width:30px;height:30px;animation:spin 1s linear infinite;margin-bottom:.5rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.modal-tablet .chat-container{height:80svh}.modal-mobile .chat-main,.modal-tablet .chat-main{height:100%;margin-left:0}.modal-tablet .chat-main .messages-container{width:100%;font-size:14px}.modal-mobile .chat-main .messages-container{width:calc(100svw - 24px);font-size:13px}.modal-tablet .chat-main .input-container{width:calc(100% - 24px);margin-left:12px;margin-right:12px}.modal-mobile .chat-main .input-container{margin-left:12px;width:calc(100svw - 48px)}.modal-mobile .modal-content,.modal-tablet .modal-content{padding:4px}.modal-mobile .current-note,.modal-tablet .current-note{padding:18px}.modal-mobile .note-card.editable,.note-view.mobile{width:calc(100% - 32px)}@media screen and (max-width:1200px){.note-extra{font-size:var(--fs-sm)}code{padding:2px!important}}