@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap);:root{--bg-app:#071221;--bg-app-soft:#0f1f39;--surface-1:#f7faff;--surface-2:#eef4ff;--surface-3:#e2ecff;--text-1:#0b1628;--text-2:#31425f;--text-3:#60728f;--brand-1:#26c6ff;--brand-2:#38f;--brand-3:#17e4bd;--brand-glow:#26c6ff5c;--success:#25c778;--danger:#ff5f7f;--warning:#ffb34d;--border-soft:#6681b14d;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--shadow-soft:0 14px 28px #0712211a;--shadow-md:0 18px 42px #07122129;--shadow-glow:0 0 0 1px #26c6ff38,0 18px 50px #26c6ff29;--transition-fast:0.2s ease;--transition-mid:0.3s ease}*,:after,:before{box-sizing:border-box}#root,body,html{height:100%}html{overflow-x:hidden;overflow-y:auto}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 8% 12%,#26c6ff33,#0000 28%),radial-gradient(circle at 92% 10%,#3388ff2e,#0000 30%),radial-gradient(circle at 88% 86%,#17e4bd26,#0000 28%),linear-gradient(155deg,#071221,#0f1f39);background:radial-gradient(circle at 8% 12%,#26c6ff33,#0000 28%),radial-gradient(circle at 92% 10%,#3388ff2e,#0000 30%),radial-gradient(circle at 88% 86%,#17e4bd26,#0000 28%),linear-gradient(155deg,var(--bg-app) 0,var(--bg-app-soft) 100%);color:#0b1628;color:var(--text-1);font-family:Manrope,Segoe UI,sans-serif;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:Space Grotesk,Manrope,sans-serif}button,input,textarea{font-family:inherit}::selection{background:#26c6ff38}code{font-family:JetBrains Mono,Fira Code,Consolas,Courier New,monospace}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0d182a33}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#26c6ffa6,#3388ffb3);border-radius:999px}.App{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}.App-header{align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(130deg,#081424f5,#091d34e0);border-bottom:1px solid #7395ca47;display:flex;justify-content:center;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.App-header h1{font-size:1.4rem;font-weight:700;margin:0}.App-brand{align-items:center;color:#ecf7ff;display:inline-flex;gap:14px;letter-spacing:.04em;text-transform:uppercase}.App-brand span{background:linear-gradient(90deg,#ecf7ff,#a8ddff 48%,#98f2dd);-webkit-background-clip:text;background-clip:text;color:#0000}.App-logo{background:#0000;border-radius:50%;box-shadow:0 8px 24px #8246ff59;height:clamp(52px,5vw,66px);object-fit:cover;transform:scale(1.2);width:clamp(52px,5vw,66px)}.App-main{display:flex;flex:1 1;flex-direction:column;margin:0 auto;max-width:1780px;overflow:hidden;padding:18px;width:100%}.App-main>div:not(.content-container){align-items:center;display:flex;height:100%;justify-content:center}.App-footer{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#081323b8;border-top:1px solid #7395ca3d;flex-shrink:0;padding:12px 18px}.App-footer-inner{align-items:center;display:flex;gap:14px;margin:0 auto;max-width:1780px}.App-footer-text{color:#e0efffdb;font-size:.92rem;letter-spacing:.02em}.App-footer-text strong{color:#d6f5ff}.App-footer-social{align-items:center;display:inline-flex;gap:8px}.App-footer-social a{align-items:center;background:#ffffff14;border:1px solid #9ac6ff61;border-radius:12px;color:#ecf7ff;display:inline-flex;height:36px;justify-content:center;transition:transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);width:36px}.App-footer-social a:hover{background:#26c6ff38;box-shadow:0 10px 22px #26c6ff4d;transform:translateY(-2px)}.App-footer-social a:active{transform:scale(.96)}.ai-section,.viewer-section{background:linear-gradient(155deg,#fffffff5,#f4f9fffa);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-height:0;min-width:0;overflow:hidden;position:relative}.ai-section{display:flex;flex-direction:column}.tabs{background:linear-gradient(180deg,#f9fcff,#edf4ff);border:1px solid #5d78a842;border-radius:16px;display:flex;flex-shrink:0;gap:8px;margin-bottom:14px;padding:8px}.tab-button{align-items:center;background:#0000;border:1px solid #0000;border-radius:12px;color:var(--text-2);cursor:pointer;display:inline-flex;flex:1 1;font-size:.86rem;font-weight:800;gap:6px;justify-content:center;padding:11px 12px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.tab-button:hover:not(:disabled){background:#ffffffbd;border-color:#4f6fa438;color:#0e2a4f;transform:translateY(-2px)}.tab-button.active{background:linear-gradient(130deg,#e6f8fff2,#ecf4fff2);border-color:#26c6ff61;box-shadow:inset 0 0 0 1px #ffffffb8,0 12px 20px #0a172b1c;color:#10386b}.tab-button:active:not(:disabled){transform:scale(.98)}.tab-button:disabled{cursor:not-allowed;opacity:.52}@media (max-width:1024px){.App-main{padding:14px}.App-header{padding:14px 16px}}@media (max-width:1180px){.App{min-height:100vh;overflow-y:auto}.App-main{padding:10px}.App-main,.ai-section{overflow:visible}.App-header h1{font-size:1.18rem}.App-footer-inner{flex-wrap:wrap;justify-content:center}.tabs{flex-wrap:wrap}}@media (max-width:560px){.App-brand{gap:10px}.App-logo{border-radius:16px;height:56px;padding:3px;width:56px}}.pdf-uploader{align-items:center;display:flex;justify-content:center;min-height:100%;padding:16px}.upload-card{background:radial-gradient(circle at 85% 14%,#26c6ff2e,#0000 36%),linear-gradient(165deg,#f9fcff,#ebf3ff);border:1px solid #708ebc4d;border-radius:20px;box-shadow:0 26px 56px #07122129;padding:clamp(22px,4vw,38px);text-align:center;transition:transform var(--transition-mid),box-shadow var(--transition-mid),border-color var(--transition-fast);width:min(680px,100%)}.upload-card.is-dragging{border-color:#26c6ff9e;box-shadow:0 30px 64px #07122133,0 0 0 3px #26c6ff24;transform:translateY(-3px)}.upload-icon{align-items:center;background:radial-gradient(circle at 30% 20%,#26c6ff59,#0000 42%),linear-gradient(145deg,#0f487f,#1a90c8);border-radius:24px;box-shadow:0 18px 40px #081e3447;color:#e5f5ff;display:inline-flex;height:92px;justify-content:center;margin:0 auto 18px;width:92px}.upload-card h2{color:#143c69;font-size:clamp(1.35rem,3vw,1.8rem);letter-spacing:.02em;margin:0 0 9px}.upload-card p{color:#4d678d;font-size:.95rem;margin:0 0 24px}.file-input-wrapper{margin:18px 0 14px}.file-input{display:none}.file-label{background:linear-gradient(135deg,#fff,#edf5ff);border:1px solid #698abb59;border-radius:13px;color:#1f4a7a;cursor:pointer;display:inline-block;font-size:.86rem;font-weight:800;padding:12px 18px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);width:min(280px,100%)}.file-label:hover{border-color:#26c6ff94;box-shadow:0 12px 22px #0b1d3421;transform:translateY(-2px)}.file-selected{background:#ffffffd1;border:1px solid #6c8bba4d;border-radius:12px;color:#214b7a;font-size:.83rem;margin:8px auto 0;overflow-wrap:anywhere;padding:9px 12px;width:min(420px,100%)}.upload-button{background:linear-gradient(135deg,#0d4b89,#1c95cd);border:1px solid #5caef6b8;border-radius:13px;color:#ebf8ff;cursor:pointer;font-size:.88rem;font-weight:900;letter-spacing:.03em;margin-top:16px;padding:13px 20px;text-transform:uppercase;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast);width:100%}.upload-button:hover:not(:disabled){box-shadow:0 16px 28px #0a345947;filter:saturate(1.07);transform:translateY(-2px)}.upload-button:active:not(:disabled){transform:scale(.98)}.upload-button:disabled{cursor:not-allowed;opacity:.55}.pdf-uploader .error-message{background:#fff0f4eb;border:1px solid #ef5f7f5c;border-radius:12px;color:#a12149;font-size:.84rem;font-weight:700;margin-top:16px;padding:10px 12px}.notice-message{color:#325a86;font-size:.83rem;line-height:1.45;margin-top:8px}.loading-spinner{color:#335782;font-size:.84rem;font-weight:700;margin-top:18px}.pdf-uploader .spinner{animation:spin 1s linear infinite;border:4px solid #26c6ff33;border-radius:50%;border-top-color:#1a8cf0;height:40px;margin:0 auto 10px;width:40px}@media (max-width:640px){.pdf-uploader{padding:8px}.upload-card{border-radius:16px;padding:18px 14px}.upload-icon{border-radius:18px;height:76px;width:76px}}.pdf-viewer{background:linear-gradient(180deg,#f7fbff,#eff5ff);border:1px solid #7291c242;border-radius:18px;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.pdf-header{align-items:center;background:linear-gradient(130deg,#08182cf5,#0d2b4deb);border-bottom:1px solid #7ba1d75c;color:#ebf7ff;display:flex;gap:10px;justify-content:space-between;padding:14px 16px}.pdf-title{min-width:0}.pdf-title h3{font-size:1rem;letter-spacing:.02em;margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-info{align-items:center;display:inline-flex;flex-shrink:0;gap:8px}.page-indicator{background:#ffffff1f;border:1px solid #78a8f37a;border-radius:999px;color:#e5f4ff;font-size:.78rem;font-weight:700;letter-spacing:.02em;padding:6px 12px}.pdf-canvas-container{align-items:flex-start;background:linear-gradient(155deg,#e4efffa6,#eef6ffcc),repeating-linear-gradient(45deg,#99b1d61f,#99b1d61f 12px,#0000 0,#0000 24px);display:flex;flex:1 1;justify-content:center;min-height:0;overflow:auto;padding:16px;position:relative}.pdf-canvas-container::-webkit-scrollbar{height:10px;width:10px}.pdf-canvas-container::-webkit-scrollbar-track{background:#6a8cbe26;border-radius:999px}.pdf-canvas-container::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#26c6ffb3,#3388ffb8);border-radius:999px}.pdf-rendering-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#f2f9ffa6;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:10}.pdf-canvas{background:#fff;border:1px solid #7ca0d14d;border-radius:14px;box-shadow:0 18px 40px #05101d3d}.pdf-controls{align-items:center;background:linear-gradient(180deg,#f9fcff,#ecf3ff);border-top:1px solid #708ebc3d;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:12px 14px}.pdf-control-btn{background:linear-gradient(130deg,#fefeff,#edf4ff);border:1px solid #567eb64d;border-radius:12px;color:#173868;cursor:pointer;font-size:.82rem;font-weight:800;letter-spacing:.01em;min-width:102px;padding:9px 12px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.pdf-control-btn:hover:not(:disabled){border-color:#26c6ff80;box-shadow:0 12px 22px #0b1d3424;transform:translateY(-2px)}.pdf-control-btn:active:not(:disabled){transform:scale(.97)}.pdf-control-btn:disabled{cursor:not-allowed;opacity:.45}.pdf-page-input-group{align-items:center;background:#fff;border:1px solid #6789bd59;border-radius:12px;box-shadow:inset 0 1px 0 #fffc;display:inline-flex;gap:8px;padding:4px 10px}.pdf-page-input-group:focus-within{border-color:#26c6ffa6;box-shadow:0 0 0 3px #26c6ff24}.pdf-page-input{border:1px solid #80a1cd61;border-radius:9px;color:#183862;font-size:.96rem;font-weight:700;outline:none;padding:7px 8px;text-align:center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);width:62px}.pdf-page-input:focus{border-color:#26c6ffa8;box-shadow:0 0 0 3px #26c6ff29}.pdf-page-input:hover{border-color:#4070b18f}.pdf-page-total{color:#38527a;font-size:.84rem;font-weight:700}.pdf-zoom-controls{background:linear-gradient(180deg,#eef5ff,#e7f0ff);border-top:1px solid #708ebc2e;display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px 14px}.pdf-zoom-btn,.pdf-zoom-controls{align-items:center;justify-content:center}.pdf-zoom-btn{background:#fff;border:1px solid #6282b659;border-radius:11px;color:#1c3f70;cursor:pointer;display:inline-flex;height:40px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast);width:40px}.pdf-zoom-btn:hover:not(:disabled){border-color:#26c6ff99;box-shadow:0 10px 18px #0b1d3424;transform:translateY(-2px)}.pdf-zoom-btn:active:not(:disabled){transform:scale(.95)}.pdf-zoom-btn.active{background:linear-gradient(130deg,#0f3f74,#1369a8);border-color:#26c6ff9e;box-shadow:0 12px 20px #0c355b40;color:#ebf9ff}.pdf-zoom-btn:disabled{cursor:not-allowed;opacity:.45}.pdf-zoom-indicator{color:#244775;font-size:.85rem;font-weight:800;letter-spacing:.03em;min-width:68px;text-align:center}.pdf-error,.pdf-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:36px 20px;text-align:center}.pdf-viewer .spinner{animation:spin .9s linear infinite;border:3px solid #26c6ff33;border-radius:50%;border-top-color:#1e87ff;height:38px;width:38px}.pdf-error p,.pdf-loading p{font-size:.92rem;font-weight:700;margin:14px 0 0}.pdf-loading p{color:#26456f}.pdf-error p{color:#b31b3f}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:860px){.pdf-header{align-items:flex-start;flex-direction:column}.pdf-info{justify-content:flex-start;width:100%}.pdf-controls{gap:10px}.pdf-control-btn{font-size:.78rem;min-width:92px}}@media (max-width:560px){.pdf-header{align-items:center;flex-direction:row;gap:8px;justify-content:space-between;padding:11px 12px}.pdf-title{flex:1 1 auto;min-width:0}.pdf-title h3{font-size:.92rem}.pdf-info{flex:0 0 auto;width:auto}.page-indicator{font-size:.74rem;padding:5px 10px;white-space:nowrap}.pdf-canvas-container{justify-content:flex-start;min-height:260px;padding:10px 8px}.pdf-controls{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding:6px 8px}.pdf-control-btn{flex:none;font-size:.75rem;min-height:42px;min-width:0;padding:7px 8px;width:100%}.pdf-page-input-group{justify-content:center;padding:3px 6px;width:auto}.pdf-page-input{font-size:.86rem;padding:5px 6px;width:50px}.pdf-page-total{font-size:.8rem}.pdf-zoom-controls{gap:6px;padding:6px 8px 8px}.pdf-zoom-btn{border-radius:10px;height:34px;width:34px}.pdf-zoom-btn svg{height:16px;width:16px}.pdf-zoom-indicator{font-size:.78rem;min-width:56px}}@media (max-width:380px){.pdf-controls{gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-control-btn{font-size:.74rem;min-height:40px;padding:7px}.pdf-page-input-group{grid-column:1/-1;justify-content:center;width:100%}.pdf-zoom-controls{gap:5px;padding:6px 6px 8px}.pdf-zoom-btn{height:32px;width:32px}.pdf-zoom-indicator{font-size:.76rem;min-width:52px}.page-indicator{font-size:.7rem;padding:4px 8px}.pdf-canvas-container{min-height:240px}}@media (max-width:560px){.viewer-section{overflow:visible}.pdf-viewer{height:100%;overflow:hidden}.pdf-canvas-container{align-items:flex-start;flex:1 1 auto;min-height:320px;overflow:auto}}.pdf-pane{display:flex;flex-direction:column;overflow:hidden;position:relative;transition:transform var(--transition-mid),box-shadow var(--transition-mid),filter var(--transition-fast)}.pdf-pane--preview{cursor:zoom-in;filter:saturate(.92)}.pdf-pane--preview:hover{box-shadow:var(--shadow-glow);transform:translateY(-2px)}.pdf-pane__floating{align-items:flex-end;display:flex;flex-direction:column;gap:8px;pointer-events:none;position:absolute;right:14px;top:14px;z-index:5}.pdf-pane__expand-btn{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#0b213ce0,#103054d1);border:1px solid #7fb1ff80;border-radius:12px;color:#ebf8ff;cursor:pointer;display:inline-flex;font-size:.83rem;font-weight:700;gap:8px;letter-spacing:.02em;padding:10px 14px;pointer-events:auto;transition:transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.pdf-pane__expand-btn:hover{border-color:#26c6ffb8;box-shadow:0 14px 34px #0b1f3859;transform:translateY(-2px)}.pdf-pane__expand-btn:active{transform:scale(.98)}.pdf-pane__hint{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071c35a3;border:1px solid #7eaded70;border-radius:999px;box-shadow:0 10px 24px #07182c4d;color:#dff2fff0;font-size:.74rem;font-weight:700;max-width:220px;padding:6px 11px;pointer-events:none;text-align:right}.ai-interface{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0;overflow:hidden;padding:14px}.ai-header{flex-shrink:0}.ai-header__title{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.ai-header h3{align-items:center;color:#0e2d56;display:inline-flex;font-size:1.02rem;gap:8px;letter-spacing:.01em;margin:0}.ai-status{background:#e9f3ffd9;border:1px solid #6d91c659;border-radius:999px;color:#255487;font-size:.73rem;font-weight:800;letter-spacing:.03em;padding:6px 11px;text-transform:uppercase}.ai-status.loading{background:#e1f7ffe6;border-color:#26c6ff80;color:#0c5a85}.action-buttons{grid-gap:8px;display:grid;flex-shrink:0;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.action-btn{align-items:center;background:linear-gradient(135deg,#fff,#ebf3ff);border:1px solid #5c7eb652;border-radius:13px;color:#134371;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:800;gap:7px;justify-content:center;padding:10px 12px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.action-btn:hover:not(:disabled){border-color:#26c6ff94;box-shadow:0 14px 24px #0a1a2e1f;transform:translateY(-2px)}.action-btn:active:not(:disabled){transform:scale(.98)}.action-btn.active{background:linear-gradient(135deg,#0f4a88,#1683ca);border-color:#59b8ffa6;box-shadow:0 12px 22px #0c355b3d;color:#ecf8ff}.action-btn:disabled{cursor:not-allowed;opacity:.52}.search-row{align-items:stretch;display:flex;gap:8px;grid-column:1/-1}.search-row .action-btn{flex:0 0 auto;white-space:nowrap}.search-term-input{background:#fff;border:1px solid #6c8bbb61;border-radius:12px;color:#153e68;flex:1 1;font-size:.85rem;font-weight:700;min-width:0;outline:none;padding:10px 11px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.search-term-input:focus{border-color:#26c6ffa3;box-shadow:0 0 0 3px #26c6ff24}.search-term-input::placeholder{color:#6a7f9f}.response-container{background:linear-gradient(180deg,#fbfdff,#f0f6ff);border:1px solid #6d8ab747;border-radius:16px;box-shadow:0 16px 36px #0712211a;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.response-container.has-response{border-color:#399beb6b;box-shadow:0 18px 40px #08182c24,0 0 0 1px #26c6ff1f}.response-header{align-items:center;background:linear-gradient(180deg,#fff,#f4f9ff);border-bottom:1px solid #7495c73d;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:11px 12px}.response-title{align-items:center;display:inline-flex;gap:8px}.response-title strong{color:#0f355f;font-size:.86rem;letter-spacing:.02em;text-transform:uppercase}.response-loading{align-items:center;display:inline-flex}.response-toolbar,.tool-btn{align-items:center;display:inline-flex;gap:7px}.tool-btn{background:#fff;border:1px solid #6a88b757;border-radius:11px;color:#194372;cursor:pointer;font-size:.75rem;font-weight:800;padding:7px 10px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.tool-btn:hover:not(:disabled){border-color:#26c6ff99;box-shadow:0 10px 18px #0b1d341f;transform:translateY(-2px)}.tool-btn:active:not(:disabled){transform:scale(.97)}.tool-btn:disabled{cursor:not-allowed;opacity:.46}.tool-btn.danger{background:#fff0f4e6;border-color:#ef5f7f59;color:#9e2441}.response-content{flex:1 1;gap:12px;min-height:0;overflow-y:auto;padding:12px}.chat-history,.response-content{display:flex;flex-direction:column}.chat-history{gap:10px}.chat-message{animation:chatIn .22s ease both;display:flex;flex-direction:column;gap:4px}.chat-role{color:#5b7093;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.chat-bubble{background:#fff;border:1px solid #7393c442;border-radius:14px;color:#183b65;font-size:.87rem;line-height:1.6;padding:10px 12px}.chat-message.is-user{align-items:flex-end}.chat-message.is-user .chat-role{color:#266a8f}.chat-message.is-user .chat-bubble{background:linear-gradient(130deg,#e8f9ff,#dff4ff);border-color:#26c6ff73;max-width:88%}.chat-message.is-ai .chat-bubble{max-width:94%}.inline-loading{align-items:center;background:#e0f6ffb3;border:1px solid #26c6ff4d;border-radius:12px;color:#14557c;display:inline-flex;font-size:.84rem;font-weight:700;gap:10px;padding:10px 12px}.response-empty{color:#4a6287;font-size:.88rem;line-height:1.65;margin:auto;max-width:72ch;text-align:center}.response-empty p{margin:0}.response-prose{animation:responseIn .24s ease;background:#fff;border:1px solid #708ebc3d;border-radius:14px;box-shadow:inset 0 1px 0 #ffffffd1;color:#112f55;font-size:.88rem;line-height:1.7;padding:12px}.md-p{margin:0 0 .9em}.md-p:last-child{margin-bottom:0}.md-h{line-height:1.25;margin:1.15em 0 .55em}.md-h1{font-size:1.2rem}.md-h2{font-size:1.1rem}.md-h3{font-size:1rem}.md-h4,.md-h5,.md-h6{font-size:.95rem}.md-ol,.md-ul{margin:0 0 .95em;padding-left:1.2em}.md-li{margin:.35em 0}.md-blockquote{background:linear-gradient(130deg,#e9f7ffd6,#f6fcffe6);border-left:3px solid #26c6ffb3;color:#2b486f;padding:.7em .9em}.md-blockquote,.md-code{border-radius:12px;margin:1em 0}.md-code{background:linear-gradient(160deg,#0b1d34,#132c4e);color:#dbedff;font-size:.8rem;line-height:1.6;overflow:auto;padding:12px}.md-inline-code{background:#e5f4ff;border-radius:7px;color:#126194;font-size:.9em;padding:.15em .32em}.question-section{background:radial-gradient(circle at 92% 8%,#26c6ff29,#0000 40%),linear-gradient(180deg,#f8fcff,#edf5ff);border:1px solid #6c8bbb4d;border-radius:16px;display:flex;flex-direction:column;flex-shrink:0;gap:9px;padding:12px}.question-input{background:#fff;border:1px solid #6484b56b;border-radius:14px;color:#143a67;font-size:.9rem;font-weight:600;line-height:1.55;min-height:96px;outline:none;padding:13px 14px;resize:vertical;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);width:100%}.question-input:focus{border-color:#26c6ffa8;box-shadow:0 0 0 4px #26c6ff24}.question-input::placeholder{color:#637b9d}.question-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.suggestion-buttons{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.suggestion-btn{background:#ffffffc7;border:1px solid #6484b559;border-radius:999px;color:#225285;cursor:pointer;font-size:.72rem;font-weight:700;padding:6px 10px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.suggestion-btn:hover:not(:disabled){border-color:#26c6ff94;box-shadow:0 8px 14px #0b1d341c;transform:translateY(-1px)}.ask-button{background:linear-gradient(135deg,#0d4d8c,#1896cf);border:1px solid #5fb1fbb8;border-radius:13px;color:#ebf9ff;cursor:pointer;font-size:.83rem;font-weight:900;letter-spacing:.03em;overflow:hidden;padding:11px 16px;position:relative;text-transform:uppercase;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast)}.ask-button:after{background:radial-gradient(circle,#d7faff66 0,#d7faff00 58%);content:"";inset:-30% -25%;opacity:0;pointer-events:none;position:absolute;transition:opacity var(--transition-fast)}.ask-button:hover:not(:disabled){box-shadow:0 15px 26px #0a345947;filter:saturate(1.08);transform:translateY(-2px)}.ask-button:hover:not(:disabled):after{opacity:1}.ask-button:active:not(:disabled){transform:scale(.97)}.ask-button:disabled,.suggestion-btn:disabled{cursor:not-allowed;opacity:.5}.ai-interface .spinner{animation:spin .9s linear infinite;border:3px solid #26c6ff33;border-radius:50%;border-top-color:#1a8cf0;height:20px;width:20px}@keyframes responseIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes chatIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:560px){.ai-interface{padding:10px}.action-buttons{grid-template-columns:1fr}.search-row{flex-direction:column}.response-header{align-items:flex-start}.response-toolbar{justify-content:flex-end;width:100%}.question-actions{align-items:stretch;flex-direction:column}.ask-button,.suggestion-buttons{width:100%}}@media (max-width:1180px){.ai-interface{height:auto;overflow-y:auto}.response-container{flex:0 1 auto;max-height:44vh;min-height:170px}}.flashcards-container{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;padding:14px;position:relative}.flashcards-header{margin-bottom:10px;text-align:center}.flashcards-header h3{align-items:center;color:#0d325e;display:inline-flex;font-size:1.06rem;justify-content:center;letter-spacing:.02em;margin:0}.flashcards-header p{color:#4f678b;font-size:.83rem;margin:6px 0 0}.flashcards-generate{background:radial-gradient(circle at 80% 18%,#26c6ff29,#0000 38%),linear-gradient(170deg,#f7fbff,#ecf3ff);border:1px dashed #5a7fb659;border-radius:18px;flex:1 1;gap:14px;justify-content:center;min-height:0;padding:22px;text-align:center}.flashcards-generate,.generate-controls{align-items:center;display:flex;flex-direction:column}.generate-controls{gap:9px}.generate-controls label{color:#35527a;font-size:.85rem;font-weight:700}.num-cards-input{background:#fff;border:1px solid #6384b566;border-radius:13px;color:#163f6a;font-size:1rem;font-weight:800;outline:none;padding:10px;text-align:center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);width:88px}.num-cards-input:focus{border-color:#26c6ffad;box-shadow:0 0 0 4px #26c6ff24}.flashcards-container .generate-button{background:linear-gradient(135deg,#0d4b89,#1c95cd);border:1px solid #5badf6a8;border-radius:13px;color:#ebf8ff;cursor:pointer;font-size:.87rem;font-weight:800;padding:12px 15px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast);width:min(320px,100%)}.flashcards-container .generate-button:hover:not(:disabled){box-shadow:0 16px 28px #0a345947;transform:translateY(-2px)}.flashcards-container .generate-button:active:not(:disabled){transform:scale(.98)}.flashcards-container .generate-button:disabled{cursor:not-allowed;opacity:.52}.flashcards-viewer{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0}.flashcards-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.flashcards-stats span{background:#ffffffdb;border:1px solid #6989b952;border-radius:12px;color:#204a7c;font-size:.76rem;font-weight:700;padding:8px 10px;text-align:center}.flashcards-progress-bar{background:#5c82b638;border-radius:999px;height:9px;overflow:hidden;width:100%}.flashcards-progress-fill{background:linear-gradient(90deg,#22b4ea,#2f8fff,#2ad4af);border-radius:inherit;height:100%;transition:width .32s ease}.flashcard{cursor:pointer;height:clamp(250px,42vh,360px);perspective:1400px;position:relative;transition:transform var(--transition-fast),filter var(--transition-fast);width:100%}.flashcard:hover{filter:saturate(1.02);transform:translateY(-2px)}.flashcard-inner{height:100%;position:relative;transform-style:preserve-3d;transition:transform .72s cubic-bezier(.2,.75,.2,1);width:100%}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-back,.flashcard-front{align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;border:1px solid #aacdff47;border-radius:18px;box-shadow:0 18px 40px #07122138;display:flex;flex-direction:column;inset:0;justify-content:space-between;padding:16px;position:absolute}.flashcard-front{background:radial-gradient(circle at 85% 20%,#26c6ff47,#0000 36%),linear-gradient(140deg,#113a65,#0d5a95 44%,#168ebf);color:#e5f4ff}.flashcard-back{background:radial-gradient(circle at 10% 12%,#17e4bd3d,#0000 34%),linear-gradient(140deg,#0f3f72,#10828a 50%,#17ae97);color:#ebfff8;transform:rotateY(180deg)}.flashcard-label{font-size:.68rem;font-weight:800;letter-spacing:.09em;opacity:.9;text-transform:uppercase}.flashcard-content{align-items:center;display:flex;flex:1 1;font-size:.96rem;font-weight:600;justify-content:center;line-height:1.6;min-height:0;overflow-y:auto;padding:8px 4px;text-align:center;width:100%}.flashcard-hint{font-size:.74rem;opacity:.86}.flashcard-result{border:1px solid #0000;border-radius:999px;box-shadow:0 10px 20px #0712213d;font-size:.72rem;font-weight:800;letter-spacing:.03em;padding:6px 10px;position:absolute;right:12px;top:12px}.flashcard-result.is-correct{background:#0f7c4ed1;border-color:#81f5c085;color:#e9fff6}.flashcard-result.is-wrong{background:#9e2146d1;border-color:#ffa2b885;color:#fff0f4}.flashcards-controls{align-items:center;display:flex;gap:8px}.flashcards-container .nav-button{background:linear-gradient(135deg,#fff,#edf4ff);border:1px solid #6283b659;border-radius:12px;color:#194170;cursor:pointer;flex:1 1;font-size:.82rem;font-weight:800;padding:9px 11px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.flashcards-container .nav-button:hover:not(:disabled){border-color:#26c6ff8f;box-shadow:0 12px 20px #0a1a2e1f;transform:translateY(-2px)}.flashcards-container .nav-button:active:not(:disabled){transform:scale(.98)}.flashcards-container .nav-button:disabled{cursor:not-allowed;opacity:.42}.card-counter{color:#30537f;font-size:.84rem;font-weight:800;min-width:92px;text-align:center}.flashcards-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.flashcards-container .reset-button,.flashcards-container .result-button{border:1px solid #0000;border-radius:12px;cursor:pointer;font-size:.8rem;font-weight:800;padding:10px 8px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.flashcards-container .result-button{color:#eaf8ff}.flashcards-container .result-button.is-correct{background:linear-gradient(135deg,#15764d,#2fba78);border-color:#7fe8bb85}.flashcards-container .result-button.is-wrong{background:linear-gradient(135deg,#91203f,#e54a79);border-color:#ff93ad85}.flashcards-container .reset-button:hover,.flashcards-container .result-button:hover{box-shadow:0 12px 20px #0a1a2e29;transform:translateY(-2px)}.flashcards-container .reset-button:active,.flashcards-container .result-button:active{transform:scale(.98)}.flashcards-container .result-button.selected{box-shadow:0 0 0 2px #ffffff7a,0 16px 24px #0a1a2e38;filter:saturate(1.1)}.flashcards-container .reset-button{background:linear-gradient(135deg,#f9fcff,#e7f0ff);border-color:#6180b259;color:#264a78}.flashcards-review-summary{color:#42628b;font-size:.78rem;font-weight:700;text-align:center}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f3faffe0;display:flex;flex-direction:column;gap:10px;inset:0;justify-content:center;position:absolute;z-index:20}.flashcards-container .error-message{background:#fff0f4e6;border:1px solid #ef5f7f59;border-radius:12px;color:#9f1f47;font-size:.84rem;font-weight:700;padding:10px 12px;width:min(380px,100%)}.flashcards-container .spinner{border:3px solid #26c6ff33;border-radius:50%;border-top-color:#1a8cf0;height:34px;width:34px}.flashcards-container .spinner,.spinning-icon{animation:spin .9s linear infinite}@media (max-width:760px){.flashcards-container{padding:10px}.flashcards-actions,.flashcards-stats{grid-template-columns:1fr}.flashcard{height:clamp(240px,48vh,330px)}}.quiz-container{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;padding:14px}.quiz-header{margin-bottom:10px}.quiz-header h3{align-items:center;color:#0d325e;display:inline-flex;font-size:1.06rem;letter-spacing:.02em;margin:0}.quiz-header p{color:#4e678d;font-size:.84rem;margin:6px 0 0}.game-setup,.quiz-setup{background:radial-gradient(circle at 90% 8%,#26c6ff29,#0000 34%),linear-gradient(175deg,#f8fbff,#ecf3ff);border:1px solid #6a89b84d;border-radius:18px;display:flex;flex-direction:column;gap:12px;margin-top:10px;padding:18px}.quiz-setup{align-items:center;text-align:center}.add-players label,.quiz-setup label,.solo-setup label{color:#35527a;font-size:.84rem;font-weight:700}.add-player-input,.num-questions-input,.player-name-input{background:#fff;border:1px solid #6687b861;border-radius:13px;color:#153c67;font-weight:800;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.num-questions-input{font-size:1rem;padding:10px;text-align:center;width:90px}.player-name-input{font-size:.9rem;padding:10px 12px;text-align:center;width:min(320px,100%)}.add-player-input:focus,.num-questions-input:focus,.player-name-input:focus{border-color:#26c6ffa6;box-shadow:0 0 0 4px #26c6ff24}.quiz-container .generate-button,.quiz-container .next-button,.quiz-container .play-again-button,.quiz-container .reveal-button,.quiz-container .start-game-button{background:linear-gradient(135deg,#0d4b89,#1c95cd);border:1px solid #5aacf5ad;border-radius:13px;color:#ebf8ff;cursor:pointer;font-size:.86rem;font-weight:800;letter-spacing:.02em;padding:11px 16px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast)}.quiz-container .generate-button:hover:not(:disabled),.quiz-container .next-button:hover,.quiz-container .play-again-button:hover,.quiz-container .reveal-button:hover,.quiz-container .start-game-button:hover{box-shadow:0 16px 28px #0a345947;transform:translateY(-2px)}.quiz-container .generate-button:active:not(:disabled),.quiz-container .next-button:active,.quiz-container .play-again-button:active,.quiz-container .reveal-button:active,.quiz-container .start-game-button:active{transform:scale(.98)}.quiz-container .generate-button:disabled{cursor:not-allowed;opacity:.5}.quiz-container .new-game-button,.quiz-container .reset-button{background:linear-gradient(135deg,#fff,#ecf3ff);border:1px solid #6382b457;border-radius:12px;color:#204573;cursor:pointer;font-size:.84rem;font-weight:800;padding:10px 14px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.quiz-container .new-game-button:hover,.quiz-container .reset-button:hover{border-color:#26c6ff8f;box-shadow:0 12px 20px #0a1a2e21;transform:translateY(-2px)}.game-mode-selector{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.game-mode-selector label{align-items:center;background:#fff;border:1px solid #6d8ab74d;border-radius:12px;color:#224978;cursor:pointer;display:inline-flex;font-size:.83rem;font-weight:700;gap:8px;justify-content:center;padding:10px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.game-mode-selector label:hover{border-color:#26c6ff8c;box-shadow:0 10px 18px #0b1d341f;transform:translateY(-2px)}.game-mode-selector input[type=radio]{accent-color:#1884d1}.solo-setup{display:flex;justify-content:center}.multiplayer-setup{display:flex;flex-direction:column;gap:10px}.multiplayer-setup h4{color:#1f4878;font-size:.94rem;margin:0}.players-list{background:#ffffffb8;border:1px dashed #6888b859;border-radius:13px;display:flex;flex-wrap:wrap;gap:8px;min-height:56px;padding:10px}.player-tag{align-items:center;background:#fff;border:2px solid;border-radius:999px;color:#1f476f;display:inline-flex;font-size:.8rem;font-weight:700;gap:8px;padding:7px 10px}.remove-player{background:#a61f45;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:.82rem;height:22px;transition:transform var(--transition-fast),filter var(--transition-fast);width:22px}.remove-player:hover{filter:brightness(1.08);transform:scale(1.1)}.add-players{display:flex;flex-direction:column;gap:8px}.add-player-controls{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr auto}.add-player-input{font-size:.86rem;padding:10px 12px;width:100%}.add-player-button{background:linear-gradient(135deg,#0e4d8b,#1a8fc8);border:1px solid #58abf4b8;border-radius:12px;color:#eaf8ff;cursor:pointer;font-size:.8rem;font-weight:800;padding:10px 14px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast),opacity var(--transition-fast)}.add-player-button:hover:not(:disabled){box-shadow:0 14px 24px #0a345940;transform:translateY(-2px)}.add-player-button:active:not(:disabled){transform:scale(.98)}.add-player-button:disabled{cursor:not-allowed;opacity:.5}.color-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.color-button{border:2px solid #ffffffc7;border-radius:50%;box-shadow:0 10px 18px #08132238;cursor:pointer;font-size:1.3rem;height:44px;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),filter var(--transition-fast);width:44px}.color-button:hover{box-shadow:0 14px 24px #0813224d;transform:translateY(-2px) scale(1.05)}.color-button.is-selected{border-color:#0f233ce6;box-shadow:0 0 0 3px #26c6ff5c,0 14px 24px #0813224d;filter:saturate(1.1)}.quiz-progress{color:#365680;font-size:.82rem;font-weight:700;margin-top:8px}.progress-bar-container{background:#5a81b638;border-radius:999px;height:9px;margin-top:6px;overflow:hidden;width:100%}.progress-bar{background:linear-gradient(90deg,#22b4ea,#2f8fff,#2ad4af);border-radius:inherit;height:100%;transition:width .32s ease}.quiz-score-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.score-pill{--pill-color:var(--player-color,#3f8fff);align-items:center;background:#fff;border:1px solid color-mix(in srgb,var(--pill-color) 40%,#fff);border-radius:999px;box-shadow:0 8px 16px #0917291a;color:#1b426f;display:inline-flex;font-size:.75rem;font-weight:800;gap:7px;padding:7px 11px}.score-pill.active{border-color:color-mix(in srgb,var(--pill-color) 70%,#fff);box-shadow:0 10px 20px color-mix(in srgb,var(--pill-color) 26%,#0000)}.score-pill-emoji{font-size:.9rem}.score-pill-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-pill-points{align-items:center;background:color-mix(in srgb,var(--pill-color) 18%,#fff);border-radius:50%;color:color-mix(in srgb,var(--pill-color) 72%,#183862);display:inline-flex;height:20px;justify-content:center;min-width:20px}.answered-pill{background:#fffc;border:1px solid #6888b952;border-radius:999px;color:#355981;font-size:.73rem;font-weight:700;padding:7px 11px}.question-container{animation:questionIn .26s ease;background:radial-gradient(circle at 92% 9%,#26c6ff29,#0000 38%),linear-gradient(170deg,#f8fcff,#edf4ff);border:1px solid #6787b74d;border-radius:20px;box-shadow:0 22px 42px #07122129;margin:12px 0;padding:16px}.question-text{color:#103865;font-size:1rem;line-height:1.5;margin:0 0 14px;text-align:center}.answers-container{display:flex;flex-direction:column;gap:10px}.answer-button{align-items:center;background:#fff;border:1px solid #698aba4d;border-radius:14px;color:#1d416d;cursor:pointer;display:flex;gap:10px;overflow:hidden;padding:10px 12px;position:relative;text-align:left;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);width:100%}.answer-button:hover:not(:disabled){border-color:#26c6ff8c;box-shadow:0 12px 20px #0a1a2e1f;transform:translateX(4px)}.answer-button.selected{animation:answerSelect .26s ease;background:linear-gradient(130deg,#e7f7ff,#e3f1ff);border-color:#26c6ff9e;box-shadow:0 0 0 2px #26c6ff26}.answer-button.correct,.answer-button.player-correct{animation:answerCorrect .38s ease;background:linear-gradient(130deg,#e9fff4,#e0f9ec);border-color:#43c27bad}.answer-button.incorrect{animation:answerWrong .32s ease;background:linear-gradient(130deg,#fff1f5,#ffe9f0);border-color:#ef5f7f9e}.answer-button:disabled{cursor:not-allowed;opacity:.78}.answer-letter{align-items:center;background:linear-gradient(130deg,#12508e,#1790ca);border-radius:50%;color:#e9f8ff;display:inline-flex;flex-shrink:0;font-size:.82rem;font-weight:800;height:30px;justify-content:center;width:30px}.answer-button.correct .answer-letter,.answer-button.player-correct .answer-letter{background:linear-gradient(130deg,#187b52,#2dba79)}.answer-button.incorrect .answer-letter{background:linear-gradient(130deg,#952344,#e74c7b)}.answer-text{flex:1 1;font-size:.86rem;line-height:1.45}.correct-mark{color:#188756;font-size:1rem;font-weight:900}.player-answers{align-items:center;display:inline-flex;gap:4px}.current-player-indicator,.multiplayer-instructions,.players-status-summary,.results-section{border-radius:14px;padding:11px 13px}.current-player-indicator{background:#ffffffc7;border:1px solid}.current-player-content{align-items:center;display:flex;gap:11px}.current-player-content h5{font-size:1rem;margin:0}.current-player-content p{color:#4d6588;font-size:.8rem;margin:3px 0 0}.players-status-summary{background:#ebf5ffb8;border:1px solid #6b8bba3d}.player-status-summary{align-items:center;background:#fff;border:1px solid;border-radius:999px;display:inline-flex;font-size:.77rem;font-weight:700;gap:8px;padding:7px 10px}.player-status-summary.correct{color:#1b8a56}.player-status-summary.incorrect{color:#b92a55}.multiplayer-instructions{background:linear-gradient(130deg,#fff9e9f0,#fff3d5e6);border:1px solid #f6bf5f5c;color:#72541a;font-size:.78rem;line-height:1.45}.multiplayer-instructions p{margin:4px 0}.progress-text{font-weight:800}.results-section{background:#ecf6ffc7;border:1px solid #6688b847;margin:10px 0}.current-scores h4{color:#194273;font-size:.86rem;margin:0 0 8px}.score-item{background:#fff;border-left:3px solid;border-radius:10px;color:#224878;font-size:.78rem;font-weight:700;margin:4px 0;padding:7px 10px}.quiz-actions,.reveal-answers-section{display:flex;justify-content:center}.quiz-actions{align-items:center;margin-top:auto;min-height:48px;padding-top:8px}.waiting-text{color:#5d7395;font-size:.83rem;font-weight:700;margin:0;text-align:center}.ranking-container{display:flex;flex-direction:column;gap:9px;margin:12px 0}.ranking-item{align-items:center;background:#fff;border:1px solid;border-radius:15px;display:flex;gap:10px;padding:12px;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.ranking-item:hover{box-shadow:0 14px 22px #0a1a2e1f;transform:translateY(-2px)}.ranking-item.first{background:linear-gradient(130deg,#fff7dc,#ffedb8)}.ranking-position{font-size:1.45rem;font-weight:900;min-width:48px;text-align:center}.ranking-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.ranking-emoji{font-size:1.2rem}.ranking-name{color:#1f4876;font-size:.9rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-score{color:#124575;font-size:.9rem;font-weight:900}.ranking-actions{display:flex;flex-wrap:wrap;gap:8px}.quiz-container .error-message{background:#fff0f4e6;border:1px solid #ef5f7f5c;border-radius:12px;color:#9f1f47;font-size:.82rem;font-weight:700;padding:9px 11px}.loading-container{align-items:center;color:#31537f;display:flex;flex-direction:column;font-size:.82rem;font-weight:700;gap:9px}.quiz-container .spinner{animation:spin .9s linear infinite;border:3px solid #26c6ff33;border-radius:50%;border-top-color:#1a8cf0;height:34px;width:34px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes answerCorrect{0%{transform:scale(.98)}40%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes answerSelect{0%{transform:translateX(0)}45%{transform:translateX(6px)}to{transform:translateX(0)}}@keyframes answerWrong{0%{transform:translateX(0)}30%{transform:translateX(4px)}60%{transform:translateX(-3px)}to{transform:translateX(0)}}@keyframes questionIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.quiz-container{padding:10px}.game-mode-selector{grid-template-columns:1fr}.ranking-actions{flex-direction:column}.add-player-controls{grid-template-columns:1fr}.quiz-score-strip{flex-direction:column}.score-pill{width:100%}.answered-pill{text-align:center;width:100%}.question-container{padding:12px}.answer-text{font-size:.82rem}}.ai-pane{background:radial-gradient(circle at 92% 10%,#26c6ff24,#0000 34%),linear-gradient(180deg,#fffffffa,#f5fafffa);overflow:hidden;padding:16px}.ai-pane__tabs{margin-bottom:12px}.ai-pane__body{background:#ffffffad;border:1px solid #6c85b038;border-radius:14px;box-shadow:inset 0 1px 0 #fffc;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}@media (max-width:1180px){.ai-pane{padding:12px}.ai-pane,.ai-pane__body{overflow:visible}}.pdf-modal{align-items:center;background:radial-gradient(circle at 20% 10%,#26c6ff38,#0000 34%),#040a14b8;display:flex;inset:0;justify-content:center;opacity:0;padding:22px;pointer-events:none;position:fixed;transition:opacity .25s ease;z-index:1000}.pdf-modal.is-open{opacity:1;pointer-events:auto}.pdf-modal__dialog{background:linear-gradient(180deg,#fffffffa,#f3f9fffa);border:1px solid #8bb2ec4d;border-radius:18px;box-shadow:0 40px 120px #0000008c;display:flex;flex-direction:column;height:min(92vh,980px);overflow:hidden;transform:translateY(10px) scale(.985);transition:transform .25s ease;width:min(1200px,96vw)}.pdf-modal.is-open .pdf-modal__dialog{transform:translateY(0) scale(1)}.pdf-modal__topbar{align-items:center;background:linear-gradient(130deg,#091b31f2,#0f2745eb);border-bottom:1px solid #6f8fbd4d;color:#ecf7ff;display:flex;justify-content:space-between;padding:14px 16px}.pdf-modal__title{font-weight:800;letter-spacing:.06em;opacity:.94;text-transform:uppercase}.pdf-modal__close-btn{align-items:center;background:#ffffff14;border:1px solid #88b5f870;border-radius:12px;color:#ecf7ff;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;padding:8px 10px;transition:transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.pdf-modal__close-btn:hover{background:#26c6ff33;box-shadow:0 10px 20px #102e5059;transform:translateY(-2px)}.pdf-modal__close-btn:active{transform:scale(.98)}.pdf-modal__content{background:linear-gradient(165deg,#09182e,#0f2440);flex:1 1;min-height:0;padding:14px}.pdf-modal__content .pdf-viewer{height:100%}@media (max-width:900px){.pdf-modal{padding:12px}.pdf-modal__dialog{border-radius:14px;height:96vh;width:100%}.pdf-modal__content{padding:10px}}.content-container{display:flex;flex-direction:row;gap:16px;height:100%;min-height:0;transition:gap .28s ease;width:100%}.content-container.reading-mode{gap:14px}.content-container>.ai-section,.content-container>.viewer-section{flex:1 1 auto}.ai-section,.viewer-section{transition:flex-basis .3s cubic-bezier(.2,.8,.2,1),max-width .3s cubic-bezier(.2,.8,.2,1),min-width .3s cubic-bezier(.2,.8,.2,1),transform .3s ease,filter .24s ease,box-shadow .26s ease}.content-container.document-mode .viewer-section{filter:saturate(1);flex-basis:61%}.content-container.document-mode .ai-section{flex-basis:39%;max-width:520px;min-width:360px}.content-container.reading-mode .viewer-section{filter:saturate(.95);flex-basis:28%;max-width:500px;min-width:290px;transform:scale(.992)}.content-container.reading-mode .ai-section{box-shadow:0 24px 52px #08142430;flex-basis:72%;max-width:none;min-width:420px}@media (max-width:1180px){.content-container{flex-direction:column;gap:12px;height:auto}.content-container.document-mode .viewer-section,.content-container.reading-mode .viewer-section{flex:none;height:clamp(440px,64vh,760px);max-width:none;min-height:420px;min-width:0;transform:none;width:100%}.content-container.reading-mode .viewer-section{height:clamp(360px,54vh,620px);min-height:340px;order:2}.content-container.document-mode .ai-section,.content-container.reading-mode .ai-section{flex:none;height:auto;max-width:none;min-height:0;min-width:0;width:100%}.content-container.reading-mode .ai-section{order:1}}@media (max-width:560px){.content-container{gap:10px}.content-container.document-mode .viewer-section{height:clamp(620px,82vh,960px);height:clamp(620px,82dvh,960px);min-height:600px}.content-container.reading-mode .viewer-section{height:clamp(520px,68vh,840px);height:clamp(520px,68dvh,840px);min-height:500px}}@media (max-width:380px){.content-container.document-mode .viewer-section{height:clamp(600px,80vh,920px);height:clamp(600px,80dvh,920px);min-height:580px}.content-container.reading-mode .viewer-section{height:clamp(500px,66vh,780px);height:clamp(500px,66dvh,780px);min-height:480px}}
/*# sourceMappingURL=main.8feddb0a.css.map*/