:root{color-scheme:light dark;--bg:light-dark(oklch(96.2% .008 85),oklch(20.5% .006 75));--surface:light-dark(oklch(99.2% .004 85),oklch(25% .006 75));--surface2:light-dark(oklch(94.5% .008 85),oklch(28% .008 75));--border:light-dark(oklch(90% .01 80),oklch(34% .01 75));--border2:light-dark(oklch(84% .012 80),oklch(38% .01 75));--dim:light-dark(oklch(78.5% .012 80),oklch(42% .01 75));--muted:light-dark(oklch(68% .012 80),oklch(58% .01 75));--mid:light-dark(oklch(52% .014 78),oklch(70% .012 75));--text:light-dark(oklch(34% .01 80),oklch(90% .01 80));--bright:light-dark(oklch(22% .01 80),oklch(96.5% .006 85));--green-100:light-dark(oklch(95% .03 155),oklch(30% .05 155));--green-400:light-dark(oklch(72% .13 155),oklch(60% .13 155));--green-600:light-dark(oklch(52% .13 155),oklch(70% .15 155));--green-700:light-dark(oklch(46% .13 155),oklch(75% .14 155));--green:var(--green-600);--blue-100:light-dark(oklch(94% .04 250),oklch(28% .06 250));--blue-600:light-dark(oklch(55% .11 250),oklch(65% .12 250));--blue:var(--blue-600);--amber-100:light-dark(oklch(95% .05 75),oklch(32% .06 75));--amber-600:light-dark(oklch(62% .15 75),oklch(72% .15 75));--amber:var(--amber-600);--red-100:light-dark(oklch(95% .04 30),oklch(30% .06 30));--red-600:light-dark(oklch(55% .18 30),oklch(66% .17 30));--red:var(--red-600);--on-green:light-dark(#fff,oklch(15% .02 155));--on-amber:#fff;--on-red:#fff;--cat-explainer:light-dark(oklch(62% .05 85),oklch(78% .05 85));--cat-facts:var(--blue);--cat-support:light-dark(oklch(50% .1 290),oklch(72% .1 290));--cat-nora:var(--amber);--flag-p:var(--blue);--flag-t:var(--green);--flag-n:var(--amber);--flag-c:var(--red);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-sm:0 1px 2px oklch(20% 0 0/.06);--shadow-md:0 4px 16px oklch(20% 0 0/.1);--shadow-lg:0 8px 32px oklch(20% 0 0/.15);--sidebar-source:260px;--sidebar-version:200px;--topbar-h:48px;--max-content:1120px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.4, 0, .2, 1);--fs-caption:11px;--fs-label:11px;--fs-ui:13px;--fs-editor:14px;--fs-h3:16px;--fs-h2:20px;--fs-h1:24px;--font-ui:"Instrument Sans", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", "SF Mono", "Fira Code", Menlo, Consolas, monospace;color:var(--text);background:var(--bg);font-family:var(--font-ui);line-height:1.5;font-size:var(--fs-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);min-height:100svh}input,textarea,select{font:inherit;color:var(--text)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}textarea{tab-size:2}button{font:inherit;cursor:pointer;transition:background .12s var(--ease-io), border-color .12s var(--ease-io), color .12s var(--ease-io)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px color-mix(in oklab, var(--green) 45%, transparent);outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--dim);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--muted)}#root{min-height:100svh}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{background:var(--bg);min-height:100vh;color:var(--text);flex-direction:column;display:flex}.top-bar{background:var(--surface);border-bottom:1px solid var(--border);z-index:100;align-items:center;height:48px;padding:0 20px;display:flex;position:sticky;top:0}.topbar__brand{align-items:center;gap:var(--sp-2);font-family:var(--font-ui);letter-spacing:.35em;color:var(--text);text-transform:uppercase;-webkit-user-select:none;user-select:none;font-size:13px;font-weight:700;display:flex}.topbar__indicator{background:var(--green);border-radius:50%;width:7px;height:7px}.topbar__period{color:var(--green);letter-spacing:0}.topbar__right{align-items:center;gap:var(--sp-3);margin-left:auto;display:flex}.topbar__nav{align-items:center;gap:var(--sp-3);display:flex}.topbar__actions{align-items:center;gap:var(--sp-3);border-left:1px solid var(--border);padding-left:var(--sp-3);display:flex}.topbar__auth{align-items:center;display:flex}.topbar__login-btn,.topbar__logout-btn{border:1px solid var(--border2);border-radius:var(--radius-md);color:var(--mid);background:var(--surface2);padding:6px 10px;text-decoration:none}.topbar__library-btn{color:var(--mid);border-radius:var(--radius-md);background:0 0;border:none;align-items:center;height:32px;padding:0 10px;font-size:13px;font-weight:500;display:flex}.topbar__library-btn:hover{color:var(--text)}.topbar__theme-btn{color:var(--mid);border-radius:var(--radius-md);background:0 0;border:none;align-items:center;height:32px;padding:0 6px;display:flex}.topbar__theme-btn:hover{color:var(--text);background:var(--surface2)}.topbar__material-field{align-items:center;gap:var(--sp-3);margin-left:var(--sp-3);padding-left:var(--sp-3);border-left:1px solid var(--border);display:flex}.topbar__material-label{font-size:var(--fs-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-weight:600}.topbar__title-input{background:var(--surface2);color:var(--text);border:1px solid var(--border2);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:var(--fs-ui);letter-spacing:.02em;width:280px;transition:border-color .12s var(--ease-io);padding:6px 10px;font-weight:500}.topbar__title-input:focus{border-color:var(--dim);outline:none}.topbar__title-input::placeholder{color:var(--dim);font-style:italic}.topbar__autosave{font-size:var(--fs-caption);color:var(--muted);white-space:nowrap;text-align:right;min-width:64px}.editor-grid{flex-direction:row;flex-grow:1;gap:0;min-height:0;display:flex;overflow:hidden}@media (width<=900px){.editor-grid{flex-direction:column;overflow-y:auto}}.source-panel{gap:var(--sp-4);width:260px;min-width:260px;padding:var(--sp-4);border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:1;min-height:0;display:flex;position:relative;overflow-y:auto}.panel__header{letter-spacing:.18em;text-transform:uppercase;color:var(--dim);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;font-size:11px;font-weight:700;display:flex}.panel__field{gap:var(--sp-2);flex-direction:column;flex-shrink:0;display:flex}.panel__label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.panel__label--accent{color:var(--green)}.panel__field textarea,.panel__field input{background:var(--surface2);color:var(--text);border:1px solid var(--border2);border-radius:var(--radius-sm);padding:10px var(--sp-3);resize:vertical;font-size:13px;line-height:1.5;transition:border-color .12s}.panel__field textarea:focus,.panel__field input:focus{border-color:var(--dim)}.source-input{flex-direction:column;gap:6px;display:flex}.source-input textarea,.source-input .source-input__row{background:var(--surface2);color:var(--text);border:1px solid var(--border2);border-radius:var(--radius-sm);font-size:var(--fs-ui);transition:border-color .12s var(--ease-io);line-height:1.5}.source-input textarea{padding:10px var(--sp-3);resize:vertical}.source-input textarea:focus{border-color:var(--dim);outline:none}.source-input__row{align-items:center;gap:var(--sp-2);padding:5px 6px;display:flex}.source-input__file-btn{border-radius:var(--radius-sm);width:30px;height:26px;color:var(--mid);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .1s,background .1s;display:flex}.source-input__file-btn:hover:not(:disabled){color:var(--text);background:var(--border)}.source-input__file-btn:disabled{opacity:.45;cursor:not-allowed}.source-input__row .panel__button--primary{margin-left:auto}.panel__button{background:var(--surface2);color:var(--mid);border:1px solid var(--border2);border-radius:var(--radius-sm);cursor:pointer;align-items:center;height:32px;padding:0 10px;font-size:12px;font-weight:500;display:flex}.panel__button:hover:not(:disabled){background:var(--border);color:var(--text);border-color:var(--dim)}.panel__button:disabled{opacity:.45;cursor:not-allowed}.panel__button--primary{background:var(--green);color:#fff;border:none;font-size:13px;font-weight:600}.panel__button--primary:hover:not(:disabled){opacity:.92}.panel__button--active{background:var(--green);color:#fff;border-color:#0000;font-weight:600}.source-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.source-list__item{align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:12px;transition:border-color .12s;display:flex}.source-list__item:hover{border-color:var(--dim)}.source-list__type-icon{color:var(--dim);flex-shrink:0}.source-list__item span{text-overflow:ellipsis;white-space:nowrap;color:var(--mid);overflow:hidden}.source-list__item a{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--blue);flex:auto;text-decoration:none;overflow:hidden}.source-list__item a:hover{text-decoration:underline}.source-list__remove{color:var(--dim);cursor:pointer;padding:0 var(--sp-1);background:0 0;border:none;font-size:15px;line-height:1;transition:color .1s}.source-list__remove:hover{color:var(--red)}.source-panel__actions{padding-top:var(--sp-3);border-top:1px solid var(--border);gap:var(--sp-2);flex-direction:column;flex-shrink:0;margin-top:auto;display:flex}.source-panel__prepare-row{align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-height:20px;display:flex}.source-panel__generate-row{align-items:center;gap:var(--sp-2);display:flex}.source-panel__generate{background:var(--green);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;flex:auto;height:32px;padding:0 10px;font-size:13px;font-weight:600;position:relative}.source-panel__generate:hover:not(:disabled){opacity:.9}.source-panel__generate--blocked{background:var(--amber)}.source-panel__generate:disabled{opacity:.5;cursor:not-allowed}.prepared-chip{background:var(--green-100);border:1px solid var(--green-400);border-radius:var(--radius-pill);color:var(--green-700);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;padding:3px 8px;font-size:11px;transition:opacity .12s;display:inline-flex}.prepared-chip:hover{opacity:.75}.prepared-chip__dot{background:var(--green);border-radius:50%;flex-shrink:0;width:6px;height:6px}.editor-panel{background:var(--surface);flex-direction:column;flex:1;gap:0;min-height:0;display:flex;position:relative}.panel__editor{background:var(--surface);min-height:0;color:var(--text);border:none;border-bottom:1px solid var(--border);padding:20px var(--sp-5);font-family:var(--font-mono);resize:none;outline:none;flex:1;font-size:14px;line-height:1.65}.panel__editor::placeholder{color:var(--dim);font-style:italic}.panel__editor--readonly{background:var(--surface2);cursor:default}.mode-toggle{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius-md);flex-shrink:0;display:flex;overflow:hidden}.mode-toggle__btn{color:var(--mid);cursor:pointer;white-space:nowrap;background:0 0;border:none;height:30px;padding:0 10px;font-size:12px;font-weight:500;transition:background .12s,color .12s}.mode-toggle__btn--active{background:var(--green-100);color:var(--green-700);font-weight:600}.mode-toggle__btn:hover:not(:disabled):not(.mode-toggle__btn--active){background:var(--surface);color:var(--text)}.mode-toggle__btn:disabled{opacity:.45;cursor:not-allowed}.chat-container{padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border);background:var(--surface2);align-items:center;gap:10px;display:flex}.chat-input{background:var(--surface);color:var(--text);border:1px solid var(--border2);border-radius:var(--radius-md);flex:1;height:32px;padding:0 14px;font-size:13px;transition:border-color .12s}.chat-input:focus{border-color:var(--dim);outline:none}.version-panel{gap:var(--sp-3);width:200px;min-width:200px;padding:var(--sp-4) var(--sp-3) 0;border-left:1px solid var(--border);background:var(--surface);flex-direction:column;min-height:0;display:flex}.version-section{margin-bottom:var(--sp-3)}.version-section__label{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);padding-left:var(--sp-1);margin-bottom:6px;font-size:10px;font-weight:600}.version-list{gap:var(--sp-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.version-item{align-items:center;gap:var(--sp-1);padding:7px var(--sp-2);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-direction:row;font-size:12px;font-weight:500;transition:border-color .12s,background .12s;display:flex}.version-item:hover{background:color-mix(in oklab, var(--surface2), var(--text) 6%);border-color:var(--dim)}.version-item--active,.version-item--active:hover{background:var(--green-100);border-color:var(--green-400)}.version-item__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.version-item__label{white-space:nowrap;color:var(--mid);font-weight:500;overflow:hidden;mask-image:linear-gradient(90deg,#000 75%,#0000 100%)}.version-item__meta{color:var(--dim);font-size:10px}.version-item__remove{color:var(--dim);cursor:pointer;padding:0 var(--sp-1);background:0 0;border:none;font-size:15px;line-height:1;transition:color .1s}.version-item__remove:hover{color:var(--red)}.source-panel__generate[data-tooltip]:after{content:attr(data-tooltip);background:var(--text);color:var(--surface);white-space:normal;padding:var(--sp-1) var(--sp-2);pointer-events:none;opacity:0;z-index:10;border-radius:4px;font-size:11px;font-weight:400;transition:opacity .15s;position:absolute;bottom:calc(100% + 6px);left:0;right:0}.source-panel__generate[data-tooltip]:hover:after{opacity:1}.versions-content{flex:1;min-height:0;overflow-y:auto}.version-panel__actions{padding:var(--sp-3) 0;border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:6px;margin-top:auto;display:flex}.editor-actions-dropdown{position:relative}.editor-actions-dropdown__trigger{background:var(--surface2);color:var(--mid);border:1px solid var(--border2);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:6px;width:100%;height:32px;padding:0 10px;font-size:13px;font-weight:500;transition:border-color .12s;display:flex}.editor-actions-dropdown__trigger:hover:not(:disabled){border-color:var(--dim)}.editor-actions-dropdown__trigger:disabled{opacity:.45;cursor:not-allowed}.editor-actions-dropdown__arrow{border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--mid);width:0;height:0;margin-left:2px;display:inline-block}.editor-actions-dropdown__popover{z-index:200;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-md);box-shadow:var(--shadow-md);gap:var(--sp-1);flex-direction:column;width:max-content;min-width:100%;padding:6px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0;right:auto}.editor-actions-dropdown__item{background:var(--surface2);color:var(--mid);border:1px solid var(--border);border-radius:var(--radius-md);padding:5px var(--sp-3);cursor:pointer;text-align:left;font-size:12px;font-weight:500;transition:background .1s,color .1s,border-color .1s}.editor-actions-dropdown__item:hover{background:var(--border);color:var(--text);border-color:var(--dim)}.format-dropdown{position:relative}.format-dropdown__trigger{background:var(--surface2);color:var(--mid);border:1px solid var(--border2);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:6px;height:32px;padding:0 10px;font-size:13px;font-weight:500;transition:border-color .12s;display:flex}.format-dropdown__trigger:hover{border-color:var(--dim)}.format-dropdown__arrow{border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--mid);width:0;height:0;margin-left:2px;display:inline-block}.format-dropdown__popover{z-index:200;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-md);box-shadow:var(--shadow-md);gap:var(--sp-1);flex-direction:column;min-width:160px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.format-dropdown__item{background:var(--surface2);color:var(--mid);border:1px solid var(--border);border-radius:var(--radius-md);padding:5px var(--sp-3);cursor:pointer;text-align:left;font-size:12px;font-weight:500;transition:background .1s,color .1s,border-color .1s}.format-dropdown__item:hover{background:var(--border);color:var(--text);border-color:var(--dim)}.format-dropdown__item--active{background:var(--green);color:#fff;border-color:#0000;font-weight:600}.format-dropdown__popover--up{top:auto;bottom:calc(100% + 6px)}.loading-overlay{z-index:50;justify-content:center;align-items:center;gap:var(--sp-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:inherit;background:#00000040;flex-direction:column;display:flex;position:absolute;inset:0}.loading-overlay__spinner{border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay__label{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:700}.ask-preview{background:var(--surface);border-bottom:1px solid var(--border);padding:var(--sp-3) var(--sp-4);flex-shrink:0}.ask-preview__chip{height:28px;padding:0 var(--sp-3);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--mid);font-size:var(--fs-ui);cursor:pointer;transition:border-color .12s var(--ease-io), color .12s var(--ease-io);align-items:center;gap:6px;font-weight:500;display:inline-flex}.ask-preview__chip:hover{border-color:var(--dim);color:var(--text)}.ask-preview__chip-icon{color:var(--blue);font-size:14px;line-height:1}.ask-preview__toggle{color:var(--blue);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12px;font-weight:500}.ask-preview__toggle:hover{text-decoration:underline}.ask-preview__expanded{gap:var(--sp-2);flex-direction:column;display:flex}.ask-preview__body{color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:240px;font-size:13px;line-height:1.55;overflow-y:auto}.ask-blocked{justify-content:center;align-items:center;gap:var(--sp-3);padding:var(--sp-7) var(--sp-5);flex-direction:column;flex:1;display:flex}.ask-blocked__icon{font-size:32px;line-height:1}.ask-blocked__message{color:var(--dim);text-align:center;max-width:320px;font-size:13px;line-height:1.5}.ask-area{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.ask-thread{gap:var(--sp-3);min-height:0;padding:var(--sp-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.transcript-empty{color:var(--dim);padding:var(--sp-6) var(--sp-4);justify-content:center;align-items:center;font-size:13px;display:flex}.transcript-bubble-wrapper{display:flex}.transcript-bubble{border-radius:var(--radius-md);word-break:break-word;max-width:80%;padding:10px 14px;font-size:13px;line-height:1.55}.transcript-bubble--question{background:var(--green);color:#fff;margin-left:auto}.transcript-bubble--answer{background:var(--surface2);color:var(--text);border:1px solid var(--border);margin-right:auto}.transcript-bubble__content{white-space:pre-wrap;word-break:break-word}.transcript-bubble--typing{min-width:52px}.typing-dots{gap:var(--sp-1);align-items:center;display:inline-flex}.typing-dots span{background:var(--dim);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite typing-bounce}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}@media (width<=900px){.editor-panel--mobile-ask{z-index:200;background:var(--surface);flex-direction:column;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.ask-mobile-header{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);background:var(--surface2);flex-shrink:0;display:flex}.ask-mobile-header__close{color:var(--blue);cursor:pointer;padding:var(--sp-1) 0;background:0 0;border:none;font-size:14px;font-weight:500}.ask-mobile-header__title{color:var(--text);font-size:14px;font-weight:600}}@media (width>=901px){.ask-mobile-header{display:none}}.factura-text-block{gap:6px}.factura-text-block__preview-wrap{flex:1;max-width:calc(100% - 20px);position:relative;overflow:hidden;mask-image:linear-gradient(90deg,#000 75%,#0000 100%)}.factura-text-block__preview{color:var(--mid);white-space:nowrap;font-size:11px;display:block;overflow:hidden}.modal-overlay{z-index:1000;padding:var(--sp-4);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;max-width:800px;max-height:80vh;box-shadow:var(--shadow-lg);flex-direction:column;padding:20px;display:flex}.modal__header{color:var(--mid);letter-spacing:.04em;border-bottom:1px solid var(--border);word-break:break-all;margin-bottom:10px;padding-bottom:10px;font-size:12px;font-weight:600}.modal__body{white-space:pre-wrap;word-break:break-word;color:var(--text);padding:var(--sp-2);border-radius:var(--radius-sm);flex:1;min-height:0;margin:0;font-size:13px;line-height:1.6;overflow-y:auto}.inline-spinner{border:2px solid var(--border);border-top-color:var(--green);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:1s linear infinite spin}.source-list__item--pending{opacity:.7;pointer-events:none}.lib-page{max-width:1120px;padding:var(--sp-6) var(--sp-5) var(--sp-7);width:100%;height:calc(100svh - var(--topbar-h));flex-direction:column;min-height:0;margin:0 auto;display:flex}.lib-header{justify-content:space-between;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-5);flex-shrink:0;display:flex}.lib-title{font-size:var(--fs-h2);letter-spacing:-.02em;color:var(--bright);margin:0;font-weight:700;line-height:1.2}.lib-header-right{align-items:center;gap:var(--sp-2);display:flex}.lib-btn-primary{background:var(--green);color:#fff;border-radius:var(--radius-md);padding:var(--sp-2) 14px;border:none;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.lib-btn-primary:hover:not(:disabled){opacity:.92}.lib-toolbar{margin-bottom:var(--sp-4);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;display:flex}.lib-search-wrap{flex:1;min-width:220px;max-width:320px;position:relative}.lib-search-icon{color:var(--dim);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.lib-search-input{width:100%;height:34px;padding:0 10px 0 var(--sp-6);border:1px solid var(--border2);border-radius:var(--radius-md);background:var(--surface);color:var(--text)}.lib-search-input:focus{border-color:var(--blue);outline:none}.lib-filter-group{gap:var(--sp-1);display:flex}.lib-filter-btn{height:34px;padding:0 var(--sp-3);border:1px solid var(--border2);border-radius:var(--radius-md);background:var(--surface);color:var(--mid);font-size:12px;font-weight:500}.lib-filter-btn:hover:not(.active){background:var(--surface2)}.lib-filter-btn.active{background:var(--green);color:#fff;border-color:#0000}.lib-count{color:var(--muted);margin-left:auto;font-size:12px}.lib-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex:0 auto;min-height:0;display:flex;overflow:hidden}.lib-table-scroll{width:100%;min-height:0;overflow:auto}.lib-table{border-collapse:collapse;width:100%;font-size:13px}.lib-table th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--surface2);white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:2;box-shadow:inset 0 -1px 0 var(--border);padding:10px 14px;font-size:11px;font-weight:600;position:sticky;top:0}.lib-table th.is-sortable{cursor:pointer}.lib-table th.is-sortable:hover{color:var(--text)}.sort-icon{margin-left:var(--sp-1);vertical-align:middle}.sort-icon.neutral{opacity:.35}.sort-icon.active{opacity:1}.lib-table tbody tr{border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s}.lib-table tbody tr:last-child{border-bottom:none}.lib-table tbody tr:hover{background:color-mix(in srgb, var(--surface2) 65%, var(--surface))}.lib-table td{padding:var(--sp-3) 14px;vertical-align:middle}.lib-td-date{color:var(--muted);white-space:nowrap;font-size:12px}.lib-td-id{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.lib-td-title{min-width:280px}.lib-td-format,.lib-td-model,.lib-td-flags{white-space:nowrap}.lib-td-model{color:var(--muted);font-size:12px}.lib-td-empty{padding:var(--sp-7) var(--sp-4);text-align:center;color:var(--muted);font-style:italic}.lib-title-input{border:none;border-bottom:1.5px solid var(--green);width:100%;color:var(--text);background:0 0;padding:0;font-size:13px;font-weight:500}.lib-title-input:focus{outline:none}.lib-title-text{color:var(--text);font-weight:500}.lib-title-empty{color:var(--muted);font-style:italic}.lib-flags-row{align-items:center;gap:var(--sp-1);display:flex}.pill{border-radius:var(--radius-sm);font-size:var(--fs-caption);white-space:nowrap;background:color-mix(in oklab, var(--mid) 12%, var(--surface));color:var(--mid);padding:3px 9px;font-weight:500;line-height:1.4;display:inline-block}.pill--explainer{background:color-mix(in oklab, var(--cat-explainer) 16%, var(--surface));color:var(--cat-explainer)}.pill--facts{background:color-mix(in oklab, var(--cat-facts) 16%, var(--surface));color:var(--cat-facts)}.pill--support{background:color-mix(in oklab, var(--cat-support) 16%, var(--surface));color:var(--cat-support)}.pill--nora_gal{background:color-mix(in oklab, var(--cat-nora) 16%, var(--surface));color:var(--cat-nora)}.flag{border-radius:var(--radius-sm);width:22px;height:22px;font-size:var(--fs-caption);justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex;position:relative}.flag--p{background:color-mix(in oklab, var(--flag-p) 18%, var(--surface));color:var(--flag-p)}.flag--t{background:color-mix(in oklab, var(--flag-t) 18%, var(--surface));color:var(--flag-t)}.flag--n{background:color-mix(in oklab, var(--flag-n) 18%, var(--surface));color:var(--flag-n)}.flag--c{background:color-mix(in oklab, var(--flag-c) 18%, var(--surface));color:var(--flag-c)}.flag[data-tooltip]:after{content:attr(data-tooltip);background:var(--text);color:var(--surface);font-size:var(--fs-caption);white-space:nowrap;padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);pointer-events:none;opacity:0;transition:opacity .15s var(--ease-out);z-index:10;font-weight:400;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.flag[data-tooltip]:hover:after{opacity:1}.lib-prompt-wrap{position:relative}.lib-prompt-menu{top:calc(100% + var(--sp-1));z-index:200;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:absolute;left:0;overflow:hidden}.lib-prompt-item{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;padding:9px 14px;font-size:13px}.lib-prompt-item:hover{background:var(--surface2)}.lib-prompt-item.active{color:var(--green);font-weight:600}.lib-td-actions{text-align:right;vertical-align:middle;width:32px;padding:0 6px 0 0}.lib-card__remove{color:var(--dim);cursor:pointer;padding:0 var(--sp-1);opacity:0;background:0 0;border:none;font-size:15px;line-height:1;transition:opacity .12s,color .1s}.lib-table tbody tr:hover .lib-card__remove{opacity:1}.lib-card__remove:hover{color:var(--red)}.autosave-status{color:var(--muted);align-self:center;font-size:.75rem}
