/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.block{display:block}.flex{display:flex}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}html,body,#root{width:100%;height:100%;margin:0;padding:0}body{font-family:Poppins,sans-serif;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4{color:#fff;margin:0;font-weight:600}p{color:#fff;margin:0;line-height:1.6}:root{--primary:#f56f10;--secondary:#fbbc04}img{max-width:100%;display:block}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.landing-page{width:100%;max-width:1920px;min-height:100vh;margin:0 auto;position:relative}.nav-right{gap:15px;display:flex}.login-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:25px;width:90px;height:40px;font-size:14px;font-weight:700;transition:background .3s .1s}.login-btn:hover{background:#ff6a0084}.signup-btn{color:#fff;cursor:pointer;background:#f56f10cc;border:none;border-radius:25px;width:90px;height:40px;font-size:14px;font-weight:600;transition:background .3s .1s;box-shadow:0 4px 4px #f56f1066}.signup-btn:hover{background:#ff6a00}.text{flex-direction:column;gap:20px;display:flex;position:absolute;top:220px;left:120px}.landing-title{letter-spacing:.01em;color:#fff;flex-direction:column;align-items:flex-start;font-family:Poppins,sans-serif;font-size:60px;font-weight:900;line-height:125%;display:flex;position:static}.gradient-text{text-shadow:0 0 20px #ff8c003a;background:linear-gradient(90deg,#ff6a00 10%,#ffbf00 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;display:block}.desc{letter-spacing:.01em;text-align:left;color:#fff;width:520px;font-family:Poppins,sans-serif;font-size:14px;font-weight:600;line-height:180%;position:static}.start-btn{cursor:pointer;color:#fff;background:#f56f10cc;border:none;border-radius:25px;justify-content:center;align-items:center;gap:10px;width:200px;height:60px;margin-top:20px;font-size:20px;font-weight:600;transition:transform .3s,background .3s;display:flex;position:static;box-shadow:0 4px 4px #f56f10cc}.start-btn:hover{background:#ff6a00;transform:scale(1.05)}.des-box{box-sizing:border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1;background:#ffffff30;border-radius:30px;flex-direction:column;justify-content:center;align-items:center;width:620px;height:420px;display:flex;position:absolute;top:180px;left:800px;box-shadow:0 4px 4px #000}.des-box:before{content:"";-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(#f56f10cc 0%,#fbbc04 100%);border-radius:30px;padding:2px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.des-images{gap:20px;display:flex}.des-pdf img,.des-chat img{width:260px;height:auto}@keyframes scaleIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.des-pdf img{animation:1s cubic-bezier(.34,1.56,.64,1) both scaleIn}.des-chat img{animation:1s cubic-bezier(.34,1.56,.64,1) .12s both scaleIn}.des-logo img{width:120px;height:auto;margin-top:40px}.signup-page{justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.back-btn{cursor:pointer;color:#fff;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;position:absolute;top:40px;left:40px}.back-btn:hover{background:#ffffff40;transform:scale(1.05)}.signup-container{z-index:1;flex-direction:column;align-items:center;gap:20px;display:flex}.sp-logo{color:#fff;align-items:center;gap:10px;font-family:Poppins,sans-serif;font-size:26px;font-weight:900;display:flex}.sp-logo img{width:60px}.signup-box{box-sizing:border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1;background:#ffffff30;border-radius:30px;flex-direction:column;justify-content:center;align-items:center;width:420px;height:520px;display:flex;box-shadow:0 4px 4px #000}.signup-box:before{content:"";-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(#f56f10cc 0%,#fbbc04 100%);border-radius:30px;padding:2px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.signup-form{flex-direction:column;gap:16px;width:320px;display:flex}.signup-submit-btn{color:#fff;cursor:pointer;background:#f56f10d9;border:none;border-radius:16px;width:100%;height:40px;margin-top:10px;font-size:16px;font-weight:700;transition:all .3s}.signup-submit-btn:hover{background:#f56f10;transform:scale(1.02)}.signup-footer{text-align:center;color:#fff;margin-top:12px;font-size:12px}.signup-footer span{color:#f56f10;cursor:pointer;font-weight:700}.signup-footer span:hover{text-decoration:underline}@keyframes slideDown{0%{opacity:0;transform:translate(-50%)translateY(-14px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.login-page{justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.background{object-fit:cover;filter:brightness(.6);z-index:-1;width:100%;height:100%;display:block;position:absolute;inset:0}.login-container{z-index:1;flex-direction:column;align-items:center;gap:20px;display:flex}.lp-logo{color:#fff;align-items:center;gap:10px;font-family:Poppins,sans-serif;font-size:26px;font-weight:900;display:flex}.lp-logo img{width:60px}.login-box{box-sizing:border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1;background:#ffffff30;border-radius:30px;flex-direction:column;justify-content:center;align-items:center;width:420px;height:520px;display:flex;box-shadow:0 4px 4px #000}.login-box:before{content:"";-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(#f56f10cc 0%,#fbbc04 100%);border-radius:30px;padding:2px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.login-form{flex-direction:column;gap:16px;width:320px;display:flex}.input-group{flex-direction:column;gap:4px;display:flex}.input-group label{color:#fff;font-size:14px}.input-group input{box-sizing:border-box;background:#f7fbff;border:1px solid #d4d7e3;border-radius:12px;outline:none;width:100%;height:40px;padding:0 16px;font-size:14px}.input-group input::placeholder{color:#8897ad}.input-row{align-items:center;gap:10px;width:100%;display:flex}.input-row input{box-sizing:border-box;background:#f7fbff;border:1px solid #d4d7e3;border-radius:12px;flex:1;height:40px;padding:0 16px;font-size:16px}.password-wrapper{flex:1;width:100%;position:relative}.password-wrapper input{box-sizing:border-box;background:#f7fbff;border:1px solid #d4d7e3;border-radius:12px;outline:none;width:100%;height:40px;padding:0 50px 0 16px;font-size:14px}.eye-btn{cursor:pointer;color:#8897ad;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.error-icon-wrapper{position:absolute;left:90%}.error-icon{color:#ff4d4f;cursor:pointer}.error-tooltip{color:#fff;white-space:nowrap;opacity:0;visibility:hidden;z-index:10;background:#1e1e1e;border-radius:6px;padding:6px 10px;font-size:12px;transition:all .2s;position:absolute;top:50%;left:24px;transform:translateY(-50%)}.error-icon-wrapper:hover .error-tooltip{opacity:1;visibility:visible}.login-submit-btn{color:#fff;cursor:pointer;background:#f56f10d9;border:none;border-radius:16px;width:100%;height:40px;margin-top:10px;font-size:16px;font-weight:700;transition:all .3s}.login-submit-btn:hover{background:#f56f10;transform:scale(1.02)}.or-divider{align-items:center;gap:16px;display:flex}.line{background:#ffffff4d;flex:1;height:1px}.or-divider span{color:#fff;font-size:12px}.google-btn{cursor:pointer;background:#fff;border:none;border-radius:16px;justify-content:center;align-items:center;gap:12px;width:100%;height:40px;transition:all .3s;display:flex}.google-btn:hover{transform:scale(1.02)}.google-btn img{width:20px;height:20px}.google-btn span{color:#313957;font-size:14px}.login-footer{text-align:center;color:#fff;margin-top:12px;font-size:12px}.login-footer span{color:#f56f10;cursor:pointer;font-weight:700}.login-footer span:hover{text-decoration:underline}.dashboard{width:100%;max-width:1920px;min-height:100vh;margin:0 auto;position:relative}.background{object-fit:cover;width:100%;height:100%;filter:brightness(0.);z-index:-1;display:block;position:absolute;inset:0}.navbar{border-bottom:1px solid #fff6;justify-content:space-between;align-items:center;width:100%;min-height:10vh;padding:0 80px;display:flex;position:absolute}.logo{color:#fff;align-items:center;gap:10px;font-family:Poppins,sans-serif;font-size:20px;font-weight:900;display:flex}.logo img{width:50px}.search-bar{background:#ffffff36;border:1px solid #ffffff63;border-radius:10px;align-items:center;width:320px;height:40px;padding-left:12px;display:flex;position:relative}.search-icon{color:#fff;opacity:.7;margin-right:8px}.search-bar input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:12px}.search-bar input::placeholder{color:#ffffff78}.profile-avatar{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff6a00,#ffbf00);border:2px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-size:13px;font-weight:500;transition:border-color .15s;display:flex;overflow:hidden}.profile-avatar:hover{border-color:#ed8a1f}.profile-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.profile-overlay{z-index:9999;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.profile-modal{background:linear-gradient(135deg,#16123cfa 0%,#0e2228fa 100%);border:1px solid #fff3;border-radius:16px;flex-direction:column;gap:14px;width:340px;padding:24px;animation:.25s popUp;display:flex;box-shadow:0 20px 60px #00000080}.profile-modal-header{justify-content:space-between;align-items:center;display:flex}.profile-modal-header span{color:#fffffff2;font-size:16px;font-weight:800}.profile-modal-header button{cursor:pointer;color:#fff9;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s;display:flex}.profile-modal-header button:hover{background:#ffffff26}.profile-preview{flex-direction:column;align-items:center;gap:8px;display:flex}.avatar-preview{color:#fff;background:linear-gradient(90deg,#ff6a00,#ffbf00);border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;font-size:22px;font-weight:700;display:flex;overflow:hidden}.avatar-preview img{object-fit:cover;width:100%;height:100%}.preview-label{color:#ffffff8c;font-size:12px}.modal-divider{background:#ffffff14;height:1px}.icon-grid-label{color:#ffffff73;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}.icon-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.icon-option{aspect-ratio:1;cursor:pointer;background:#ffffff14;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex;overflow:hidden}.icon-option:hover{transform:scale(1.08)}.icon-option.selected{border-color:#ed8a1f;box-shadow:0 0 0 3px #ed8a1f33}.icon-option img{object-fit:cover;width:100%;height:100%}.initials-option{color:#fff;background:linear-gradient(90deg,#ff6a00,#ffbf00);font-size:13px;font-weight:700}.profile-field{flex-direction:column;gap:5px;display:flex}.profile-field label{color:#ffffffa6;font-size:12px}.profile-field input{color:#fff;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;outline:none;height:40px;padding:0 12px;font-size:13px;transition:all .15s}.profile-field input::placeholder{color:#ffffff59}.profile-field input:focus{border-color:#ed8a1f;box-shadow:0 0 0 2px #ed8a1f26}.profile-modal-footer{gap:10px;margin-top:4px;display:flex}.btn-cancel{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;border-radius:10px;flex:1;width:80px;height:38px;font-size:13px;transition:all .15s}.btn-save{color:#fff;cursor:pointer;background:linear-gradient(90deg,#ff6a00,#ffbf00);border:none;border-radius:10px;flex:2;width:100px;font-size:13px;font-weight:700;transition:all .15s}.btn-save:hover{opacity:.95;transform:scale(1.02)}.db-main{flex-direction:column;gap:24px;padding:24px 60px;display:flex;position:relative;top:14vh}.start-session-btn{cursor:pointer;background:#f56f10d9;border:none;border-radius:25px;justify-content:space-between;align-items:center;width:59%;padding:16px 26px;transition:opacity .15s,transform .15s;display:flex;box-shadow:0 4px 14px #f56f1073}.start-session-btn:hover{opacity:.93;transform:translateY(-1px)}.session-btn-text{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.session-btn-title{color:#fffffff2;font-size:18px;font-weight:800;line-height:1.2}.session-btn-sub{color:#ffffffd9;font-size:12px;font-weight:300}.session-btn-arrow{color:#fffc;flex-shrink:0}.db-row{align-items:stretch;gap:24px;display:flex}.db-left{flex-direction:column;flex:1.5;gap:12px;display:flex}.section-heading{color:#fffffff2;margin:0;font-size:16px;font-weight:800}.subject-card{cursor:pointer;background:linear-gradient(90deg,#201b5080 0%,#122b3180 100%);border:1px solid #ffffff5e;border-radius:12px;align-items:flex-start;gap:14px;padding:16px 18px;transition:transform .4s,box-shadow .4s,border-color .4s;display:flex;position:relative;overflow:hidden}.subject-card:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(135deg,#ffffff14,#0000);transition:opacity .4s;position:absolute;inset:0}.subject-card:hover{border-color:#f56f108c;transform:scale(1.025)translateY(-2px);box-shadow:0 8px 28px #f56f102e}.subject-card:hover:before{opacity:1}.subject-card:active{transform:scale(1.01)translateY(0)}.subject-card-arrow{color:#ffffff4d;flex-shrink:0;margin-top:2px;transition:color .15s,transform .15s}.subject-card-body{flex-direction:column;flex:1;gap:3px;display:flex}.subject-card:hover .subject-card-arrow{color:#f56f10cc;transform:translate(3px)}@keyframes sdSlideUp{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.subject-detail-modal{scrollbar-width:thin;scrollbar-color:#f56f104d transparent;background:linear-gradient(150deg,#161038fc 0%,#0c1e24fc 100%);border:1px solid #ffffff2e;border-radius:18px;flex-direction:column;width:520px;max-height:80vh;padding:0;animation:.28s cubic-bezier(.34,1.2,.64,1) sdSlideUp;display:flex;overflow-y:auto;box-shadow:0 24px 70px #0009}.subject-detail-modal::-webkit-scrollbar{width:4px}.subject-detail-modal::-webkit-scrollbar-thumb{background:#f56f104d;border-radius:4px}.sd-header{z-index:2;background:#161038f7;border-bottom:1px solid #ffffff1a;border-radius:18px 18px 0 0;justify-content:space-between;align-items:center;padding:20px 22px 18px;display:flex;position:sticky;top:0}.sd-header-left{align-items:center;gap:12px;display:flex}.sd-icon{background:linear-gradient(#f56f10d9 0%,#8f4109d9 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.sd-title{color:#fffffff2;margin:0;font-size:15px;font-weight:800;line-height:1.2}.sd-subtitle{color:#ffffff80;font-size:12px;font-weight:300}.sd-progress-section{border-bottom:1px solid #ffffff12;padding:18px 22px 16px}.sd-progress-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.sd-progress-label{color:#fff9;align-items:center;gap:5px;font-size:12px;display:flex}.sd-progress-pct{color:#f56f10f2;font-size:13px;font-weight:800}.sd-progress-track{background:#ffffff1a;border-radius:12px;width:100%;height:8px;margin-bottom:7px;overflow:hidden}.sd-progress-fill{background:linear-gradient(90deg,#f56f10cc 0%,#f8960ad9 50%,#04fbb4e6 100%);border-radius:12px;height:100%;transition:width .5s cubic-bezier(.34,1.2,.64,1)}.sd-progress-hint{color:#ffffff4d;margin:0;font-size:11px}.sd-sessions{flex-direction:column;gap:0;padding:0 22px;display:flex}.sd-session{border-bottom:1px solid #ffffff12;padding:18px 0}.sd-session:last-child{border-bottom:none}.sd-session-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.sd-session-title-row{flex-direction:column;gap:4px;display:flex}.sd-session-name{color:#ffffffe6;font-size:14px;font-weight:800}.sd-session-meta{color:#fff6;align-items:center;gap:4px;font-size:11px;display:flex}.sd-session-count{color:#f56f10cc;white-space:nowrap;background:#f56f101a;border:1px solid #f56f1033;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600}.sd-file-list{flex-direction:column;gap:8px;display:flex}.sd-file-item{cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:background .15s,border-color .15s,transform .1s;display:flex}.sd-file-item:hover{background:#ffffff14;border-color:#fff3;transform:translate(2px)}.sd-session-actions{justify-content:flex-end;margin-top:10px;display:flex}.btn-add-file{color:#ffffffe6;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:700;transition:background .15s,transform .15s,border-color .15s;display:inline-flex}.btn-add-file:hover{background:#ffffff1f;transform:translateY(-1px)}.sd-file-chat-btn{color:#ffffffd9;cursor:pointer;z-index:0;background:#ffffff14;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,transform .15s;display:inline-flex;position:relative;overflow:hidden}.sd-file-chat-btn:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#f56f107e,#04fbb575,#f56f107c);animation:1.2s ease-out forwards chatBtnSlide;position:absolute;inset:0;transform:translate(-120%)}.sd-file-chat-btn:hover:before{opacity:.15}.sd-file-chat-btn:hover{background:#ffffff29;transform:scale(1.02)}@keyframes chatBtnSlide{0%{opacity:0;transform:translate(-120%)}35%{opacity:.55}to{opacity:0;transform:translate(120%)}}.sd-file-item.done{background:#04fbb412;border-color:#04fbb433}.sd-file-check{flex-shrink:0;align-items:center;display:flex}.sd-file-icon{color:#f56f10b3;flex-shrink:0}.sd-file-item.done .sd-file-icon{color:#04fbb4b3}.sd-file-name{color:#ffffffd9;flex:1;font-size:13px;font-weight:500;line-height:1.3}.sd-file-item.done .sd-file-name{color:#ffffff73;-webkit-text-decoration:line-through #04fbb466;text-decoration:line-through #04fbb466}.sd-file-badge{white-space:nowrap;color:#fff6;background:#ffffff14;border:1px solid #ffffff1a;border-radius:20px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700}.sd-file-item.done .sd-file-badge{color:#04fbb4cc;background:#04fbb41f;border-color:#04fbb440}.sd-footer{border-top:1px solid #ffffff12;padding:16px 22px 20px}.sd-footer .btn-primary{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.sd-file-delete-btn{color:#ff4d4f8c;cursor:pointer;opacity:0;background:#ff4d4f14;border:1px solid #ff4d4f40;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:opacity .15s,background .15s,color .15s,transform .15s;display:inline-flex}.sd-file-item:hover .sd-file-delete-btn{opacity:1}.sd-file-delete-btn:hover{color:#ff4d4ff2;background:#ff4d4f33;border-color:#ff4d4f80;transform:scale(1.1)}.btn-delete{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;border-radius:10px;flex:1;margin-top:14px;font-size:13px;transition:all .15s}.subject-name{color:#fffffff2;font-size:15px;font-weight:800}.subject-meta{color:#fffffff2;margin-bottom:8px;font-size:12px;font-weight:300}.progress-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.progress-label{color:#fffffff2;font-size:12px;font-weight:300}.progress-pct{color:#f56f10e6;font-size:12px;font-weight:800}.progress-track{background:#ffffff63;border-radius:12px;width:100%;height:7px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#f56f10b8 0%,#f8960acf 50%,#04fbe6e6 100%);border-radius:12px;height:100%;transition:width .5s}.add-subject-btn{color:#fff9;cursor:pointer;background:#ffffff12;border:1px dashed #ffffff4d;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:13px;transition:background .15s,color .15s;display:flex}.add-subject-btn:hover{color:#ffffffe6;background:#ffffff1f}.db-right{flex-direction:column;flex:1;gap:20px;display:flex}.panel{background:linear-gradient(90deg,#201b5080 0%,#122b3180 100%);border:1px solid #ffffff5e;border-radius:12px;width:550px;height:560px;padding:40px;position:absolute;top:20px}.panel-header{align-items:center;gap:8px;margin-bottom:16px;display:flex}.panel-icon{color:#f56f10d9}.panel-title{color:#fffffff2;font-size:15px;font-weight:800}.upload-row{align-items:flex-start;gap:10px;padding:10px 0;display:flex}.upload-row-clickable{cursor:pointer}.upload-row-clickable:hover{background:#ffffff0d;border-radius:8px}.upload-file-icon{color:#f56f10cc;flex-shrink:0;margin-top:1px}.upload-info{flex-direction:column;gap:3px;display:flex}.upload-name{color:#fffffff2;font-size:13px;font-weight:800;line-height:1.3}.upload-time{color:#ffffffab;font-size:12px;font-weight:300}.divider{background:#ffffff47;height:1px}.success-popup{z-index:9999;color:#fff;white-space:nowrap;background:#ed8a1f;border-radius:8px;padding:12px 20px;font-size:14px;font-weight:500;animation:.3s both slideDown;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #0003}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popUp{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.overlay{z-index:9998;background:#0000008c;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.overlay-modal{background:linear-gradient(135deg,#16123cfa 0%,#0e2228fa 100%);border:1px solid #fff3;border-radius:16px;flex-direction:column;gap:14px;width:420px;padding:24px;animation:.25s popUp;display:flex;box-shadow:0 20px 60px #00000080}.overlay-header{justify-content:space-between;align-items:center;display:flex}.overlay-title{color:#fffffff2;font-size:16px;font-weight:800}.overlay-close{cursor:pointer;color:#fff9;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s;display:flex}.overlay-close:hover{background:#ffffff26}.steps{align-items:center;gap:6px;padding:2px 0 4px;display:flex}.step-dot{background:#ffffff40;border-radius:50%;width:8px;height:8px;transition:background .2s}.step-dot.active{background:#f56f10e6}.step-line{background:#ffffff26;flex:1;height:1px}.form-field{flex-direction:column;gap:5px;display:flex}.form-field label{color:#ffffff8c;font-size:12px;font-weight:400}.opt{color:#ffffff59;font-size:11px}.form-field input,.form-field select,.form-field textarea{color:#ffffffe6;background:#ffffff12;border:1px solid #ffffff26;border-radius:8px;outline:none;height:36px;padding:0 12px;font-size:13px;transition:border-color .15s}.form-field textarea{resize:none;height:auto;padding:10px 12px;line-height:1.5}.form-field input::placeholder,.form-field textarea::placeholder{color:#ffffff40}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#f56f1099;box-shadow:0 0 0 2px #f56f101f}.form-field select option{color:#fff;background:#1a1640}.form-row{gap:10px;display:flex}.upload-box{cursor:pointer;z-index:1;background:#ffffff0a;border:1.5px dashed #fff3;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;transition:border-color .15s,background .15s;display:flex;position:relative;overflow:hidden}.upload-box:hover{background:#f56f100d;border-color:#f56f1073}.file-input{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;inset:0}.upload-icon{color:#f56f10b3}.upload-box-title{color:#fffc;font-size:14px;font-weight:600}.upload-box-sub{color:#ffffff59;font-size:12px}.overlay-footer{gap:10px;margin-top:4px;display:flex}.btn-cancel{color:#ffffff8c;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:8px;flex:1;height:36px;font-size:13px;transition:background .15s}.btn-cancel:hover{background:#ffffff12}.btn-secondary{color:#ffffffe6;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;flex:1;height:36px;font-size:11px;transition:background .15s,opacity .15s}.btn-secondary:hover{background:#ffffff1f}.btn-secondary:disabled{opacity:.35;cursor:not-allowed}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(90deg,#ff6a00,#ffbf00);border:none;border-radius:8px;flex:1;height:36px;font-size:13px;font-weight:700;transition:opacity .15s}.btn-primary:hover{opacity:.88}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.empty-upload{color:#fff;font-size:12px}.floating-chat-btn{cursor:pointer;z-index:100;background:linear-gradient(135deg,#f56f10 0%,#e04d08 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .3s;display:flex;position:fixed;bottom:40px;right:40px;box-shadow:0 8px 20px #f56f1066}.floating-chat-btn:hover{transform:scale(1.1)translateY(-5px);box-shadow:0 12px 25px #f56f1099}.floating-chat-btn .tooltip-text{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#14141ee6;border:1px solid #ffffff1a;border-radius:8px;padding:8px 14px;font-size:.9rem;font-weight:500;transition:all .3s;position:absolute;right:80px;transform:translate(10px)}.floating-chat-btn:hover .tooltip-text{opacity:1;transform:translate(0)}.chatbot-page{flex-direction:column;align-items:center;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.chat-header{z-index:10;align-items:center;gap:20px;width:100%;padding:20px 40px;display:flex}.chat-title{color:#fff;font-size:1.2rem;font-weight:600}.chat-context-banner{color:#ffffffe0;background:#ffffff17;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:6px;width:100%;max-width:800px;margin:0 auto 12px;padding:12px 20px;font-size:14px;display:flex}.chat-body{box-sizing:border-box;gap:24px;width:100%;max-width:1400px;padding:0 40px 40px;display:flex}.chat-container{z-index:10;scrollbar-width:thin;scrollbar-color:#f56f104d transparent;background:linear-gradient(150deg,#161038fc 0%,#0c1e24fc 100%);border:1px solid #ffffff2e;border-radius:28px;flex-direction:column;width:767px;min-height:80vh;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 24px 70px #0009}.chat-container::-webkit-scrollbar{width:4px}.chat-container::-webkit-scrollbar-thumb{background:#f56f104d;border-radius:4px}.messages-area{flex-direction:column;flex:1;gap:20px;padding:30px 30px 10px;display:flex;overflow-y:auto}.doc-viewer{background:#201b50f5;border:1px solid #fff6;border-radius:28px;flex-direction:column;flex:1;gap:18px;min-width:380px;padding:28px 28px 24px;display:flex}.doc-viewer-header{color:#ffffffde;font-size:16px;font-weight:700}.doc-viewer-frame{background:#ffffff08;border:1px solid #ffffff26;border-radius:22px;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.viewer-topbar{gap:10px;padding:16px 20px 0;display:flex}.viewer-dot{background:#04fbe6;border-radius:50%;width:12px;height:12px}.viewer-content{flex:1;justify-content:stretch;align-items:stretch;padding:24px;display:flex}.preview-iframe{background:#fff;border:none;border-radius:18px;width:100%;height:100%}.doc-text-content{color:#ffffffeb;white-space:pre-wrap;width:100%;height:100%;font-size:.95rem;line-height:1.6;overflow-y:auto}.doc-text-content pre{white-space:pre-wrap;margin:0;font-family:inherit}.viewer-placeholder{color:#ffffff80;border:1px dashed #ffffff2e;border-radius:18px;justify-content:center;align-items:center;width:100%;height:100%;font-size:.95rem;display:flex}.message-wrapper{width:100%;display:flex}.message-wrapper.user{justify-content:flex-end}.message-wrapper.ai{justify-content:flex-start}.message-bubble{color:#fff;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;border-radius:15px;max-width:70%;padding:15px 20px;font-size:14px;line-height:1.8}.message-wrapper.user .message-bubble{background:linear-gradient(135deg,#e6670d 0%,#e04d08 100%);border-bottom-right-radius:5px}.message-wrapper.ai .message-bubble{background:#ffffff1a;border-bottom-left-radius:5px}.input-area{background:#0003;border-top:1px solid #ffffff1a;gap:15px;height:70px;padding:16px;display:flex}.input-area input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;outline:none;flex:1;padding:15px 20px;font-size:14px}.input-area input:focus{border-color:#f56f1080}.send-btn{color:#fff;cursor:pointer;background:#f56f10;border:none;border-radius:10px;justify-content:center;align-items:center;width:60px;transition:opacity .2s;display:flex}.send-btn:hover{opacity:.8}
