@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-heading:"Playfair Display", Georgia, serif;--font-body:"DM Sans", Arial, sans-serif;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;font-family:DM Sans,Arial,sans-serif}:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:#fff;--bg-secondary:#fbf8f9;--bg-card:#fff;--bg-hover:#f6edf0;--topbar-bg:#fffffff0;--sidebar-bg:#fbf8f9;--text-primary:#26151b;--text-secondary:#705e65;--text-muted:#8b7880;--brand-primary:#6b233b;--brand-hover:#4b172b;--brand-soft:#f2e7eb;--border-color:#e8dde1;--border-strong:#d4c0c8;--focus-ring:#6b233b;--success:#397a56;--color-background:var(--bg-primary);--color-surface:var(--bg-card);--color-primary:var(--brand-primary);--color-primary-dark:var(--brand-hover);--color-primary-soft:var(--brand-soft);--color-text:var(--text-primary);--color-muted:var(--text-secondary);--color-border:var(--border-color);--color-accent:#b97b91;--shadow-soft:0 10px 35px #35101f0f;--shadow-card:0 8px 24px #35101f1a}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#000;--bg-secondary:#0d080a;--bg-card:#130b0f;--bg-hover:#241018;--topbar-bg:#000000f0;--sidebar-bg:#0d080a;--text-primary:#f3e8ec;--text-secondary:#c2aeb7;--text-muted:#a38c96;--brand-primary:#35101f;--brand-hover:#572034;--brand-soft:#241018;--border-color:#302027;--border-strong:#51313e;--focus-ring:#bd718e;--success:#78bd91;--color-background:var(--bg-primary);--color-surface:var(--bg-card);--color-primary:#bd718e;--color-primary-dark:#e1a2b8;--color-primary-soft:var(--brand-soft);--color-text:var(--text-primary);--color-muted:var(--text-secondary);--color-border:var(--border-color);--color-accent:#bd718e;--shadow-soft:0 10px 35px #00000059;--shadow-card:0 8px 24px #0006}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg-primary);min-width:320px;min-height:100%;scroll-padding-top:90px}body{background:var(--bg-primary);min-width:320px;min-height:100vh;color:var(--text-primary);font-family:var(--font-body);margin:0;transition:background-color .18s,color .18s}body,button,input,select,textarea{font-family:var(--font-body)}button,input,select,textarea{font-size:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}a{color:inherit}img{max-width:100%}::selection{color:#fff;background:var(--brand-primary)}#root{min-height:100vh}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--control-radius:9px;--control-height:40px}input,select,textarea{box-sizing:border-box;max-width:100%;color:var(--text-primary);font-family:var(--font-body);font-size:13px}input:not([type=checkbox]):not([type=radio]):not([type=file]),select{min-height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--control-radius);background-color:var(--bg-card);color:var(--text-primary);padding:9px 11px}textarea{border:1px solid var(--border-strong);border-radius:var(--control-radius);background-color:var(--bg-card);min-height:82px;color:var(--text-primary);padding:10px 12px;line-height:1.55}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:.9}input:focus,select:focus,textarea:focus{border-color:var(--focus-ring)}select option{background:var(--bg-card);color:var(--text-primary)}input:disabled,select:disabled,textarea:disabled{opacity:.65;cursor:not-allowed}button{touch-action:manipulation}@media (width<=480px){input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{font-size:16px}}.bs-app{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);font-family:DM Sans,Inter,system-ui,sans-serif}.bs-app,.bs-app *{box-sizing:border-box}.bs-app button,.bs-app input,.bs-app select,.bs-app textarea{font:inherit}.bs-app button{color:inherit}.bs-app button:disabled{opacity:.6;cursor:not-allowed}.bs-app :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.bs-app input,.bs-app select,.bs-app textarea{border:1px solid var(--border-strong);background:var(--bg-card);max-width:100%;color:var(--text-primary);border-radius:9px}.bs-app input,.bs-app select{min-height:40px;padding:9px 11px}.bs-app textarea{resize:vertical;padding:11px;line-height:1.55}.bs-app input::placeholder,.bs-app textarea::placeholder{color:var(--text-muted);opacity:1}.bs-app option{background:var(--bg-card);color:var(--text-primary)}.bs-sidebar{z-index:60;background:var(--sidebar-bg);border-right:1px solid var(--border-color);flex-direction:column;width:240px;padding:25px 16px 14px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.bs-brand{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:2px 9px 29px;display:flex}.bs-brand-mark{background:var(--brand-primary);color:#fff;border-radius:12px;flex:0 0 41px;place-items:center;width:41px;height:41px;font-family:Georgia,serif;font-size:25px;font-weight:700;display:grid}.bs-brand-copy{flex-direction:column;gap:3px;display:flex}.bs-brand-copy strong{letter-spacing:-.45px;font-size:17px}.bs-brand-copy small{color:var(--text-muted);letter-spacing:1.8px;font-size:9px;font-weight:700}.bs-nav-label,.bs-eyebrow{color:var(--text-muted);letter-spacing:1.45px;font-size:10px;font-weight:700}.bs-nav-label{padding:0 12px 11px}.bs-navigation{flex-direction:column;gap:5px;display:flex}.bs-nav-item{width:100%;min-height:44px;color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;transition:background .16s,border-color .16s;display:flex}.bs-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.bs-nav-item.is-active{border-color:var(--border-color);background:var(--brand-soft);color:var(--text-primary)}.bs-nav-item.is-active .bs-nav-icon{color:var(--focus-ring)}.bs-nav-icon{place-items:center;width:21px;font-size:20px;display:inline-grid}.bs-sidebar-bottom{margin-top:auto;padding-top:25px}.bs-ai-note{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;padding:15px}.bs-ai-note-icon{background:var(--brand-soft);width:30px;height:30px;color:var(--focus-ring);border-radius:9px;place-items:center;margin-bottom:12px;font-size:19px;display:grid}.bs-ai-note strong{font-size:12px;display:block}.bs-ai-note p{color:var(--text-secondary);margin:7px 0 12px;font-size:11px;line-height:1.6}.bs-ai-note-link,.bs-text-button{color:var(--focus-ring);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:12px;font-weight:700}.bs-ai-note-link:hover,.bs-text-button:hover{text-underline-offset:4px;text-decoration:underline}.bs-user{border-top:1px solid var(--border-color);align-items:center;gap:10px;margin-top:15px;padding:15px 3px 0;display:flex}.bs-avatar{background:var(--brand-soft);width:36px;height:36px;color:var(--focus-ring);border-radius:50%;flex:0 0 36px;place-items:center;font-size:13px;font-weight:700;display:grid}.bs-user-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.bs-user-copy strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.bs-user-copy small{color:var(--text-muted);font-size:11px}.bs-logout{border:1px solid var(--border-color);background:var(--bg-card);min-height:34px;color:var(--text-primary);white-space:nowrap;cursor:pointer;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:600;display:inline-flex}.bs-logout:hover{background:var(--bg-hover)}.bs-main{min-width:0;margin-left:240px}.bs-topbar{z-index:30;border-bottom:1px solid var(--border-color);background:var(--topbar-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:space-between;align-items:center;gap:14px;min-height:65px;padding:0 25px;display:flex;position:sticky;top:0}.bs-topbar-left,.bs-breadcrumb,.bs-topbar-actions{align-items:center;gap:12px;display:flex}.bs-breadcrumb{min-width:0;color:var(--text-muted);font-size:12px}.bs-breadcrumb strong{color:var(--text-primary);font-weight:600}.bs-topbar-actions{flex-shrink:0;gap:15px}.bs-status{color:var(--text-secondary);align-items:center;gap:7px;font-size:11px;display:flex}.bs-status-dot{background:var(--success);border-radius:50%;width:7px;height:7px}.bs-theme-toggle{border:1px solid var(--border-color);background:var(--bg-card);min-height:37px;color:var(--text-primary);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:8px 11px;font-size:11px;font-weight:600;display:inline-flex}.bs-theme-toggle:hover{border-color:var(--border-strong);background:var(--bg-hover)}.bs-mobile-menu{display:none}.bs-workspace{grid-template-columns:minmax(0,1fr) minmax(290px,340px);align-items:start;gap:22px;max-width:1900px;margin:0 auto;padding:24px;display:grid}.bs-content-column{flex-direction:column;gap:25px;min-width:0;display:flex}.bs-page{min-width:0;min-height:65vh;animation:.18s both bs-page-enter}@keyframes bs-page-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bs-page-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:25px;display:flex}.bs-page-heading h1{color:var(--text-primary);letter-spacing:-.7px;margin:0 0 4px;font-family:Playfair Display,Georgia,serif;font-size:clamp(27px,3vw,36px);font-weight:600;line-height:1.2}.bs-page-heading p{max-width:650px;color:var(--text-secondary);margin:0;font-size:12px;line-height:1.8}.bs-feature-content{min-width:0;color:var(--text-primary)}.bs-welcome{border:1px solid var(--border-color);background:radial-gradient(ellipse at 90% 20%, var(--brand-soft), transparent 45%), var(--bg-secondary);border-radius:16px;justify-content:space-between;align-items:center;gap:18px;min-height:300px;padding:30px;display:flex;position:relative;overflow:hidden}.bs-welcome-copy{z-index:2;max-width:490px;position:relative}.bs-welcome h1{color:var(--text-primary);letter-spacing:-1.1px;margin:15px 0 12px;font-family:Playfair Display,Georgia,serif;font-size:clamp(30px,3.3vw,42px);font-weight:600;line-height:1.16}.bs-welcome h1 span{color:var(--focus-ring)}.bs-welcome-copy>p{max-width:410px;color:var(--text-secondary);margin:0;font-size:12px;line-height:1.8}.bs-welcome-actions{flex-wrap:wrap;gap:9px;margin-top:21px;display:flex}.bs-button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:10px 14px;font-size:12px;font-weight:700;transition:background .16s,transform .16s;display:inline-flex}.bs-button:active{transform:translateY(1px)}.bs-button-primary{background:var(--brand-primary);color:#fff!important}.bs-button-primary:hover:not(:disabled){background:var(--brand-hover)}.bs-button-secondary{border-color:var(--border-strong);background:var(--bg-card);color:var(--text-primary)!important}.bs-button-secondary:hover:not(:disabled){background:var(--bg-hover)}.bs-welcome-art{width:155px;min-width:125px;height:200px;margin-right:7px;position:relative}.bs-art-orbit{border:1px solid var(--border-color);border-radius:50%;position:absolute;inset:15px -8px;transform:rotate(-25deg)}.bs-art-orbit-two{inset:37px -25px;transform:rotate(35deg)}.bs-art-book{border:1px solid var(--border-strong);width:92px;height:139px;box-shadow:var(--shadow-card);border-radius:4px 9px 9px 4px;position:absolute;top:30px}.bs-art-book-back{background:var(--brand-hover);left:45px;transform:rotate(12deg)}.bs-art-book-front{background:var(--brand-primary);color:#fff;flex-direction:column;padding:17px 12px;display:flex;left:18px;transform:rotate(-8deg)}.bs-art-book-front span{letter-spacing:2px;font-size:8px}.bs-art-book-front strong{margin-top:20px;font-family:Georgia,serif;font-size:14px;line-height:1.25}.bs-art-book-front i{background:#fff9;width:35px;height:1px;margin-top:13px}.bs-art-star{color:var(--focus-ring);font-size:24px;position:absolute;top:7px;right:0}.bs-overview-heading{margin:30px 0 16px}.bs-overview-heading h2{margin:8px 0 0;font-family:Playfair Display,Georgia,serif;font-size:23px;font-weight:600}.bs-quick-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.bs-quick-card{border:1px solid var(--border-color);background:var(--bg-card);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;min-width:0;min-height:175px;padding:17px;transition:transform .16s,border-color .16s,background .16s;display:flex}.bs-quick-card:hover{border-color:var(--border-strong);background:var(--bg-hover);transform:translateY(-2px)}.bs-quick-icon{background:var(--brand-soft);width:35px;height:35px;color:var(--focus-ring);border-radius:10px;place-items:center;margin-bottom:13px;font-size:20px;display:grid}.bs-quick-card>strong{margin-bottom:7px;font-size:13px}.bs-quick-card>span:not(.bs-quick-icon){color:var(--text-secondary);font-size:11px;line-height:1.65}.bs-quick-card .bs-quick-arrow{margin-top:auto;padding-top:12px;font-weight:700;color:var(--focus-ring)!important}.bs-segmented{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:10px;flex-wrap:wrap;gap:4px;margin:0 0 19px;padding:4px;display:inline-flex}.bs-segmented button{min-height:37px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:600;display:inline-flex}.bs-segmented button:hover{background:var(--bg-hover);color:var(--text-primary)}.bs-segmented button.is-selected{border-color:var(--border-color);background:var(--brand-soft);color:var(--text-primary)}.bs-research-column{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:14px;flex-direction:column;min-width:0;height:calc(100vh - 105px);min-height:460px;max-height:850px;padding:16px;display:flex;position:sticky;top:82px;overflow:hidden}.bs-research-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.bs-research-heading h2{color:var(--text-primary);letter-spacing:-.3px;margin:7px 0 0;font-family:DM Sans,Inter,system-ui,sans-serif;font-size:17px;font-weight:700}.bs-ai-badge{border:1px solid var(--border-color);background:var(--brand-soft);width:35px;height:35px;color:var(--focus-ring);border-radius:10px;flex:0 0 35px;place-items:center;font-size:21px;display:grid}.bs-research-description{color:var(--text-secondary);margin:9px 0 13px;font-size:11px;line-height:1.65}.bs-research-body{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.bs-research-body .research-assistant{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;flex:1;margin:0;padding:0;display:flex}.bs-research-body .research-header{flex:none;margin-bottom:10px}.bs-research-body .research-header>div p,.bs-research-body .research-header h2{display:none}.bs-research-body .research-header button{width:100%;min-height:36px;padding:8px 10px;font-size:11px}.bs-research-body .research-error{flex:none;margin:0 0 9px;font-size:11px}.bs-research-body .research-layout{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.bs-research-body .research-sidebar{flex:none;max-height:112px;padding:8px;overflow-y:auto}.bs-research-body .research-sidebar h3{margin:0 0 6px;font-size:11px}.bs-research-body .research-sidebar>p{color:var(--text-secondary);margin:5px 0;font-size:10px;line-height:1.5}.bs-research-body .research-chat-item{gap:4px;padding:2px 0}.bs-research-body .research-chat-open{padding:6px;font-size:10px}.bs-research-body .research-delete-button{padding:5px;font-size:10px}.bs-research-body .research-conversation{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.bs-research-body .research-messages{flex:1;min-height:130px;max-height:none;padding:10px}.bs-research-body .research-empty{padding:18px 4px;font-size:11px}.bs-research-body .research-empty h3{font-size:14px}.bs-research-body .research-message{max-width:100%;margin-bottom:9px;padding:9px 10px;font-size:11px;line-height:1.6}.bs-research-body .research-message strong{margin-bottom:4px;font-size:10px;display:block}.bs-research-body .research-thinking{font-size:11px}.bs-research-body .research-prompt-form{flex:none;gap:7px;padding:9px}.bs-research-body .research-prompt-form label{font-size:10px}.bs-research-body .research-prompt-form textarea{min-height:72px;max-height:150px;padding:9px;font-size:11px}.bs-research-body .research-form-footer{gap:8px;font-size:10px}.bs-research-body .research-form-footer button{padding:8px 11px;font-size:11px}.bs-footer{border-top:1px solid var(--border-color);color:var(--text-muted);justify-content:space-between;gap:12px;padding:18px 0 4px;font-size:10px;display:flex}.bs-mobile-backdrop{display:none}@media (width<=1250px){.bs-sidebar{width:215px}.bs-main{margin-left:215px}.bs-workspace{grid-template-columns:minmax(0,1fr) minmax(265px,300px);gap:15px;padding:17px}.bs-research-column{padding:12px}.bs-welcome{padding:23px}.bs-welcome-art{transform-origin:100%;width:120px;min-width:105px;transform:scale(.88)}}@media (width<=980px){.bs-workspace{grid-template-columns:minmax(0,1fr);gap:25px}.bs-research-column{height:650px;min-height:480px;max-height:none;position:static}.bs-research-body .research-sidebar{max-height:145px}.bs-research-body .research-messages{min-height:190px}.bs-welcome-art{opacity:.85}}@media (width<=680px){.bs-sidebar{width:min(290px,86vw);padding-top:22px;transition:transform .18s;transform:translate(-105%)}.bs-sidebar.is-open{transform:translate(0)}.bs-mobile-backdrop{z-index:50;background:#0009;border:0;width:100%;display:block;position:fixed;inset:0}.bs-main{margin-left:0}.bs-topbar{min-height:62px;padding:0 12px}.bs-topbar-left{gap:10px;min-width:0}.bs-mobile-menu{border:1px solid var(--border-color);background:var(--bg-card);width:38px;height:38px;color:var(--text-primary);cursor:pointer;border-radius:9px;flex:0 0 38px;place-items:center;font-size:17px;display:grid}.bs-breadcrumb{white-space:nowrap;gap:6px;font-size:10px;overflow:hidden}.bs-breadcrumb strong{text-overflow:ellipsis;overflow:hidden}.bs-topbar-actions{gap:0}.bs-status{display:none}.bs-theme-toggle{gap:5px;min-height:34px;padding:7px 9px;font-size:10px}.bs-workspace{gap:22px;padding:13px}.bs-content-column{gap:22px}.bs-page{min-height:55vh}.bs-page-heading{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:20px}.bs-page-heading h1{font-size:29px}.bs-welcome{min-height:280px;padding:22px 18px}.bs-welcome h1{font-size:clamp(28px,7vw,35px)}.bs-welcome-art{opacity:.16;pointer-events:none;position:absolute;bottom:-45px;right:-30px}.bs-welcome-copy{max-width:100%}.bs-welcome-copy>p{font-size:12px}.bs-welcome-actions{flex-direction:column;align-items:stretch;max-width:240px}.bs-button{width:100%}.bs-quick-links{grid-template-columns:minmax(0,1fr)}.bs-quick-card{min-height:155px}.bs-segmented{width:100%;display:flex}.bs-segmented button{flex:1;padding-inline:8px;font-size:10px}.bs-research-column{height:680px;padding:13px}.bs-research-body .research-sidebar{max-height:140px}.bs-research-body .research-messages{min-height:200px}.bs-footer{flex-direction:column}}@media (width<=380px){.bs-theme-toggle>span:last-child,.bs-breadcrumb>span:first-child{display:none}.bs-page-heading h1{font-size:26px}.bs-welcome-actions{max-width:100%}}@media (prefers-reduced-motion:reduce){.bs-app *,.bs-app :before,.bs-app :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.bs-topbar-left{min-width:0}.bs-sidebar-toggle{border:1px solid var(--border-color);background:var(--bg-card);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border-radius:9px;flex:0 0 36px;place-items:center;font-size:17px;transition:background .16s,border-color .16s,transform .16s;display:inline-grid}.bs-sidebar-toggle:hover{border-color:var(--border-strong);background:var(--bg-hover)}.bs-sidebar-toggle:active{transform:scale(.97)}.bs-app.sidebar-collapsed .bs-sidebar{display:none}.bs-app.sidebar-collapsed .bs-main{margin-left:0}.bs-nav-text{min-width:0}.bs-sidebar-bottom{padding-top:20px}.bs-user{margin-top:0}.bs-workspace,.bs-content-column,.bs-research-column,.bs-feature-content{min-width:0}.bs-workspace{width:100%}.bs-app :is(input,select,textarea){width:100%;min-width:0;font-size:13px;line-height:1.45;transition:border-color .15s,box-shadow .15s,background-color .15s}.bs-app :is(input,select,textarea):focus{border-color:var(--focus-ring)}.bs-app :is(input,textarea)::placeholder{color:var(--text-muted);opacity:.88}.bs-app textarea{min-height:82px}.bs-app :is(button,input,select,textarea){-webkit-tap-highlight-color:transparent}.bs-app button{touch-action:manipulation}@media (width<=1250px){.bs-sidebar{width:215px}.bs-main{margin-left:215px}.bs-app.sidebar-collapsed .bs-main{margin-left:0}}@media (width<=980px){.bs-workspace{grid-template-columns:minmax(0,1fr)}.bs-research-column{width:100%}}@media (width<=680px){.bs-sidebar-toggle{display:none}.bs-sidebar{display:flex!important}.bs-sidebar.is-open{transform:translate(0)}.bs-app.sidebar-collapsed .bs-sidebar:not(.is-open){transform:translate(-105%)}.bs-main,.bs-app.sidebar-collapsed .bs-main{margin-left:0}.bs-topbar{gap:8px}.bs-topbar-left{flex:1}.bs-topbar-actions{flex-shrink:0}.bs-workspace{padding:12px}.bs-research-column{height:680px;min-height:0}.bs-footer{overflow-wrap:anywhere}}@media (prefers-reduced-motion:reduce){.bs-sidebar-toggle{transition:none}}.bs-page-description{color:var(--text-secondary);margin:.25rem 0 0;font-size:.95rem;font-weight:400;line-height:1.5}.bs-app .bs-page-heading{align-items:flex-start;row-gap:4px!important}.bs-app .bs-page-heading h1{margin-top:0!important;margin-bottom:0!important}.bs-app .bs-page-heading p{line-height:1.5;margin-top:0!important}.bs-app .bs-section-heading{margin:0 0 12px}.bs-app .bs-section-heading>div{flex-direction:column;gap:4px;display:flex}.bs-app .bs-section-heading h1{margin:0;line-height:1.2}.bs-app .bs-section-heading .bs-page-description{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}@media (width<=680px){.bs-app .bs-section-heading{margin-bottom:20px}.bs-app .bs-section-heading>div{gap:4px}}.bs-content-column{min-height:calc(100vh - 113px)}.bs-footer{margin-top:auto;padding:18px 0 8px}@media (width<=680px){.bs-content-column{min-height:calc(100vh - 100px)}}.bs-app{min-height:100vh}.bs-main{flex-direction:column;min-width:0;min-height:100vh;display:flex}.bs-workspace{flex:1;align-items:stretch;min-height:0}.bs-content-column{flex-direction:column;align-self:stretch;min-width:0;min-height:0;display:flex}.bs-footer{border-top:1px solid var(--border-color);color:var(--text-muted);flex-shrink:0;justify-content:space-between;gap:12px;margin-top:auto;padding:18px 0 8px;font-size:10px;display:flex}@media (width<=680px){.bs-main{min-height:100vh}.bs-workspace{flex:1;align-items:stretch;padding:12px}.bs-content-column{min-height:0}.bs-footer{overflow-wrap:anywhere;flex-direction:column}}.bs-profile-details{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;gap:0;margin:20px 0;display:grid}.bs-profile-details>div{border-bottom:1px solid var(--border-color);flex-direction:column;gap:6px;min-width:0;padding:15px 17px;display:flex}.bs-profile-details>div:last-child{border-bottom:0}.bs-profile-details span{color:var(--text-muted);font-size:11px}.bs-profile-details strong{overflow-wrap:anywhere;color:var(--text-primary);font-size:13px;font-weight:600}.auth-container{box-sizing:border-box;background:radial-gradient(circle at 12% 12%, var(--brand-soft), transparent 34%), var(--bg-primary);min-height:100vh;color:var(--text-primary);place-items:center;padding:32px 18px;display:grid}.auth-card{box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);width:100%;max-width:460px;color:var(--text-primary);box-shadow:var(--shadow-card);padding:36px}.auth-brand{color:var(--text-primary);align-items:center;gap:11px;margin-bottom:34px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--brand-primary);color:#fff;width:43px;height:43px;font-family:var(--font-heading);border-radius:12px 12px 12px 4px;flex:0 0 43px;place-items:center;font-size:25px;font-weight:700;display:grid}.brand-copy{flex-direction:column;gap:3px;display:flex}.brand-copy strong{font-family:var(--font-heading);letter-spacing:-.4px;font-size:20px;font-weight:600}.brand-copy>span{color:var(--text-muted);letter-spacing:1.8px;font-size:9px;font-weight:700}.auth-heading{margin-bottom:25px}.auth-heading .eyebrow{color:var(--text-muted);letter-spacing:1.5px;font-size:10px;font-weight:700}.auth-heading h1{color:var(--text-primary);font-family:var(--font-heading);letter-spacing:-.8px;margin:12px 0 9px;font-size:clamp(29px,6vw,36px);font-weight:600;line-height:1.2}.auth-heading>p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.7}.auth-card form{flex-direction:column;gap:17px;display:flex}.auth-card label{color:var(--text-primary);flex-direction:column;gap:8px;font-size:12px;font-weight:600;display:flex}.auth-card input{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-secondary);width:100%;min-height:45px;color:var(--text-primary);font:inherit;padding:12px;font-size:13px;display:block}.auth-card input::placeholder{color:var(--text-muted)}.auth-card input:focus-visible{border-color:var(--brand-primary);outline:3px solid var(--focus-ring);outline-offset:2px}.auth-submit{border:1px solid var(--brand-primary);border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;min-height:47px;font:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin-top:3px;padding:12px 15px;font-size:13px;font-weight:700;transition:background .16s;display:flex}.auth-submit:hover:not(:disabled){border-color:var(--brand-hover);background:var(--brand-hover)}.auth-submit:focus-visible,.text-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-submit>span{font-size:19px}.auth-switch{color:var(--text-secondary);text-align:center;flex-wrap:wrap;justify-content:center;gap:5px;margin:22px 0 0;font-size:12px;line-height:1.6;display:flex}.text-button{color:var(--focus-ring);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.text-button:hover{text-decoration:underline}.auth-decoration{border-top:1px solid var(--border-color);color:var(--text-muted);letter-spacing:1.5px;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:29px;padding-top:18px;font-size:8px;font-weight:700;display:flex}.error,.global-error{color:#d46b83;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.error{margin:0}.global-error{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);margin:16px;padding:12px 14px}.auth-loading{box-sizing:border-box;background:var(--bg-primary);min-height:100vh;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;font-size:13px;display:flex}.loading-mark{background:var(--brand-primary);color:#fff;width:49px;height:49px;font-family:var(--font-heading);border-radius:14px 14px 14px 4px;place-items:center;font-size:28px;font-weight:700;display:grid}@media (width<=520px){.auth-container{padding:18px 12px}.auth-card{border-radius:var(--radius-md);padding:26px 20px}.auth-brand{margin-bottom:28px}.auth-decoration{gap:11px;font-size:7px}}@media (prefers-reduced-motion:reduce){.auth-submit{transition:none}}.bookshelf{min-width:0;color:var(--text-primary)}.bookshelf .book-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;margin-top:18px;display:grid}.bookshelf .book-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);min-width:0;color:var(--text-primary);box-shadow:var(--shadow-soft);flex-direction:column;transition:border-color .16s,transform .16s,box-shadow .16s;display:flex;overflow:hidden}.bookshelf .book-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card);transform:translateY(-2px)}.book-cover-container{background:var(--bg-secondary);justify-content:center;align-items:center;width:100%;height:245px;padding:14px;display:flex;overflow:hidden}.book-cover{object-fit:contain;width:100%;height:100%;display:block}.book-cover-placeholder{border:1px dashed var(--border-strong);width:100%;height:100%;color:var(--text-secondary);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:12px;display:flex}.book-cover-placeholder-icon{color:var(--focus-ring);font-size:38px}.book-card-content{flex-direction:column;flex:1;align-items:stretch;gap:12px;min-width:0;padding:16px;display:flex}.book-card-title{color:var(--text-primary);font-family:var(--font-heading);overflow-wrap:anywhere;margin:0;font-size:17px;font-weight:600;line-height:1.4}.bookshelf .book-author{color:var(--text-secondary);overflow-wrap:anywhere;margin:-5px 0 2px;font-size:12px;line-height:1.5}.bookshelf .book-meta{border-top:1px solid var(--border-color);flex-direction:column;gap:4px;margin:0;padding-top:10px;font-size:12px;display:flex}.bookshelf .book-meta span{color:var(--text-muted);font-size:11px}.bookshelf .book-meta strong{color:var(--text-primary);overflow-wrap:anywhere;font-weight:600}.bookshelf .book-status{color:var(--focus-ring)}.bookshelf .book-description{color:var(--text-secondary);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:12px;line-height:1.65}.bookshelf .book-actions{flex-direction:column;gap:8px;margin-top:auto;padding-top:6px;display:flex}.bookshelf .book-actions button,.bookshelf .book-open-button{border:1px solid var(--brand-primary);border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:7px;width:100%;min-height:39px;padding:9px 12px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.bookshelf .book-actions button:hover:not(:disabled),.bookshelf .book-open-button:hover{border-color:var(--brand-hover);background:var(--brand-hover)}.bookshelf .book-actions .book-open-button{background:var(--brand-soft);color:var(--text-primary)}.bookshelf .book-actions .book-open-button:hover{background:var(--bg-hover)}.bookshelf .book-actions .delete-button{border-color:var(--border-strong);color:var(--text-secondary);background:0 0}.bookshelf .book-actions .delete-button:hover:not(:disabled){color:#d46b83;background:#b64d661a;border-color:#b64d66}.bookshelf .book-actions button:disabled{opacity:.6;cursor:not-allowed}.bookshelf .book-form{flex-direction:column;gap:13px;min-width:0;padding:16px;display:flex}.bookshelf .book-form h3{font-family:var(--font-heading);margin:0}.bookshelf .book-form label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:12px;display:flex}.bookshelf .book-form input,.bookshelf .book-form select,.bookshelf .book-form textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-secondary);width:100%;min-width:0;color:var(--text-primary);font:inherit;padding:9px}.bookshelf .book-form .book-actions{flex-direction:column;display:flex}@media (width>=1500px){.bookshelf .book-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1100px){.bookshelf .book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.book-cover-container{height:220px}}@media (width<=560px){.bookshelf .book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.book-cover-container{height:175px;padding:9px}.book-card-content{gap:10px;padding:11px}.book-card-title{font-size:14px}.bookshelf .book-author,.bookshelf .book-description{font-size:11px}.bookshelf .book-actions button,.bookshelf .book-open-button{min-height:37px;padding:8px 6px;font-size:11px}}@media (width<=350px){.bookshelf .book-grid{grid-template-columns:minmax(0,1fr)}.book-cover-container{height:240px}}@media (prefers-reduced-motion:reduce){.bookshelf .book-card{transition:none}.bookshelf .book-card:hover{transform:none}}.book-cover-preview{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.book-cover-preview img{object-fit:contain;border:1px solid var(--border-color);border-radius:var(--radius-sm);width:150px;max-height:220px;display:block}.bookshelf>.book-form{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:18px 0 22px;padding:20px;display:grid}.bookshelf>.book-form h3{color:var(--text-primary);font-family:var(--font-heading);grid-column:1/-1;margin:0;font-size:20px;font-weight:600}.bookshelf>.book-form label{min-width:0;color:var(--text-secondary);flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}:is(.bookshelf>.book-form label:has(textarea),.bookshelf>.book-form label:has([type=file])){grid-column:1/-1}.bookshelf>.book-form input:not([type=file]),.bookshelf>.book-form select,.bookshelf>.book-form textarea{border:1px solid var(--border-strong);background:var(--bg-secondary);width:100%;min-width:0;min-height:40px;color:var(--text-primary);font-family:var(--font-body);box-shadow:none;border-radius:9px;padding:10px 12px;font-size:13px;line-height:1.45}.bookshelf>.book-form textarea{resize:vertical;min-height:90px}.bookshelf>.book-form input::placeholder,.bookshelf>.book-form textarea::placeholder{color:var(--text-muted);opacity:.9}.bookshelf>.book-form input:focus,.bookshelf>.book-form select:focus,.bookshelf>.book-form textarea:focus{border-color:var(--focus-ring);outline:3px solid var(--brand-soft);outline-offset:1px}.bookshelf>.book-form input[type=file]{border:1px dashed var(--border-strong);background:var(--bg-secondary);width:100%;min-width:0;color:var(--text-secondary);border-radius:9px;padding:9px;font-size:12px}.bookshelf>.book-form>button[type=submit]{border:1px solid var(--brand-primary);background:var(--brand-primary);color:#fff;width:fit-content;min-width:145px;min-height:43px;font-family:var(--font-body);letter-spacing:.1px;cursor:pointer;border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:13px;font-weight:700;transition:background .16s,box-shadow .16s,transform .16s;display:inline-flex;box-shadow:0 5px 14px #35101f29}.bookshelf>.book-form>button[type=submit]:hover:not(:disabled){border-color:var(--brand-hover);background:var(--brand-hover);transform:translateY(-1px);box-shadow:0 7px 18px #35101f38}.bookshelf>.book-form>button[type=submit]:active:not(:disabled){transform:translateY(0)}.bookshelf>.book-form>button[type=submit]:disabled{opacity:.65;cursor:wait}.bookshelf .book-cover-preview{grid-column:1/-1;align-items:flex-start;gap:10px}.bookshelf .book-cover-preview img{object-fit:contain;border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:9px;width:min(150px,100%);max-height:220px}.bookshelf .book-cover-preview .secondary-button{border:1px solid var(--border-strong);background:var(--bg-secondary);width:auto;min-height:36px;color:var(--text-primary);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:12px}.bookshelf .book-cover-preview .secondary-button:hover{background:var(--bg-hover)}.bookshelf .bookshelf-filters{grid-template-columns:minmax(0,1.5fr) minmax(160px,.8fr);gap:12px;margin:20px 0 10px;display:grid}.bookshelf .bookshelf-filters label{min-width:0;color:var(--text-secondary);flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}.bookshelf .bookshelf-filters input,.bookshelf .bookshelf-filters select{border:1px solid var(--border-strong);background:var(--bg-card);width:100%;min-width:0;min-height:39px;color:var(--text-primary);border-radius:9px;padding:9px 11px;font-size:12px}.bookshelf .bookshelf-filters input::placeholder{color:var(--text-muted);opacity:.9}.bookshelf .bookshelf-filters :is(input,select):focus{border-color:var(--focus-ring);outline:3px solid var(--brand-soft);outline-offset:1px}.bookshelf .results-count{color:var(--text-muted);font-size:11px;line-height:1.6}@media (width<=560px){.bookshelf>.book-form{grid-template-columns:minmax(0,1fr);gap:13px;padding:15px}:is(.bookshelf>.book-form label,.bookshelf>.book-form label:has(textarea),.bookshelf>.book-form label:has([type=file])){grid-column:1}.bookshelf>.book-form>button[type=submit]{width:100%}.bookshelf .bookshelf-filters{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.bookshelf>.book-form>button[type=submit]{transition:none}}.bs-app .discover-books .discover-search{align-items:stretch;gap:10px;margin:0 0 12px;display:flex}.bs-app .discover-books .discover-search input{border:1px solid var(--border-strong);background:var(--bg-card);min-width:0;min-height:46px;color:var(--text-primary);border-radius:10px;flex:1;margin:0;padding:11px 14px;font-size:13px;transition:border-color .16s,box-shadow .16s}.bs-app .discover-books .discover-search input:focus{border-color:#800020;outline:none;box-shadow:0 0 0 3px #8000201f}.bs-app .discover-books .discover-search button{background:var(--brand-primary);color:#fff;border:1px solid var(--brand-primary);border-radius:9px;transition:background .16s,border-color .16s}.bs-app .discover-books .discover-search button:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover);box-shadow:0 4px 12px #8000202e}.bs-app .discover-books .discover-search button:active:not(:disabled){transform:translateY(1px)}.bs-app .discover-books .discover-search button:disabled{opacity:.7;cursor:wait}.bs-app .discover-books .discover-search+.error,.bs-app .discover-books .discover-search+.success{margin-top:8px}.bs-app .discover-books>p{margin-top:8px;margin-bottom:10px;line-height:1.5}.bs-app .discover-books .catalog-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:stretch;gap:20px;margin-top:20px;display:grid}.bs-app .discover-books .catalog-card{border:1px solid var(--border-strong);background:var(--bg-card);min-width:0;color:var(--text-primary);border-radius:12px;flex-direction:column;padding:14px;transition:transform .16s,box-shadow .16s;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000000a}.bs-app .discover-books .catalog-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #00000017}.bs-app .discover-books .catalog-card>img,.bs-app .discover-books .catalog-card>.cover-placeholder{border-radius:8px;width:100%;height:220px;margin-bottom:12px;display:block}.bs-app .discover-books .catalog-card>img{object-fit:contain;background:var(--bg-card)}.bs-app .discover-books .catalog-card>.cover-placeholder{background:var(--bg-card);border:1px dashed var(--border-strong);color:var(--text-primary);text-align:center;justify-content:center;align-items:center;padding:12px;font-size:13px;display:flex}.bs-app .discover-books .catalog-card h3{color:var(--text-primary);overflow-wrap:anywhere;margin:0 0 8px;font-size:15px;line-height:1.4}.bs-app .discover-books .catalog-card p{color:var(--text-primary);overflow-wrap:anywhere;margin:0 0 7px;font-size:13px;line-height:1.45}.bs-app .discover-books .catalog-card .catalog-source{color:var(--text-secondary);margin-top:auto;padding-top:10px;font-size:12px}.bs-app .discover-books .catalog-card>button{border:1px solid var(--brand-primary);background:var(--brand-primary);color:#fff;cursor:pointer;border-radius:9px;width:100%;min-height:40px;margin-top:10px;padding:9px 12px;transition:background .16s,border-color .16s}.bs-app .discover-books .catalog-card>button:hover:not(:disabled){border-color:var(--brand-hover);background:var(--brand-hover)}.bs-app .discover-books .catalog-card>button:disabled{opacity:.7;cursor:wait}@media (width<=600px){.bs-app .discover-books .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bs-app .discover-books .catalog-card{padding:10px}.bs-app .discover-books .catalog-card>img,.bs-app .discover-books .catalog-card>.cover-placeholder{height:180px}.bs-app .discover-books .catalog-card h3{font-size:14px}.bs-app .discover-books .catalog-card>button{padding:8px;font-size:12px}}@media (width<=360px){.bs-app .discover-books .catalog-grid{grid-template-columns:1fr}.bs-app .discover-books .catalog-card>img,.bs-app .discover-books .catalog-card>.cover-placeholder{height:230px}}@media (width<=480px){.bs-app .discover-books .discover-search{gap:8px}.bs-app .discover-books .discover-search input{min-height:43px;padding:10px}.bs-app .discover-books .discover-search button{min-width:82px;min-height:43px;padding:10px 13px}}.recommendation-book-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);min-width:0;height:100%;color:var(--text-primary);box-shadow:var(--shadow-soft);flex-direction:column;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex;overflow:hidden}.recommendation-book-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card);transform:translateY(-2px)}.recommendation-book-cover{object-fit:contain;box-sizing:border-box;background:var(--bg-secondary);width:100%;height:190px;padding:12px;display:block}.recommendation-book-placeholder{box-sizing:border-box;background:var(--bg-secondary);min-height:160px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:16px;font-size:.85rem;display:flex}.recommendation-book-placeholder span:first-child{color:var(--focus-ring);font-size:2rem}.recommendation-book-details{flex-direction:column;flex:1;align-items:stretch;gap:10px;padding:14px;display:flex}.recommendation-book-details h3{color:var(--text-primary);font-family:var(--font-heading);overflow-wrap:anywhere;margin:0;font-size:1.02rem;font-weight:600;line-height:1.4}.recommendation-book-details p{margin:0}.recommendation-book-author,.recommendation-book-year{color:var(--text-secondary);font-size:.83rem;line-height:1.5}.recommendation-book-reason{color:var(--text-secondary);overflow-wrap:anywhere;flex:1;font-size:.85rem;line-height:1.6}.recommendation-book-reason strong{color:var(--text-primary)}.recommendation-book-actions{gap:8px;margin-top:auto;padding-top:4px;display:grid}.recommendation-book-open,.recommendation-book-button{box-sizing:border-box;border:1px solid var(--brand-primary);border-radius:var(--radius-sm);width:100%;min-height:40px;font:inherit;text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:9px 11px;font-size:.83rem;font-weight:600;text-decoration:none;transition:background .16s,border-color .16s;display:inline-flex}.recommendation-book-open{background:var(--brand-soft);color:var(--text-primary)}.recommendation-book-open:hover{border-color:var(--brand-hover);background:var(--bg-hover)}.recommendation-book-button{background:var(--brand-primary);color:#fff}.recommendation-book-button:hover:not(:disabled){border-color:var(--brand-hover);background:var(--brand-hover)}.recommendation-book-button:disabled{opacity:.6;cursor:not-allowed}.recommendation-book-open:focus-visible,.recommendation-book-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}@media (width<=480px){.recommendation-book-cover{height:165px}.recommendation-book-details{padding:11px}.recommendation-book-actions{gap:7px}}@media (prefers-reduced-motion:reduce){.recommendation-book-card,.recommendation-book-open,.recommendation-book-button{transition:none}.recommendation-book-card:hover{transform:none}}.ai-recommendations{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);min-width:0;color:var(--text-primary);margin:0;padding:16px}.ai-recommendations-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.ai-recommendations-header>div{min-width:0}.ai-recommendations-header h2{color:var(--text-primary);font-family:var(--font-heading);margin:0 0 8px;font-size:1.35rem;line-height:1.3}.ai-recommendations-header p{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.6}.ai-generate-button{border:1px solid var(--brand-primary);border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;min-height:40px;font:inherit;cursor:pointer;flex-shrink:0;padding:10px 13px;font-size:.85rem;font-weight:600;transition:background .16s}.ai-generate-button:hover:not(:disabled){background:var(--brand-hover)}.ai-generate-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.ai-generate-button:disabled,.ai-book-details button:disabled{opacity:.6;cursor:not-allowed}.ai-recommendations-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.ai-status,.ai-preferences,.ai-model-info{color:var(--text-secondary);overflow-wrap:anywhere;margin:12px 0;font-size:.88rem;line-height:1.6}.ai-preferences strong{color:var(--text-primary)}.ai-model-info{margin-top:16px;font-size:.78rem}.ai-error{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:#d46b83;overflow-wrap:anywhere;padding:11px 12px;font-size:.88rem;line-height:1.5}@media (width>=1400px){.ai-recommendations-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=640px){.ai-recommendations{padding:12px}.ai-recommendations-header{flex-direction:column;align-items:stretch}.ai-generate-button{white-space:normal;width:100%}.ai-recommendations-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media (width<=380px){.ai-recommendations-grid{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.ai-generate-button{transition:none}}.research-assistant{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);min-width:0;min-height:0;color:var(--text-primary);text-align:left;flex-direction:column;margin:0;padding:16px;display:flex}.research-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.research-header h2{color:var(--text-primary);font-family:var(--font-heading);margin:0 0 8px}.research-header p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.6}.research-header button,.research-form-footer button{border:1px solid var(--brand-primary);border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font:inherit;cursor:pointer;padding:10px 14px;font-size:12px;font-weight:600;transition:background .16s}.research-header button:hover:not(:disabled),.research-form-footer button:hover:not(:disabled){background:var(--brand-hover)}.research-header button:disabled,.research-form-footer button:disabled{opacity:.6;cursor:not-allowed}.research-layout{grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:12px;min-width:0;min-height:0;display:grid}.research-sidebar{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);min-width:0;padding:11px}.research-sidebar h3{color:var(--text-primary);margin:0 0 10px;font-size:12px}.research-sidebar>p{color:var(--text-secondary);font-size:11px;line-height:1.6}.research-chat-item{border-bottom:1px solid var(--border-color);align-items:center;gap:4px;min-width:0;padding:4px 0;display:flex}.research-chat-item.active{background:var(--brand-soft);border-radius:6px}.research-chat-open{overflow-wrap:anywhere;min-width:0;color:var(--text-primary);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;padding:7px;font-size:11px}.research-chat-open:hover{background:var(--bg-hover)}.research-delete-button{color:#d46b83;cursor:pointer;background:0 0;border:0;border-radius:5px;flex-shrink:0;padding:5px;font-size:10px}.research-delete-button:hover:not(:disabled){background:var(--bg-hover)}.research-delete-button:disabled{opacity:.5;cursor:not-allowed}.research-conversation{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);flex-direction:column;min-width:0;min-height:350px;display:flex;overflow:hidden}.research-messages{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex:1;min-width:0;min-height:220px;max-height:520px;padding:13px;overflow-y:auto}.research-empty{color:var(--text-secondary);text-align:center;padding:30px 10px;font-size:12px;line-height:1.7}.research-empty-icon{background:var(--brand-soft);width:38px;height:38px;color:var(--focus-ring);border-radius:11px;place-items:center;margin-bottom:7px;font-size:22px;display:inline-grid}.research-empty h3{color:var(--text-primary);font-family:var(--font-heading);margin:8px 0;font-size:16px}.research-empty p{margin:0}.research-start-hint{color:var(--text-secondary);font-size:11px;line-height:1.6}.research-message{overflow-wrap:anywhere;border:1px solid var(--border-color);border-radius:10px;max-width:95%;margin-bottom:12px;padding:10px 11px;font-size:12px;line-height:1.65}.research-message strong{margin-bottom:4px;font-size:10px;display:block}.research-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.research-message.user{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff;margin-left:auto}.research-message.assistant{background:var(--bg-secondary);color:var(--text-primary);margin-right:auto}.research-thinking{color:var(--text-secondary);font-size:11px;font-style:italic}.research-prompt-form{border-top:1px solid var(--border-color);flex-direction:column;gap:8px;min-width:0;padding:11px;display:flex}.research-prompt-form label{color:var(--text-secondary);font-size:11px;font-weight:600}.research-prompt-form textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-secondary);width:100%;min-height:85px;color:var(--text-primary);font:inherit;padding:10px;font-size:12px;line-height:1.5;display:block}.research-prompt-form textarea::placeholder{color:var(--text-muted)}.research-prompt-form textarea:focus{border-color:var(--focus-ring)}.research-prompt-form textarea:disabled{opacity:.7;cursor:not-allowed}.research-form-footer{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.research-form-footer button{min-width:65px;padding:8px 11px}.research-error{color:#d46b83;overflow-wrap:anywhere;flex:none;margin:0 0 12px;font-size:11px;line-height:1.6}@media (width<=650px){.research-assistant{padding:12px}.research-layout{grid-template-columns:minmax(0,1fr)}.research-sidebar{max-height:180px;overflow-y:auto}.research-conversation{min-height:360px}.research-messages{min-height:220px;max-height:460px;padding:10px}.research-message{max-width:100%}.research-prompt-form{padding:10px}}@media (prefers-reduced-motion:reduce){.research-header button,.research-form-footer button{transition:none}}
