:root{--color-bg:#F4ECE2;--color-surface:#F9F3EB;--color-card:#FFFFFF;--color-text:#3E2723;--color-text-dim:#5D4037;--color-primary:#8B4513;--color-primary-light:rgba(139,69,19,0.1);--color-on-primary:#FFFFFF;--color-line:rgba(139,69,19,0.08);--glass-bg:rgba(255,255,255,0.7);--glass-blur:blur(15px);--sidebar-bg:rgba(244,236,226,0.95);--shadow-sm:0 4px 20px rgba(62,39,35,0.05);--pattern-opacity:0.08;--max-width:800px;}[data-theme="dark"]{--color-bg:#120C0B;--color-surface:#1A1211;--color-card:#251B1A;--color-text:#F5E6E3;--color-text-dim:rgba(245,230,227,0.6);--color-primary:#D4A373;--color-primary-light:rgba(212,163,115,0.15);--color-on-primary:#120C0B;--color-line:rgba(245,230,227,0.08);--glass-bg:rgba(26,18,17,0.85);--sidebar-bg:rgba(26,18,17,0.95);--shadow-sm:0 4px 25px rgba(0,0,0,0.3);--pattern-opacity:0.04;}*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;}html{width:100%;height:100%;position:fixed;overflow:hidden;margin:0;padding:0;}body{width:100%;height:100%;overflow:hidden;margin:0;padding:0;}body{font-family:var(--font-main);background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 10l10 10M10 20l10-10M30 10l10 10M30 20l10-10M50 10l10 10M50 20l10-10M70 10l10 10M70 20l10-10M90 10l10 10M90 20l10-10M10 30l10 10M10 40l10-10M30 30l10 10M30 40l10-10M50 30l10 10M50 40l10-10M70 30l10 10M70 40l10-10M90 30l10 10M90 40l10-10M10 50l10 10M10 60l10-10M30 50l10 10M30 60l10-10M50 50l10 10M50 60l10-10M70 50l10 10M70 60l10-10M90 50l10 10M90 60l10-10M10 70l10 10M10 80l10-10M30 70l10 10M30 80l10-10M50 70l10 10M50 80l10-10M70 70l10 10M70 80l10-10M90 70l10 10M90 80l10-10M10 90l10 10M10 100l10-10M30 90l10 10M30 100l10-10M50 90l10 10M50 100l10-10M70 90l10 10M70 100l10-10M90 90l10 10M90 100l10-10' stroke='%238B4513' stroke-width='0.4' fill='none' opacity='0.08'/%3E%3C/svg%3E");background-attachment:fixed;color:var(--color-text);display:flex;flex-direction:column;align-items:center;padding-top:env(safe-area-inset-top);overscroll-behavior:none;}header{width:100%;max-width:var(--max-width);padding:20px 25px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;z-index:100;background:var(--color-bg);box-shadow:0 10px 30px var(--color-bg);position:relative;}.brand{font-weight:700;font-size:0.9rem;letter-spacing:1px;color:var(--color-primary);position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;pointer-events:auto;}.status{display:flex;align-items:center;gap:6px;font-size:0.65rem;color:var(--color-text-dim);font-weight:500;letter-spacing:0.3px;margin-left:auto;}#status-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px;transition:opacity 0.3s ease;}.status-dot{width:6px;height:6px;background-color:#27AE60;border-radius:50%;box-shadow:0 0 8px rgba(39,174,96,0.4);animation:statusPulse 2s infinite;opacity:0;transform:scale(0);transition:opacity 0.3s ease,transform 0.3s ease;}.status.show-dot .status-dot{opacity:1;transform:scale(1);}.streak-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px 2px 5px;background:var(--color-primary-light);border-radius:10px;font-size:0.65rem;font-weight:800;color:var(--color-primary);white-space:nowrap;}.streak-badge.hidden{display:none;}.streak-badge svg{flex-shrink:0;}.status.thinking .status-dot{background-color:#F1C40F;box-shadow:0 0 8px rgba(241,196,15,0.4);animation:statusPulse 0.8s infinite;}.status.thinking #status-text::after{content:'';animation:thinkingDots 1.5s steps(4,end) infinite;}@keyframes thinkingDots{0%{content:'';}25%{content:'.';}50%{content:'..';}75%{content:'...';}100%{content:'';}}@keyframes statusPulse{0%{transform:scale(1);opacity:1;}50%{transform:scale(1.2);opacity:0.5;}100%{transform:scale(1);opacity:1;}}.btn-icon{background:transparent;border:none;cursor:pointer;color:var(--color-primary);padding:5px;transition:0.3s;}.sidebar{position:fixed;top:0;left:-300px;width:300px;height:100vh;height:100dvh;background:var(--sidebar-bg);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);z-index:1000;transition:left 0.4s cubic-bezier(0.4,0,0.2,1);box-shadow:10px 0 30px rgba(0,0,0,0.1);padding:60px 30px 20px;overflow-y:hidden;display:flex;flex-direction:column;}.sidebar.active{left:0;}.sidebar-header{display:flex;flex-direction:column;gap:14px;margin-bottom:0;padding-bottom:14px;border-bottom:1px solid var(--color-line);}.sidebar-header h3{font-size:0.7rem;text-transform:uppercase;letter-spacing:2px;color:var(--color-primary);opacity:0.7;}.btn-new{background:var(--color-primary);color:var(--color-on-primary);border:none;padding:11px 14px;border-radius:10px;font-family:var(--font-main);font-size:0.82rem;font-weight:600;cursor:pointer;transition:0.3s;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;}.btn-new:hover{background:#5D4037;}.sidebar-search{position:relative;display:flex;align-items:center;}.sidebar-search .search-icon{position:absolute;left:10px;color:var(--color-text-dim);opacity:0.5;pointer-events:none;}.sidebar-search input{width:100%;padding:9px 12px 9px 32px;border:1px solid var(--color-line);border-radius:8px;background:var(--color-primary-light);color:var(--color-text);font-family:var(--font-main);font-size:0.78rem;outline:none;transition:border-color 0.3s;}.sidebar-search input:focus{border-color:var(--color-primary);}.sidebar-search input::placeholder{color:var(--color-text-dim);opacity:0.5;}.sidebar-filters{display:flex;gap:6px;padding:0 0 12px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;flex-shrink:0;}.sidebar-filters::-webkit-scrollbar{display:none;}.filter-chip{flex-shrink:0;padding:5px 10px;border-radius:20px;border:1px solid var(--color-line);background:transparent;color:var(--color-text-dim);font-family:var(--font-main);font-size:0.68rem;font-weight:600;cursor:pointer;transition:all 0.2s ease;white-space:nowrap;}.filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary);}.filter-chip.active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary);}.history-list{display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto;margin:10px 0;padding:0 2px 0 0;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color 0.3s;}.history-list.is-scrolling{scrollbar-color:rgba(139,69,19,0.12) transparent;}.history-list::-webkit-scrollbar{width:2px;}.history-list::-webkit-scrollbar-track{background:transparent;}.history-list::-webkit-scrollbar-thumb{background:transparent;border-radius:10px;transition:background 0.3s;}.history-list.is-scrolling::-webkit-scrollbar-thumb{background:rgba(139,69,19,0.12);}.history-item{display:flex;justify-content:space-between;align-items:center;padding:7px 10px;margin:0;border-radius:8px;background:transparent;cursor:pointer;transition:all 0.2s ease;font-size:0.78rem;border:1px solid transparent;}.history-item span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.history-item:hover{background:var(--color-primary-light);border-color:var(--color-line);}.history-actions{position:relative;display:flex;align-items:center;}.btn-more{background:none;border:none;color:var(--color-text-dim);font-size:1.2rem;font-weight:bold;cursor:pointer;padding:0 5px;margin-left:5px;transition:color 0.3s;}.btn-more:hover{color:var(--color-primary);}.history-dropdown{position:absolute;right:0;top:100%;background:var(--color-bg);border:1px solid var(--color-line);border-radius:6px;box-shadow:0 4px 12px rgba(62,39,35,0.15);z-index:100;min-width:120px;overflow:hidden;}.history-dropdown.hidden{display:none;}.dropdown-item{padding:10px 15px;font-size:0.8rem;cursor:pointer;transition:background 0.2s;font-family:var(--font-main);}.dropdown-item:hover{background:rgba(139,69,19,0.05);}.text-danger{color:#E74C3C;}.sidebar-footer{width:100%;padding-top:12px;border-top:1px solid var(--color-line);margin-top:auto;display:flex;flex-direction:column;gap:8px;}.btn-settings{width:100%;background:rgba(139,69,19,0.05);border:1px solid rgba(139,69,19,0.1);color:var(--color-primary);padding:12px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:all 0.3s;}.btn-settings:hover{background:rgba(139,69,19,0.1);}.reply-preview-close:active{background:rgba(229,57,53,0.2);}.preview-area{display:flex;gap:10px;padding:0 16px;margin-bottom:10px;overflow-x:auto;scrollbar-width:none;}.preview-area::-webkit-scrollbar{display:none;}.preview-item{position:relative;width:60px;height:60px;border-radius:8px;background:var(--color-surface);border:1px solid rgba(0,0,0,0.1);box-shadow:0 2px 4px rgba(0,0,0,0.05);flex-shrink:0;overflow:visible;}[data-theme="dark"] .preview-item{border-color:rgba(255,255,255,0.1);}.preview-item img,.preview-item .pdf-icon{width:100%;height:100%;object-fit:cover;border-radius:8px;}.preview-item .pdf-icon{display:flex;align-items:center;justify-content:center;background:#FFEBEE;color:#D32F2F;font-size:24px;font-weight:bold;}[data-theme="dark"] .preview-item .pdf-icon{background:rgba(211,47,47,0.2);}.preview-item-close{position:absolute;top:-6px;right:-6px;width:20px;height:20px;background:#E53935;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 4px rgba(0,0,0,0.2);border:none;z-index:10;}.preview-item-close svg{width:12px;height:12px;}.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.1);display:none;z-index:999;pointer-events:auto;cursor:pointer;}.overlay.active{display:block;opacity:1;}main{flex:1;width:100%;max-width:var(--max-width);overflow-y:auto;padding:20px 20px 15px;display:flex;flex-direction:column;gap:25px;overflow-x:hidden;}html,body,.sidebar,.dashboard-main{scrollbar-width:thin;scrollbar-color:rgba(139,69,19,0.4) transparent;}main#chat{scrollbar-width:none;-ms-overflow-style:none;}main#chat::-webkit-scrollbar{display:none;}::-webkit-scrollbar{width:8px;}.msg{max-width:85%;display:flex;flex-direction:column;gap:8px;animation:bubbleAppear 0.5s cubic-bezier(0.16,1,0.3,1) forwards;position:relative;}@keyframes bubbleAppear{from{opacity:0;transform:translateY(12px) scale(0.98);}to{opacity:1;transform:translateY(0) scale(1);}}.msg.ai{align-self:flex-start;}.msg.user{align-self:flex-end;}.msg-text{font-size:1rem;line-height:1.6;padding:18px 24px;border-radius:24px;box-shadow:var(--shadow-sm);position:relative;word-wrap:break-word;white-space:pre-wrap;}.ai .msg-text{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-line);border-bottom-left-radius:6px;}.user .msg-text{background:var(--color-primary);color:var(--color-on-primary);border-bottom-right-radius:6px;box-shadow:0 4px 15px rgba(139,69,19,0.1);}.msg-text strong{font-weight:700;}.user .msg-text strong{color:inherit;filter:none;}.msg-sub{font-size:0.8rem;color:var(--color-text-dim);opacity:0.5;margin-top:4px;padding:0 12px;}.msg-feedback{display:flex;align-items:center;gap:2px;padding:0 6px;opacity:1;}.feedback-btn{display:flex;align-items:center;gap:5px;background:transparent;border:none;cursor:pointer;color:var(--color-text-dim);opacity:0.45;padding:5px 7px;border-radius:8px;transition:all 0.2s cubic-bezier(0.4,0,0.2,1);font-family:var(--font-main);}.feedback-btn:hover{opacity:1;background:var(--color-primary-light);color:var(--color-primary);transform:scale(1.08);}.feedback-btn:active{transform:scale(0.93);}.feedback-copy-label{font-size:0.62rem;font-weight:600;letter-spacing:0.3px;white-space:nowrap;}.feedback-divider{width:1px;height:14px;background:var(--color-line);margin:0 3px;opacity:0.6;}.feedback-btn.feedback-active{opacity:1;color:var(--color-primary);background:var(--color-primary-light);}.feedback-btn.feedback-active svg{fill:var(--color-primary);stroke:var(--color-primary);}.feedback-btn.feedback-inactive{opacity:0.2;pointer-events:none;}.feedback-btn.feedback-copied{opacity:1;color:var(--color-primary);background:var(--color-primary-light);}@keyframes msgShake{0%,100%{transform:translateX(0);}20%{transform:translateX(-5px);}40%{transform:translateX(5px);}60%{transform:translateX(-4px);}80%{transform:translateX(4px);}}.msg.user.msg-failed .msg-text{opacity:0.65;border:1.5px solid hsl(25,80%,58%);box-shadow:0 2px 12px hsla(25,80%,58%,0.25);animation:msgShake 0.45s ease forwards;}.msg.user.msg-offline-pending .msg-text{opacity:0.7;border:1.5px solid hsl(35,90%,55%);box-shadow:0 2px 12px hsla(35,90%,55%,0.2);}.offline-pending-badge{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:-2px;padding:0 6px;animation:bubbleAppear 0.3s ease forwards;font-size:0.7rem;color:hsl(35,90%,55%);font-family:var(--font-main);font-weight:600;}.msg-error-badge{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:-2px;padding:0 6px;animation:bubbleAppear 0.3s ease forwards;}.msg-error-badge span{font-size:0.7rem;color:hsl(25,70%,55%);font-family:var(--font-main);font-weight:500;white-space:nowrap;}.btn-retry{background:hsla(25,80%,55%,0.12);border:1px solid hsla(25,80%,55%,0.4);color:hsl(25,80%,45%);font-family:var(--font-main);font-size:0.68rem;font-weight:700;padding:4px 10px;border-radius:20px;cursor:pointer;transition:all 0.2s cubic-bezier(0.4,0,0.2,1);white-space:nowrap;letter-spacing:0.3px;}.btn-retry:hover{background:hsla(25,80%,55%,0.22);border-color:hsl(25,80%,45%);transform:scale(1.05);}.btn-retry:active{transform:scale(0.96);}.slow-network-hint{font-size:0.72rem;color:hsl(40,70%,50%);font-family:var(--font-main);text-align:center;padding:6px 14px;animation:bubbleAppear 0.4s ease forwards;font-style:italic;opacity:0.85;}[data-theme="dark"] .msg.user.msg-failed .msg-text{border-color:hsl(25,70%,65%);}[data-theme="dark"] .msg-error-badge span{color:hsl(25,70%,65%);}[data-theme="dark"] .msg.user.msg-offline-pending .msg-text{border-color:hsl(35,80%,50%);}[data-theme="dark"] .offline-pending-badge{color:hsl(35,80%,50%);}[data-theme="dark"] .btn-retry{color:hsl(25,70%,65%);border-color:hsla(25,70%,65%,0.4);background:hsla(25,70%,65%,0.1);}[data-theme="dark"] .slow-network-hint{color:hsl(40,65%,60%);}footer{width:100%;max-width:var(--max-width);padding:20px;flex-shrink:0;z-index:100;background:var(--color-bg);box-shadow:0 -10px 30px var(--color-bg);overflow:visible;position:relative;}.input-row{display:flex;align-items:center;gap:12px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--color-line);border-radius:30px;padding:2px 8px 2px 18px;box-shadow:0 10px 40px rgba(0,0,0,0.1);transition:all 0.3s ease;}.input-row:focus-within{border-color:var(--color-primary);box-shadow:0 10px 50px rgba(139,69,19,0.15);}textarea#input{flex:1;border:none;background:transparent;font-family:var(--font-main);font-size:0.95rem;color:var(--color-text);outline:none;resize:none;padding:8px 0;margin:0;line-height:1.3;max-height:120px;min-height:36px;overflow-y:hidden;}textarea#input::placeholder{font-size:0.82rem;color:var(--color-text-dim);opacity:0.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}textarea#input::-webkit-scrollbar{width:4px;}textarea#input::-webkit-scrollbar-thumb{background:rgba(139,69,19,0.15);border-radius:10px;}input::placeholder{color:var(--color-text-dim);opacity:0.6;}input:focus{color:var(--color-text);}input:focus::placeholder{opacity:0.4;}.btn{background:transparent;border:none;cursor:pointer;font-size:0.75rem;font-weight:700;color:var(--color-text-dim);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:4px;}.btn:hover{color:var(--color-primary);background:rgba(139,69,19,0.08);transform:scale(1.08);}#send{width:36px;height:36px;min-width:36px;background:var(--color-primary);color:var(--color-on-primary);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s cubic-bezier(0.4,0,0.2,1);margin-left:4px;flex-shrink:0;padding:0;}#send svg{stroke:var(--color-on-primary);flex-shrink:0;}#send:hover{background:#5D4037;transform:scale(1.08);}#send:active{transform:scale(0.95);background:#4E342E;}#send:disabled{opacity:0.4;cursor:not-allowed;transform:none;}[data-theme="dark"] #send{background:var(--color-primary);}[data-theme="dark"] #send:hover{background:#C49563;}.btn-plus{display:flex;width:32px;height:32px;min-width:32px;min-height:32px;background:transparent;color:var(--color-primary);border:none;border-radius:50%;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);margin-right:4px;flex-shrink:0;padding:0;}.btn-plus:hover{background:var(--color-primary-light);}.btn-plus.active{transform:rotate(45deg);color:var(--color-text-dim);}.btn-plus svg{transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);}.plus-menu{position:absolute;bottom:calc(100% + 6px);left:12px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-line);border-radius:14px;padding:8px 6px 6px;box-shadow:0 4px 16px rgba(0,0,0,0.08);z-index:200;display:flex;gap:2px;opacity:1;transform:translateY(0);transition:opacity 0.2s ease,transform 0.2s ease;}.plus-menu.hidden{opacity:0;transform:translateY(8px);pointer-events:none;display:flex;}.plus-menu-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 12px;border-radius:10px;cursor:pointer;transition:background 0.15s ease;}.plus-menu-item:hover{background:var(--color-primary-light);}.plus-menu-item:active{transform:scale(0.95);}.plus-menu-item span{font-size:0.6rem;font-weight:600;color:var(--color-text-dim);white-space:nowrap;letter-spacing:0.2px;}.plus-menu-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;}.plus-menu-icon svg{width:18px;height:18px;}#plus-camera .plus-menu-icon{background:rgba(76,175,80,0.12);}#plus-camera .plus-menu-icon svg{stroke:#4CAF50;}#plus-gallery .plus-menu-icon{background:rgba(156,39,176,0.12);}#plus-gallery .plus-menu-icon svg{stroke:#9C27B0;}#plus-document .plus-menu-icon{background:rgba(33,150,243,0.12);}#plus-document .plus-menu-icon svg{stroke:#2196F3;}@media (max-width:992px){#send{width:34px;height:34px;min-width:34px;min-height:34px;aspect-ratio:1/1;padding:0;border-radius:50%;}.btn-plus{display:flex;}}.btn.listening{color:#E74C3C;animation:pulse 2s infinite;}@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.6;}}.btn-minimal-arrow{background:transparent;border:none;color:var(--color-text-dim);padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0.6;transition:all 0.3s ease;border-radius:50%;}.btn-minimal-arrow:hover{opacity:1;color:var(--color-primary);background:rgba(139,69,19,0.05);}.btn-minimal-arrow svg{transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);}.btn-minimal-arrow.open svg{transform:rotate(180deg);}.subject-chips-container{position:absolute;bottom:120%;left:50%;max-width:calc(100vw - 40px);display:flex;gap:8px;overflow-x:auto;padding:12px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--color-line);border-radius:12px;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);-ms-overflow-style:none;scrollbar-width:none;z-index:20;}.subject-chips-container.show{opacity:1;visibility:visible;transform:translate(-50%,0);}.subject-chips-container::-webkit-scrollbar{display:none;}.subject-chip{flex-shrink:0;padding:8px 16px;border-radius:20px;background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-text-dim);font-size:0.8rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);user-select:none;}.subject-chip:hover{background:rgba(139,69,19,0.1);color:var(--color-primary);transform:translateY(-2px);}.subject-chip.active{background:var(--color-primary);color:var(--color-on-primary);font-weight:700;border-color:var(--color-primary);box-shadow:0 4px 12px rgba(139,69,19,0.2);}.searching-indicator{display:flex;align-items:center;gap:10px;margin-bottom:20px;animation:fadeIn 0.4s ease;}.searching-indicator span{width:12px;height:12px;border:2px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite;}@keyframes spin{to{transform:rotate(360deg);}}#wave{height:1px;width:0%;background:var(--color-primary);transition:width 0.4s ease;margin-top:15px;opacity:0.6;}@media (max-width:992px){*{-webkit-tap-highlight-color:transparent;}body{overflow:hidden;display:flex;flex-direction:column;}.dashboard-layout{flex-direction:column;}.dashboard-sidebar{position:fixed;bottom:0;left:0;width:100vw !important;height:auto;flex-direction:row !important;padding:0;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--color-line);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);z-index:10000;transition:transform 0.4s cubic-bezier(0.16,1,0.3,1);}.dashboard-sidebar.nav-hidden{transform:translateY(100%);}#close-settings.nav-hidden,.btn-close-dash.nav-hidden{transform:scale(0) !important;opacity:0 !important;}.btn-close-dash{transition:all 0.4s cubic-bezier(0.16,1,0.3,1) !important;}.dash-sidebar-header{position:static !important;display:block !important;height:0 !important;padding:0 !important;margin:0 !important;border:none !important;}.dash-logo{display:none !important;}.dash-nav{flex:1 !important;display:flex !important;flex-direction:row !important;padding:0 !important;justify-content:space-around !important;align-items:center !important;gap:0 !important;}.dash-nav-item{flex:1 !important;padding:6px 2px !important;flex-direction:column !important;gap:2px !important;font-size:0.6rem !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;}.dash-nav-item span{display:block !important;opacity:0.8;}.dash-nav-item svg{width:20px !important;height:20px !important;}.dash-nav-item.active{color:var(--color-primary);font-weight:800;}#close-settings,.btn-close-dash{position:fixed !important;bottom:calc(80px + env(safe-area-inset-bottom)) !important;right:15px !important;z-index:10001 !important;background:var(--color-primary) !important;color:white !important;border:1px solid rgba(0,0,0,0.15) !important;border-radius:50%;width:38px;height:38px;display:flex !important;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,0.15);transition:all 0.4s cubic-bezier(0.16,1,0.3,1) !important;}#close-settings.nav-hidden,.btn-close-dash.nav-hidden{transform:translateY(100px) !important;opacity:0 !important;}.dashboard-layout,.dashboard-main,.dash-section,.settings-grid{width:100% !important;max-width:100% !important;margin:0 !important;box-sizing:border-box !important;overflow-x:hidden !important;}.dashboard-main{padding:20px 15px calc(130px + env(safe-area-inset-bottom)) !important;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;display:block !important;}.dash-section{min-width:0 !important;flex-shrink:1 !important;}.settings-card{width:100% !important;max-width:100% !important;margin-bottom:15px !important;padding:18px !important;box-sizing:border-box !important;border-radius:20px !important;}.persona-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr)) !important;gap:10px !important;width:100% !important;}.persona-card{width:100% !important;min-width:0 !important;padding:12px !important;}.input-group input,.input-group select,.input-group label{width:100% !important;max-width:100% !important;box-sizing:border-box !important;white-space:normal !important;}.profile-summary{width:100% !important;overflow:hidden !important;}.profile-info{min-width:0 !important;}.profile-info p{word-break:break-all !important;font-size:0.8rem !important;}.switch-row{width:100% !important;display:flex !important;justify-content:space-between !important;align-items:center !important;gap:10px !important;box-sizing:border-box !important;}.switch-info{min-width:0 !important;flex:1 !important;}.switch-info span,.switch-info p{white-space:normal !important;}.vault-empty{padding:15px !important;text-align:center !important;}.vault-empty p{font-size:0.8rem !important;white-space:normal !important;}.persona-icon{width:36px !important;height:36px !important;margin-bottom:8px !important;}.theme-preview{height:50px !important;}.dash-pricing-grid{grid-template-columns:1fr;}header{padding:12px 16px 8px;padding-top:max(12px,env(safe-area-inset-top));}.brand{font-size:0.75rem;}.status{font-size:0.6rem;gap:4px;}.status-dot{width:4px;height:4px;}main{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 16px;gap:16px;}.msg{max-width:95%;}.msg-text{font-size:0.9rem;line-height:1.4;}.user .msg-text{padding:14px 18px;border-radius:20px;border-bottom-right-radius:4px;}.ai .msg-text{padding:14px 18px;border-radius:20px;border-bottom-left-radius:4px;}footer{padding:8px 12px;padding-bottom:max(8px,env(safe-area-inset-bottom));position:relative;width:100%;max-width:var(--max-width);z-index:100;background:var(--color-bg);border-top:1px solid var(--color-line);flex-shrink:0;}.input-row{gap:12px;padding:10px 14px 10px 20px;border-radius:30px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid rgba(255,255,255,0.5);box-shadow:0 8px 30px rgba(0,0,0,0.08);}textarea#input{font-size:16px !important;padding:10px 0;min-height:unset;line-height:1.4;}input{font-size:16px !important;}.btn{font-size:0.65rem;min-width:44px;min-height:44px;padding:10px 8px;}.subject-chips-container{bottom:calc(100% - 8px);margin-bottom:0;padding:10px;left:12px;transform:translate(0,10px);}.subject-chips-container.show{transform:translate(0,0);}.subject-chip{padding:6px 12px;font-size:0.75rem;}.sidebar{width:80vw;max-width:280px;left:-280px;}.sidebar-header{padding:16px;}.sidebar-header h3{font-size:0.65rem;}.btn-new{padding:10px;font-size:0.75rem;min-height:44px;}.history-item{font-size:0.85rem;padding:10px 12px;}.modal-header h3{font-size:1rem;}.setting-group label{font-size:0.85rem;}.setting-group input{font-size:16px;padding:10px 12px;min-height:44px;}.btn-danger,.btn-new{font-size:0.8rem;min-height:44px;padding:10px 16px;}.sidebar.active{left:0;transform:translateX(0);box-shadow:15px 0 40px rgba(0,0,0,0.1);}.overlay.active{display:block;opacity:1;}.overlay{backdrop-filter:blur(2px);}body.sidebar-open{overflow:hidden;}}@media (min-width:481px) and (max-width:768px){header{padding:30px 20px 20px;}main{padding:15px 20px;gap:20px;}.msg-text{font-size:0.95rem;}footer{padding:15px;position:relative;background:var(--color-bg);border-top:1px solid var(--color-line);flex-shrink:0;}.input-row{gap:12px;padding:10px 18px;}input{font-size:16px;min-height:44px;}.btn{font-size:0.7rem;min-height:44px;min-width:44px;}.subject-menu{width:auto;max-width:550px;}.subject-item{padding:10px 14px;font-size:0.8rem;}}@media (max-height:500px) and (orientation:landscape){header{padding:8px 16px;}.brand{font-size:0.7rem;}main{padding:8px 16px;}footer{padding:6px 12px;}.input-row{padding:6px 12px;gap:6px;}.btn{min-height:40px;}}.thought-log{padding:0 25px;opacity:0.7;margin-bottom:10px;height:20px;display:none;align-items:center;gap:10px;}.thought-log::before{content:"";width:6px;height:6px;background:var(--color-primary);border-radius:50%;animation:pulse 1s infinite alternate;}@keyframes pulse{from{opacity:0.3;}to{opacity:1;}}.msg-context-menu{position:fixed;z-index:20000;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-line);border-radius:14px;padding:6px;min-width:160px;box-shadow:0 8px 32px rgba(0,0,0,0.15);animation:ctxFadeIn 0.15s ease-out;}.msg-context-menu.hidden{display:none;}@keyframes ctxFadeIn{from{opacity:0;transform:scale(0.95) translateY(-4px);}to{opacity:1;transform:scale(1) translateY(0);}}.ctx-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;font-size:0.78rem;font-weight:500;color:var(--color-text);cursor:pointer;transition:background 0.15s;}.ctx-item:hover{background:var(--color-primary-light);}.ctx-item:active{background:var(--color-primary);color:var(--color-on-primary);}.ctx-item svg{flex-shrink:0;opacity:0.6;}.msg.ctx-active{position:relative;z-index:10001;transform:scale(1.02);box-shadow:0 12px 40px rgba(0,0,0,0.2);transition:all 0.25s cubic-bezier(0.2,0,0,1);border-radius:16px;}#chat.ctx-blur::before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.15);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:10000;animation:ctxFadeIn 0.2s ease-out;}.reply-preview{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;margin:0 0 6px;background:var(--color-primary-light);border-left:3px solid var(--color-primary);border-radius:0 10px 10px 0;animation:replySlideIn 0.2s ease-out;}.reply-preview.hidden{display:none;}@keyframes replySlideIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}.reply-preview-content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}.reply-preview-label{font-size:0.65rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:0.5px;}.reply-preview-text{font-size:0.75rem;color:var(--color-text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.reply-preview-close{background:none;border:none;color:var(--color-text-dim);cursor:pointer;padding:4px;opacity:0.5;transition:opacity 0.2s;flex-shrink:0;}.reply-preview-close:hover{opacity:1;}body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain;}.loading-dots{display:inline-flex;align-items:center;gap:3px;margin-left:8px;vertical-align:middle;}.dot{width:5px;height:5px;background-color:var(--color-primary);border-radius:50%;animation:dotBounce 1.4s infinite ease-in-out both;}.dot:nth-child(1){animation-delay:-0.32s;}.dot:nth-child(2){animation-delay:-0.16s;}@keyframes dotBounce{0%,80%,100%{transform:scale(0);opacity:0.3;}40%{transform:scale(1.2);opacity:1;}}.msg-text{transition:all 0.3s ease;}.suggestions{display:flex;gap:10px;padding:10px 20px;overflow-x:auto;scrollbar-width:none;margin-bottom:5px;}.suggestions::-webkit-scrollbar{display:none;}.chip{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);color:var(--color-text);padding:8px 16px;border-radius:20px;font-size:0.85rem;white-space:nowrap;cursor:pointer;transition:all 0.3s ease;backdrop-filter:blur(5px);}.chip:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary) !important;transform:translateY(-2px);}.thinking-dots{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;gap:8px !important;padding:10px 0 !important;align-items:center !important;width:fit-content !important;}.dot{display:inline-block !important;width:8px !important;height:8px !important;background:var(--color-primary) !important;border-radius:50% !important;animation:bounce 1.4s infinite ease-in-out both !important;opacity:0.6 !important;}.dot:nth-child(1){animation-delay:-0.32s;}.dot:nth-child(2){animation-delay:-0.16s;}@keyframes bounce{0%,80%,100%{transform:scale(0);}40%{transform:scale(1.0);}}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.4);display:none;align-items:center;justify-content:center;z-index:20000;backdrop-filter:blur(5px);}.modal.active{display:flex;}.modal-content{background:var(--color-card);width:90%;max-width:400px;border-radius:20px;padding:30px;box-shadow:var(--shadow-sm);animation:modalIn 0.3s ease;}@keyframes modalIn{from{opacity:0;transform:scale(0.9);}to{opacity:1;transform:scale(1);}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;}.modal-header h3{font-size:0.9rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-primary);}.btn-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-dim);}.setting-group{margin-bottom:20px;}.setting-group label{display:block;font-size:0.75rem;font-weight:700;text-transform:uppercase;margin-bottom:8px;color:var(--color-primary);opacity:0.7;}.setting-group input{width:100%;padding:12px;border-radius:10px;border:1px solid var(--color-line);background:var(--color-surface);color:var(--color-text);font-size:0.9rem;}.btn-danger{width:100%;padding:12px;background:#FDEDEC;border:1px solid #FADBD8;color:#E74C3C;border-radius:10px;cursor:pointer;font-size:0.8rem;font-weight:600;transition:0.3s;}.btn-danger:hover{background:#FADBD8;}.modal-footer{margin-top:30px;}.modal-footer .btn-new{width:100%;}.msg-sub{display:block;font-size:0.85rem;color:rgba(255,255,255,0.5);margin-top:12px;padding-top:8px;border-top:1px solid rgba(255,255,255,0.1);font-style:italic;width:100%;}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--color-primary);color:var(--color-on-primary);padding:12px 24px;border-radius:30px;font-size:0.85rem;font-weight:500;box-shadow:0 4px 15px rgba(139,69,19,0.3);z-index:30000;transition:transform 0.3s cubic-bezier(0.4,0,0.2,1),opacity 0.3s ease;opacity:0;pointer-events:none;}.toast.show{transform:translateX(-50%) translateY(0);opacity:1;}.toast.success-premium{background:#4CAF50;padding:16px 30px;font-size:1rem;font-weight:700;box-shadow:0 10px 40px rgba(76,175,80,0.4);border:2px solid rgba(255,255,255,0.3);bottom:90px;transform:translateX(-50%) translateY(20px) scale(0.9);text-align:center;border-radius:20px;max-width:90%;line-height:1.4;color:white;}.toast.success-premium.show{transform:translateX(-50%) translateY(0) scale(1);}.settings-page{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;background:var(--color-bg);z-index:10000;transform:translateX(100%);transition:transform 0.6s cubic-bezier(0.16,1,0.3,1);color:var(--color-text);padding-top:env(safe-area-inset-top);}.settings-page.active{transform:translateX(0);}.dashboard-layout{display:flex;width:100%;height:100%;}.dashboard-sidebar{width:280px;background:var(--sidebar-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--color-line);display:flex;flex-direction:column;padding:30px 0;flex-shrink:0;}.dash-sidebar-header{padding:0 25px 35px;display:flex;align-items:center;gap:15px;}.btn-close-dash{background:var(--color-surface);border:1px solid var(--color-line);width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text);transition:0.3s cubic-bezier(0.16,1,0.3,1);flex-shrink:0;}.btn-close-dash:hover{transform:rotate(90deg);color:var(--color-primary);}.dash-logo{font-weight:800;font-size:1.15rem;color:var(--color-primary);letter-spacing:-0.5px;}.dash-nav{flex:1;padding:0 15px;display:flex;flex-direction:column;gap:6px;}.dash-nav-item{display:flex;align-items:center;gap:12px;padding:14px 20px;border:none;background:transparent;border-radius:14px;color:#6D7278;font-weight:500;font-size:0.95rem;cursor:pointer;transition:all 0.3s ease;text-align:left;width:100%;}.dash-nav-item:hover{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm);}.dash-nav-item.active{background:var(--color-surface);color:var(--color-primary);font-weight:700;box-shadow:var(--shadow-sm);}.dash-sidebar-footer{padding:20px;border-top:1px solid var(--color-line);}.btn-logout-dash{width:100%;padding:12px;border:1px solid rgba(229,57,53,0.15);background:rgba(229,57,53,0.02);color:#E53935;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:600;cursor:pointer;transition:0.3s;}.btn-logout-dash:hover{background:#E53935;color:white;}.dashboard-main{flex:1;background:var(--color-bg);padding:60px 8%;overflow-y:auto;scroll-behavior:smooth;}.dashboard-main::-webkit-scrollbar{width:6px;}.dashboard-main::-webkit-scrollbar-track{background:transparent;}.dashboard-main::-webkit-scrollbar-thumb{background:var(--color-line);border-radius:10px;}.dash-title{font-size:2.2rem;font-weight:800;margin-bottom:10px;letter-spacing:-1px;color:var(--color-text);}.dash-subtitle{font-size:1.1rem;opacity:0.6;margin-bottom:40px;line-height:1.5;}.dash-section{display:none;max-width:900px;opacity:0;}.dash-section.active{display:block;animation:dashSectionEnter 0.6s cubic-bezier(0.16,1,0.3,1) forwards;}@keyframes dashSectionEnter{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}.settings-card{background:var(--color-card);padding:35px;border-radius:28px;box-shadow:var(--shadow-sm);border:1px solid var(--color-line);margin-bottom:30px;transition:transform 0.3s ease,box-shadow 0.3s ease;}.settings-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);}.card-title{font-size:0.85rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--color-primary);margin-bottom:25px;}@media (max-width:900px){.dashboard-sidebar{width:80px;}.dash-nav-item span,.dash-logo,.btn-logout-dash span{display:none;}.dashboard-main{padding:40px 30px;}.dash-sidebar-header,.dash-nav-item{justify-content:center;padding:15px;}.btn-close-dash{width:32px;height:32px;}}.dash-welcome-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;flex-wrap:wrap;gap:20px;}.bac-countdown{background:var(--color-primary);color:var(--color-on-primary);padding:12px 25px;border-radius:40px;font-weight:700;font-size:1rem;box-shadow:0 8px 20px rgba(139,69,19,0.2);}.bac-countdown .days{font-size:1.4rem;margin-right:5px;}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px;}.persona-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;}.persona-card{background:var(--color-card);padding:20px;border-radius:20px;border:2px solid transparent;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:var(--shadow-sm);color:var(--color-text);}.persona-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,0.05);}.persona-card.active{border-color:var(--color-primary);background:var(--color-primary-light);}.persona-icon{width:60px;height:60px;background:var(--color-surface);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--color-primary);transition:0.3s;}.persona-card.active .persona-icon{background:var(--color-primary);color:var(--color-on-primary);}.persona-card h3{font-size:1rem;font-weight:700;margin-bottom:10px;}.persona-card p{font-size:0.85rem;opacity:0.7;line-height:1.4;}.stats-row{display:flex;gap:20px;}.stat-item{flex:1;background:var(--color-surface);padding:15px;border-radius:15px;text-align:center;border:1px solid var(--color-line);}.stat-value{display:block;font-size:1.5rem;font-weight:800;color:var(--color-primary);}.stat-label{font-size:0.7rem;text-transform:uppercase;font-weight:700;opacity:0.5;}.dash-pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:25px;}.dash-price-card{background:var(--color-card);padding:40px 25px;border-radius:28px;border:1px solid var(--color-line);text-align:center;position:relative;transition:all 0.3s ease;box-shadow:var(--shadow-sm);}.dash-price-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px -10px rgba(0,0,0,0.08);}.dash-price-card.popular{border:2px solid #FFB300;background:var(--color-surface);}.popular-tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:#FFB300;color:#3E2723;padding:6px 16px;border-radius:30px;font-size:0.7rem;font-weight:800;text-transform:uppercase;box-shadow:0 4px 10px rgba(255,179,0,0.3);}.dash-price-card h3{font-size:0.95rem;font-weight:700;margin-bottom:12px;opacity:0.6;}.dash-price-card .price{font-size:2.2rem;font-weight:800;color:var(--color-text);margin-bottom:8px;letter-spacing:-1px;}.dash-price-card .price span{font-size:1rem;opacity:0.5;}.dash-price-card p{font-size:0.8rem;margin-bottom:20px;opacity:0.6;}.btn-buy{width:100%;padding:12px;background:var(--color-primary);color:var(--color-on-primary);border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:0.3s;}.dash-price-card.popular .btn-buy{background:#FFB300;color:#3E2723;}.btn-buy:hover{transform:scale(1.05);}#custom-persona-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(139,69,19,0.1);}.sync-indicator{position:fixed;bottom:30px;right:30px;background:var(--color-card);padding:10px 22px;border-radius:30px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:12px;font-size:0.85rem;font-weight:600;transform:translateY(100px);transition:0.5s cubic-bezier(0.16,1,0.3,1);z-index:10001;border:1px solid rgba(0,0,0,0.02);}.sync-indicator.active{transform:translateY(0);}.sync-dot{width:8px;height:8px;background:#4CAF50;border-radius:50%;box-shadow:0 0 10px rgba(76,175,80,0.4);animation:pulseSync 1.5s infinite;}.input-group-action{display:flex;gap:10px;background:var(--color-surface);padding:6px;border-radius:16px;border:1px solid var(--color-line);}.input-group-action input{border:none !important;background:transparent !important;padding:10px 15px !important;font-family:inherit;font-size:0.95rem;outline:none;}.btn-apply{background:var(--color-primary);color:var(--color-on-primary);border:none;padding:10px 20px;border-radius:12px;font-weight:700;font-size:0.85rem;cursor:pointer;transition:0.3s;}.btn-apply:hover{background:#3E2723;transform:scale(1.02);}@keyframes pulseSync{0%{transform:scale(1);opacity:1;}50%{transform:scale(1.5);opacity:0.5;}100%{transform:scale(1);opacity:1;}}.settings-card{background:var(--color-card);padding:24px;border-radius:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-line);}.card-title{font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--color-primary);opacity:0.6;margin-bottom:20px;}.profile-summary{display:flex;align-items:center;gap:15px;margin-bottom:25px;}.avatar{width:60px;height:60px;background:var(--color-primary);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;box-shadow:0 8px 15px rgba(139,69,19,0.2);}.profile-info h3{font-size:1.1rem;font-weight:700;margin-bottom:2px;}.profile-info p{font-size:0.85rem;opacity:0.6;}.input-group label{display:block;font-size:0.8rem;margin-bottom:8px;font-weight:600;}.input-group select{width:100%;padding:12px 15px;border-radius:12px;border:1px solid var(--color-line);background:var(--color-surface);font-family:inherit;font-size:0.95rem;color:var(--color-text);appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%238B4513' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;}.premium-card{background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-card) 100%);border:1px solid var(--color-primary);}.plan-badge{display:inline-block;padding:4px 12px;background:rgba(255,179,0,0.1);color:#FFB300;border-radius:20px;font-size:0.75rem;font-weight:700;margin-bottom:10px;}.choice-chips{display:flex;gap:10px;}.chip{padding:10px 18px;background:var(--color-surface);border-radius:12px;font-size:0.85rem;font-weight:600;cursor:pointer;transition:0.3s;border:1px solid transparent;}.chip.active{background:var(--color-primary);color:white;}.btn-text{background:none;border:none;color:var(--color-primary);font-weight:600;font-size:0.85rem;cursor:pointer;padding:0;text-decoration:underline;}.btn-outline-minimal{background:transparent;border:1px solid var(--color-line);color:var(--color-text);padding:12px;border-radius:12px;font-weight:600;font-size:0.9rem;cursor:pointer;transition:0.3s;display:flex;align-items:center;justify-content:center;}.btn-outline-minimal:hover{background:var(--color-primary-light);border-color:var(--color-primary);}.vault-empty{padding:30px 20px;text-align:center;background:var(--color-surface);border-radius:20px;border:1px dashed var(--color-line);}.vault-empty p{font-size:0.85rem;opacity:0.6;line-height:1.5;margin-bottom:15px;}.btn-text-minimal{background:none;border:none;color:var(--color-primary);font-weight:700;font-size:0.85rem;cursor:pointer;text-decoration:underline;}.danger-zone-card{border:1px solid rgba(229,57,53,0.15) !important;background:rgba(229,57,53,0.02) !important;}.danger-desc{font-size:0.85rem;color:#6D7278;margin-bottom:20px;line-height:1.5;}.btn-danger-minimal{width:100%;padding:14px;background:var(--color-card);color:#E53935;border:1px solid rgba(229,57,53,0.2);border-radius:12px;font-weight:700;cursor:pointer;transition:0.3s;display:flex;align-items:center;justify-content:center;gap:10px;}.btn-danger-minimal:hover{background:#E53935;color:white;box-shadow:0 8px 20px rgba(229,57,53,0.15);}.settings-content{padding:20px;flex:1;max-width:600px;margin:0 auto;width:100%;}.settings-page .setting-group label{color:rgba(255,255,255,0.7);font-size:0.9rem;margin-bottom:10px;display:block;}.persona-tabs{margin-top:30px;}.tab-header{display:flex;gap:10px;background:var(--color-line);padding:6px;border-radius:16px;margin-bottom:25px;max-width:400px;}.tab-btn{flex:1;padding:12px;border:none;background:transparent;border-radius:12px;font-weight:700;font-size:0.9rem;color:#6D7278;cursor:pointer;transition:0.3s;}.tab-btn.active{background:var(--color-card);color:var(--color-primary);box-shadow:var(--shadow-sm);}.tab-content{display:none;animation:tabEnter 0.4s ease;}.tab-content.active{display:block;}@keyframes tabEnter{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}.persona-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;}.persona-card{background:var(--color-surface);padding:22px;border-radius:22px;border:2px solid transparent;text-align:center;cursor:pointer;transition:0.3s;box-shadow:var(--shadow-sm);color:var(--color-text);}.persona-card:hover{transform:translateY(-3px);}.persona-card.active{border-color:var(--color-primary);background:var(--color-primary-light);}.switch-row,.pref-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--color-line);}.switch-row:last-child{border-bottom:none;}.switch-info span,.pref-info span{display:block;font-size:0.95rem;font-weight:700;}.switch-info p,.pref-info p{font-size:0.8rem;opacity:0.6;}.minimal-select{padding:8px 12px;border-radius:10px;border:1px solid var(--color-line);background:var(--color-surface);color:var(--color-text);font-family:inherit;outline:none;}.vault-list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(139,69,19,0.1) transparent;}.vault-item{padding:8px 10px;background:var(--color-primary-light);border-radius:8px;border-left:2px solid var(--color-primary);display:flex;align-items:flex-start;gap:8px;cursor:pointer;transition:background 0.15s;}.vault-item:hover{background:var(--color-line);}.vault-item-text{font-size:0.72rem;line-height:1.4;color:var(--color-text);flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}.vault-item.expanded .vault-item-text{-webkit-line-clamp:unset;display:block;}.vault-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0;font-size:0.6rem;color:var(--color-text-dim);opacity:0.5;}.vault-item-delete{background:none;border:none;color:var(--color-text-dim);cursor:pointer;font-size:0.6rem;opacity:0.3;transition:opacity 0.2s;padding:0;}.vault-item-delete:hover{opacity:1;color:#E53935;}.vault-toggle{background:none;border:none;color:var(--color-primary);font-family:var(--font-main);font-size:0.7rem;font-weight:600;cursor:pointer;padding:6px 0 0;opacity:0.7;transition:opacity 0.2s;}.vault-toggle:hover{opacity:1;}.vault-empty{text-align:center;padding:15px 10px;opacity:0.4;font-size:0.72rem;}.vault-empty p{margin:0;}.switch{position:relative;display:inline-block;width:44px;height:24px;}.switch input{opacity:0;width:0;height:0;}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-line);transition:.4s;border-radius:24px;}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:white;transition:.4s;border-radius:50%;}input:checked + .slider{background-color:var(--color-primary);}input:checked + .slider:before{transform:translateX(20px);}.theme-selector{display:flex;gap:15px;margin-top:10px;}.theme-option{flex:1;text-align:center;cursor:pointer;}.theme-preview{height:60px;border-radius:12px;border:2px solid transparent;margin-bottom:8px;transition:0.3s;position:relative;}.theme-preview.light{background:#F5F5F5;box-shadow:inset 0 0 0 1px rgba(0,0,0,0.05);}.theme-preview.dark{background:#1A1A1A;}.theme-preview.auto{background:linear-gradient(135deg,#F5F5F5 50%,#1A1A1A 50%);box-shadow:inset 0 0 0 1px rgba(0,0,0,0.05);}.theme-option span{font-size:0.8rem;font-weight:700;opacity:0.6;}.theme-option.active .theme-preview{border-color:var(--color-primary);}.theme-option.active span{color:var(--color-primary);opacity:1;}.exp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;}.exp-label{display:block;font-size:0.85rem;font-weight:700;margin-bottom:12px;opacity:0.8;}.dash-section{display:none;}.dash-section.active{display:block;animation:dashSectionEnter 0.4s ease forwards;}@keyframes dashSectionEnter{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}.quota-indicator{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:0 10px;animation:fadeIn 0.5s ease forwards;}.quota-bar-bg{flex:1;height:4px;background:rgba(139,69,19,0.1);border-radius:10px;overflow:hidden;}.quota-bar-fill{width:0%;height:100%;background:var(--color-primary);border-radius:10px;transition:width 0.5s cubic-bezier(0.16,1,0.3,1),background 0.3s ease;}#quota-text{font-size:0.7rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:0.5px;opacity:0.8;white-space:nowrap;}.quota-warning .quota-bar-fill{background:#FFB300;}.quota-danger .quota-bar-fill{background:#E53935;}.quota-danger #quota-text{color:#E53935;}.stats-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:6px;height:120px;padding:10px 0 0;}.stats-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;}.stats-bar-track{flex:1;width:100%;background:var(--color-primary-light);border-radius:6px;position:relative;overflow:hidden;display:flex;align-items:flex-end;}.stats-bar-fill{width:100%;background:var(--color-primary);border-radius:6px;min-height:2px;transition:height 0.5s cubic-bezier(0.4,0,0.2,1);}.stats-bar-label{font-size:0.6rem;color:var(--color-text-dim);opacity:0.6;font-weight:600;}.stats-bar-count{font-size:0.6rem;color:var(--color-text-dim);font-weight:700;}.stats-counters{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:6px;}.stat-counter{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;background:var(--color-primary-light);border-radius:10px;}.stat-number{font-size:1.3rem;font-weight:800;color:var(--color-primary);letter-spacing:-0.5px;}.stat-label{font-size:0.65rem;color:var(--color-text-dim);font-weight:500;}.onboarding{position:fixed;top:0;left:0;right:0;bottom:0;z-index:50000;background:var(--color-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:obFadeIn 0.5s ease;}.onboarding.hidden{display:none;}@keyframes obFadeIn{from{opacity:0;}to{opacity:1;}}.onboarding-slides{display:flex;width:100%;overflow:hidden;flex:1;}.onboarding-slide{min-width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 30px;text-align:center;transition:transform 0.4s cubic-bezier(0.4,0,0.2,1);}.ob-icon{width:100px;height:100px;border-radius:28px;background:var(--color-primary-light);display:flex;align-items:center;justify-content:center;margin-bottom:30px;color:var(--color-primary);animation:obFloat 3s ease-in-out infinite;}@keyframes obFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}.onboarding-slide h2{font-family:var(--font-main);font-size:1.4rem;font-weight:700;color:var(--color-text);margin:0 0 14px;letter-spacing:-0.3px;}.onboarding-slide p{font-size:0.88rem;line-height:1.6;color:var(--color-text-dim);max-width:320px;margin:0;}.onboarding-nav{padding:30px;display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:360px;}.ob-dots{display:flex;gap:8px;}.ob-dot{width:8px;height:8px;border-radius:50%;background:var(--color-line);transition:all 0.3s;}.ob-dot.active{background:var(--color-primary);width:24px;border-radius:4px;}.ob-next{width:100%;padding:14px;border:none;border-radius:12px;background:var(--color-primary);color:white;font-family:var(--font-main);font-size:0.9rem;font-weight:700;cursor:pointer;transition:all 0.2s;letter-spacing:0.3px;}.ob-next:hover{background:#5D4037;transform:translateY(-1px);}.input-row.quota-locked #input,.input-row.quota-locked #send,.input-row.quota-locked #toggle-subjects-btn{opacity:0.5;pointer-events:none;filter:grayscale(0.5);cursor:not-allowed;}.input-row.quota-locked{cursor:default;}.quota-banner{background:transparent;padding:8px 10px;display:flex;align-items:center;justify-content:center;gap:10px;animation:fadeIn 0.4s ease forwards;}.quota-banner .quota-alert-text{font-size:0.75rem;font-weight:700;color:#E53935;letter-spacing:0.3px;}.btn-upgrade-banner{background:transparent;color:var(--color-primary);border:none;padding:0;font-size:0.75rem;font-weight:800;text-decoration:underline;text-transform:uppercase;letter-spacing:1px;cursor:pointer;box-shadow:none;transition:opacity 0.2s ease;}.btn-upgrade-banner:hover{opacity:0.7;color:var(--color-primary);}@keyframes slideUp{from{transform:translateY(100%);opacity:0;}to{transform:translateY(0);opacity:1;}}.mobile-only{display:none;}.desktop-only{display:flex;}@media (max-width:768px){.mobile-only{display:block;}.desktop-only{display:none !important;}}@media only screen and (min-width:430px) and (min-height:932px){.dashboard-sidebar{padding-bottom:calc(15px + env(safe-area-inset-bottom)) !important;}.dash-nav{padding-bottom:5px !important;}.persona-icon{margin-bottom:12px !important;transform:translateY(-2px);}footer{padding:4px 10px max(4px,env(safe-area-inset-bottom)) 10px;margin-bottom:0;position:relative;background:var(--color-bg);}.input-row{margin-bottom:0 !important;padding-bottom:0 !important;border-bottom-left-radius:0 !important;border-bottom-right-radius:0 !important;}#wave{position:absolute;bottom:0;margin-top:0;}.dashboard-main{padding-bottom:calc(140px + env(safe-area-inset-bottom)) !important;}#close-settings,.btn-close-dash{bottom:calc(90px + env(safe-area-inset-bottom)) !important;}}.referral-card{background:var(--color-card) !important;border:1px solid var(--color-line) !important;border-radius:20px !important;padding:24px !important;margin-bottom:20px !important;box-shadow:var(--shadow-sm) !important;transition:all 0.3s cubic-bezier(0.16,1,0.3,1) !important;position:relative;overflow:hidden;}.referral-card:hover{box-shadow:0 12px 30px rgba(62,39,35,0.08) !important;border-color:var(--color-primary) !important;}[data-theme="dark"] .referral-card:hover{box-shadow:0 12px 30px rgba(0,0,0,0.4) !important;}.referral-card::before{content:'';position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(139,69,19,0.03) 0%,transparent 70%);pointer-events:none;}[data-theme="dark"] .referral-card::before{background:radial-gradient(circle,rgba(212,163,115,0.05) 0%,transparent 70%);}.referral-header{display:flex;align-items:center;gap:12px;margin-bottom:18px;}.referral-header-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--color-primary-light);color:var(--color-primary);border-radius:50%;flex-shrink:0;}.referral-title{font-size:1.05rem !important;font-weight:800 !important;color:var(--color-text) !important;margin:0 !important;letter-spacing:0.3px;}.referral-section{padding:16px 0;}.referral-section:not(:last-child){border-bottom:1px solid var(--color-line);}.referral-text{font-size:0.85rem !important;line-height:1.5 !important;color:var(--color-text-dim) !important;margin-bottom:14px !important;opacity:0.9;}.referral-text strong{color:#27AE60;font-weight:700;}[data-theme="dark"] .referral-text strong{color:#4CAF50;}.referral-code-container{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface);border:1px dashed var(--color-primary);padding:14px 18px;border-radius:12px;transition:all 0.3s cubic-bezier(0.16,1,0.3,1);box-shadow:inset 0 2px 8px rgba(0,0,0,0.02);}.referral-code-details{display:flex;flex-direction:column;gap:4px;}.referral-code-value{font-size:1.3rem !important;font-weight:800 !important;letter-spacing:3px;color:var(--color-primary);font-family:'Outfit',sans-serif;transition:all 0.3s ease;}.referral-count-label{font-size:0.72rem !important;font-weight:600 !important;color:var(--color-text-dim);opacity:0.8;}.referral-btn-action{background:var(--color-primary);color:var(--color-on-primary) !important;border:none;padding:12px 18px;border-radius:8px;font-size:0.8rem;font-weight:700;cursor:pointer;transition:all 0.2s cubic-bezier(0.4,0,0.2,1);box-shadow:0 4px 12px rgba(139,69,19,0.15);}.referral-btn-action:hover{transform:translateY(-2px);background:#5D4037;box-shadow:0 6px 16px rgba(139,69,19,0.25);}[data-theme="dark"] .referral-btn-action{box-shadow:0 4px 12px rgba(0,0,0,0.2);}[data-theme="dark"] .referral-btn-action:hover{background:#E5BA8F;}.referral-btn-copy{background:var(--color-primary-light);color:var(--color-primary) !important;border:1px solid rgba(139,69,19,0.15);padding:8px 14px;border-radius:8px;font-size:0.78rem;font-weight:700;cursor:pointer;transition:all 0.2s ease;}.referral-btn-copy:hover{background:var(--color-primary);color:var(--color-on-primary) !important;border-color:var(--color-primary);}.referral-input-group{display:flex;gap:10px;align-items:center;}.referral-input{flex:1;background:var(--color-surface);border:1px solid var(--color-line);padding:12px 16px;border-radius:10px;color:var(--color-text);font-size:0.95rem;font-weight:700;font-family:'Outfit',sans-serif;letter-spacing:2px;text-transform:uppercase;transition:all 0.3s ease;}.referral-input::placeholder{letter-spacing:0.5px;font-weight:500;text-transform:none;color:var(--color-text-dim);opacity:0.55;}.referral-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-card);}.referral-btn-validate{background:var(--color-primary);color:var(--color-on-primary);border:none;padding:12px 20px;border-radius:10px;font-weight:700;font-size:0.85rem;cursor:pointer;transition:all 0.2s ease;box-shadow:0 4px 12px rgba(139,69,19,0.15);height:48px;display:flex;align-items:center;justify-content:center;}.referral-btn-validate:hover{transform:translateY(-2px);background:#5D4037;box-shadow:0 6px 16px rgba(139,69,19,0.25);}.referral-btn-validate:disabled{opacity:0.6;transform:none;cursor:not-allowed;box-shadow:none;}@media (display-mode:standalone){footer{padding-bottom:calc(env(safe-area-inset-bottom) - 12px) !important;}#close-settings,.btn-close-dash{bottom:calc(75px + env(safe-area-inset-bottom) - 12px) !important;}}.referral-success-box{display:none;background:rgba(46,125,50,0.08) !important;border:1px solid rgba(46,125,50,0.18) !important;border-radius:16px !important;padding:16px 20px !important;margin-top:15px !important;box-sizing:border-box;}[data-theme="dark"] .referral-success-box{background:rgba(129,199,132,0.06) !important;border-color:rgba(129,199,132,0.18) !important;}.referral-success-title{color:#2E7D32 !important;font-weight:800 !important;font-size:0.92rem !important;letter-spacing:0.2px;}[data-theme="dark"] .referral-success-title{color:#81C784 !important;}.referral-success-text{color:var(--color-text-dim) !important;font-size:0.78rem !important;margin:4px 0 0 !important;line-height:1.4 !important;opacity:0.9 !important;}[data-theme="dark"] .success-icon-bg{background:rgba(129,199,132,0.15) !important;color:#81C784 !important;}.suggestion-chips-container{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px 0;animation:fadeInUp 0.4s cubic-bezier(0.16,1,0.3,1) forwards;width:100%;}.suggestion-chip{background:var(--color-surface);border:1px solid var(--color-line);border-radius:20px;padding:8px 14px;font-family:inherit;font-size:0.82rem;font-weight:500;color:var(--color-text-dim);cursor:pointer;transition:all 0.25s cubic-bezier(0.16,1,0.3,1);display:flex;align-items:center;gap:6px;user-select:none;outline:none;}.suggestion-chip:hover{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm);}.njarin-tooltip{position:fixed;background:#3E2723;color:#FFF8F0;padding:14px 40px 14px 16px;border-radius:14px;font-size:0.9rem;font-weight:500;line-height:1.5;box-shadow:0 14px 36px rgba(62,39,35,0.38),0 2px 8px rgba(62,39,35,0.18);z-index:9900;width:max-content;min-width:240px;max-width:min(340px,calc(100vw - 32px));pointer-events:auto;animation:tooltipBounceIn 0.4s cubic-bezier(0.175,0.885,0.32,1.275) forwards;border:1px solid rgba(255,255,255,0.12);box-sizing:border-box;overflow-wrap:break-word;word-wrap:break-word;}[data-theme="dark"] .njarin-tooltip{background:#1E1210;border:1px solid rgba(255,248,240,0.15);box-shadow:0 14px 36px rgba(0,0,0,0.55),0 2px 8px rgba(0,0,0,0.3);}.njarin-tooltip::after{content:'';position:absolute;bottom:100%;left:var(--arrow-left,20px);transform:translateX(-50%);border-width:7px;border-style:solid;border-color:transparent transparent #3E2723 transparent;}[data-theme="dark"] .njarin-tooltip::after{border-color:transparent transparent #1E1210 transparent;}.njarin-tooltip.tooltip-top{animation:tooltipBounceInTop 0.4s cubic-bezier(0.175,0.885,0.32,1.275) forwards;}.njarin-tooltip.tooltip-top::after{bottom:auto;top:100%;left:var(--arrow-left,20px);transform:translateX(-50%);border-color:#3E2723 transparent transparent transparent;}[data-theme="dark"] .njarin-tooltip.tooltip-top::after{border-color:#1E1210 transparent transparent transparent;}.njarin-tooltip .close-tooltip{position:absolute;top:9px;right:9px;width:22px;height:22px;border-radius:50%;background:rgba(255,248,240,0.12);border:none;color:rgba(255,248,240,0.75);cursor:pointer;font-size:0.7rem;font-family:inherit;display:flex;align-items:center;justify-content:center;transition:background 0.2s,color 0.2s;outline:none;padding:0;line-height:1;flex-shrink:0;}.njarin-tooltip .close-tooltip:hover{background:rgba(255,248,240,0.24);color:#FFFFFF;}@keyframes tooltipBounceIn{0%{opacity:0;transform:translateY(-8px) scale(0.95);}70%{transform:translateY(2px) scale(1.02);}100%{opacity:1;transform:translateY(0) scale(1);}}@keyframes tooltipBounceInTop{0%{opacity:0;transform:translateY(8px) scale(0.95);}70%{transform:translateY(-2px) scale(1.02);}100%{opacity:1;transform:translateY(0) scale(1);}}@keyframes fadeInUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}.offline-banner{position:fixed;top:80px;left:50%;transform:translateX(-50%) translateY(-50px);background:hsla(25,80%,45%,0.95);color:white;padding:10px 20px;border-radius:30px;font-size:0.8rem;font-family:var(--font-main);font-weight:700;box-shadow:0 8px 32px hsla(25,80%,45%,0.35);z-index:19999;opacity:0;pointer-events:none;transition:transform 0.35s cubic-bezier(0.175,0.885,0.32,1.275),opacity 0.3s ease;display:flex;align-items:center;gap:8px;backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,0.15);}.offline-banner.show{transform:translateX(-50%) translateY(0);opacity:1;pointer-events:auto;}textarea#input:disabled{opacity:0.5;cursor:not-allowed;}