:root{--text-color-light:#1f2937;--text-color-dark:#f3f4f6;--table-border-light:#e5e7eb;--table-border-dark:#374151;--chart-grid-light:#f3f4f6;--chart-grid-dark:#374151;--chart-title-light:#1f2937;--chart-title-dark:#d1d5db;--chart-label-light:#4b5563;--chart-label-dark:#9ca3af;--primary-gradient:linear-gradient(135deg, #6366f1 0%, #a855f7 100%);--secondary-gradient:linear-gradient(135deg, #3b82f6 0%, #2dd4bf 100%);--danger-gradient:linear-gradient(135deg, #ef4444 0%, #f97316 100%);--success-gradient:linear-gradient(135deg, #10b981 0%, #3b82f6 100%);--primary-color:#6366f1;--surface-light:rgba(255, 255, 255, 0.8);--surface-dark:rgba(31, 41, 55, 0.8);--border-radius:12px;--shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -2px rgba(0, 0, 0, 0.05);--scrollbar-track-light:#f9fafb;--scrollbar-track-dark:#111827;--scrollbar-thumb-light:#d1d5db;--scrollbar-thumb-dark:#4b5563;--scrollbar-thumb-hover-light:#9ca3af;--scrollbar-thumb-hover-dark:#6b7280}#drive-section::-webkit-scrollbar{width:6px;height:6px}#drive-section::-webkit-scrollbar-track{background:0 0}#drive-section::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-light);border-radius:10px}#drive-section::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover-light)}body.dark #drive-section::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-dark)}body.dark #drive-section::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover-dark)}body{font-family:Inter,system-ui,-apple-system,sans-serif;margin:0;padding:20px;display:flex;justify-content:center;min-height:100vh;box-sizing:border-box}.container{width:100%;margin:0 auto;padding:10px;box-sizing:border-box;display:flex;flex-direction:column;min-height:95vh}.section{margin-bottom:12px;padding:0 15px 15px;background:var(--surface-light);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:var(--border-radius);box-shadow:var(--shadow-md);max-width:100%!important;transition:transform .2s,box-shadow .2s}body.dark .section{background:var(--surface-dark);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 6px -1px rgba(0,0,0,.3)}.section:hover{box-shadow:var(--shadow-lg)}.hidden{display:none!important}.okapi-line{display:flex;align-items:center;white-space:nowrap}.okapi-img{height:30px;width:30px;margin-left:3px}#base-dir-label,#save-dir-label{display:flex;align-items:center;width:100%;gap:8px}input#base-dir,input#save-dir{flex:1;min-width:0}body.light{background-color:#f3f4f6;color:var(--text-color-light)}button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled){padding:8px 10px;font-family:Outfit,sans-serif;font-weight:600;font-size:.95rem;border-radius:var(--border-radius);cursor:pointer;transition:.3s cubic-bezier(.4, 0, .2, 1);display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow-sm);background:#fff;color:var(--text-color-light);border:1px solid #e5e7eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled):hover:enabled{transform:translateY(-2px);box-shadow:var(--shadow-md);background:#f9fafb}button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled):active:enabled{transform:translateY(0)}button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled):disabled{background-color:#f3f4f6;color:#9ca3af;border:1px solid #e5e7eb;cursor:not-allowed;opacity:.7}#init-button,.primary-btn{background:var(--primary-gradient)!important;color:#fff!important;border:none!important}#init-button:hover:enabled,.primary-btn:hover:enabled{filter:brightness(1.1);box-shadow:0 4px 12px rgba(99,102,241,.4)}.icon-btn,.utility-btn{background:#fff!important;color:var(--text-color-light)!important;border:1px solid #e5e7eb!important}body.dark .icon-btn,body.dark .utility-btn{background:#374151!important;color:var(--text-color-dark)!important;border:1px solid #4b5563!important}.danger-btn{background:var(--danger-gradient)!important}.danger-btn:hover:enabled{filter:brightness(1.1);box-shadow:0 4px 12px rgba(239,68,68,.4)}input[type=number],input[type=text],textarea{width:100%;padding:6px 8px;font-family:Inter,sans-serif;font-size:.95rem;border-radius:10px;border:1px solid transparent;transition:.3s cubic-bezier(.4, 0, .2, 1);box-sizing:border-box;outline:0}select{width:auto;min-width:150px;padding:6px 40px 6px 8px;font-family:Inter,sans-serif;font-size:.95rem;border-radius:10px;border:1px solid transparent;transition:.3s cubic-bezier(.4, 0, .2, 1);box-sizing:border-box;outline:0;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}body.light input[type=number],body.light input[type=text],body.light select{background-color:rgba(255,255,255,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-color-light);border:1px solid #e5e7eb;box-shadow:var(--shadow-sm)}body.light input[type=number]:hover:enabled,body.light input[type=text]:hover:enabled,body.light select:hover:enabled{border-color:#d1d5db;background-color:rgba(255,255,255,.9)}body.light input[type=number]:focus:enabled,body.light input[type=text]:focus:enabled,body.light select:focus:enabled{border-color:var(--primary-color);background-color:#fff;box-shadow:0 0 0 4px rgba(99,102,241,.1),var(--shadow-md)}body.light input[type=number]:disabled,body.light input[type=text]:disabled,body.light select:disabled{background-color:#f3f4f6;color:#9ca3af;border:1px solid #e5e7eb;cursor:not-allowed;opacity:.7}body.light input[type=checkbox],body.light input[type=radio]{accent-color:var(--primary-color);width:18px;height:18px;cursor:pointer;transition:transform .2s}body.light input[type=checkbox]:hover:enabled,body.light input[type=radio]:hover:enabled{transform:scale(1.1)}body.light .button-group{display:flex;gap:8px;flex-wrap:wrap}body.light .button-group button{padding:8px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:var(--text-color-light);font-weight:500;transition:.2s}body.light .button-group button:hover:not(.selected):enabled{background-color:#f9fafb;border-color:#d1d5db;transform:translateY(-1px)}body.light .button-group button.selected{background:#ec0808!important;color:#eee!important;border:none!important;box-shadow:0 4px 12px rgba(99,102,241,.3)}body.light option{background-color:#fff;color:#333}body.dark{background-color:#111827;color:var(--text-color-dark)}body.dark button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled){background-color:#1f2937;color:var(--text-color-dark);border:1px solid #374151}body.dark button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled):hover:enabled{background-color:#374151}body.dark button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled):enabled{opacity:1}body.dark button:not(.swal2-confirm):not(.swal2-deny):not(.swal2-styled):disabled{background-color:#3a3a3a;color:#777;border:1px solid #555;cursor:not-allowed;opacity:.6}body.dark input[type=number],body.dark input[type=text],body.dark select{background-color:rgba(31,41,55,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-color-dark);border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 4px rgba(0,0,0,.2)}body.dark input[type=number]:hover:enabled,body.dark input[type=text]:hover:enabled,body.dark select:hover:enabled{border-color:rgba(255,255,255,.2);background-color:rgba(31,41,55,.8)}body.dark input[type=number]:focus:enabled,body.dark input[type=text]:focus:enabled,body.dark select:focus:enabled{border-color:var(--primary-color);background-color:rgba(17,24,39,.8);box-shadow:0 0 0 4px rgba(99,102,241,.2),0 4px 12px rgba(0,0,0,.4)}body.dark input[type=number]:disabled,body.dark input[type=text]:disabled,body.dark select:disabled{background-color:#374151;color:#6b7280;border:1px solid #4b5563;cursor:not-allowed;opacity:.6}body.dark input[type=checkbox],body.dark input[type=radio]{accent-color:var(--primary-color);width:18px;height:18px;cursor:pointer;transition:transform .2s}body.dark input[type=checkbox]:hover:enabled,body.dark input[type=radio]:hover:enabled{transform:scale(1.1)}option{background-color:#fff;color:var(--text-color-light)}body.dark option{background-color:#1f2937;color:var(--text-color-dark)}body.dark .button-group{display:flex;gap:8px;flex-wrap:wrap}body.dark .button-group button{padding:8px 16px;border:1px solid #374151;border-radius:8px;background:#1f2937;color:var(--text-color-dark);font-weight:500;transition:.2s}body.dark .button-group button:hover:not(.selected):enabled{background-color:#374151;border-color:#4b5563;transform:translateY(-1px)}body.dark .button-group button.selected{background:#e2e382!important;color:#1f2937!important;border:none!important;box-shadow:0 4px 12px rgba(99,102,241,.4)}.top-left{display:flex;flex-direction:column;position:fixed;top:20px;left:1.3vw;max-width:23.5vw;max-height:calc(100vh - 40px);box-sizing:border-box}#top-left-scrollable{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-light) transparent}body.dark #top-left-scrollable{scrollbar-color:var(--scrollbar-thumb-dark) transparent}body.dark #drive-section{scrollbar-color:var(--scrollbar-thumb-dark) transparent}.top-left .flex-group{flex-shrink:0;display:flex;align-items:center;gap:5px;flex-wrap:nowrap}.top-left>:not(.flex-group){margin-left:10px}.top-right{display:block;position:fixed;top:var(--dynamic-top,20px);right:1.3vw;max-width:23.5vw!important;box-sizing:border-box;background:var(--surface-light);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:var(--border-radius);padding:15px;box-shadow:var(--shadow-lg);z-index:100;transition:.3s}body.dark .top-right{background:var(--surface-dark);border:1px solid rgba(255,255,255,.1)}#json-display{overflow:auto!important;border-radius:8px}.title-place{position:static;display:flex;flex-direction:column;align-items:flex-start}.title-place h1{margin:0;font-family:Arial,sans-serif;line-height:1.2;font-size:1.1rem}#htbio{font-size:1.95rem!important}body.light .title-place{color:var(--text-color-light)}body.dark .title-place{color:var(--text-color-dark)}.toggle-container{width:56px;height:28px;background:#e5e7eb;border-radius:20px;padding:2px;cursor:pointer;transition:.3s;box-shadow:inset 0 2px 4px rgba(0,0,0,.05)}body.dark .toggle-container{background:#374151}.toggle-button{width:24px;height:24px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:.3s cubic-bezier(.4, 0, .2, 1);box-shadow:0 2px 4px rgba(0,0,0,.1)}.toggle-button::before{content:'☀️';font-size:20px}body.dark .toggle-button::before{content:'🌙'}.toggle-button[data-theme-mode=auto]::before{content:'🖥️';font-size:16px}body.dark .toggle-button{background-color:#1e3a8a}.toggle-button.active{transform:translateX(30px)}#init-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;max-width:50vw;width:100%;text-align:center}#init-prompt.hidden{display:none}#init-prompt button{padding:10px 20px;font-size:16px;cursor:pointer}#init-button:hover{background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.15)}#prompt-message{color:#34495e!important;font-size:1rem!important;margin-bottom:1.5rem!important}#main-content.hidden{display:none}#main-content{max-width:50vw;width:100%;margin:0 auto;box-sizing:border-box;flex:1 0 auto}#cal-json-exp-section,#cal-json-sel-section,#data-display-section,#derived-concentration-section,#export-analysis,#export-coef,#full-display-section,#kinetics-lines,#log-hid-data,#point-json-exp-section,#range-display,#select-quantity-section,#select-regress-algo,#select-time-point,#set-exp-point-section,#window-size-section,[id^=concentration-reader-section]{display:block}table{border-collapse:separate;border-spacing:0;width:100%;border-radius:8px;overflow:hidden;border:1px solid var(--table-border-light)}body.dark table{border-color:var(--table-border-dark)}td,th{padding:12px 16px;text-align:left;border-bottom:1px solid var(--table-border-light)}body.dark td,body.dark th{border-bottom:1px solid var(--table-border-dark)}th{background-color:#f9fafb;font-weight:600;color:var(--text-color-light);font-family:Outfit,sans-serif}body.dark th{background-color:#374151;color:var(--text-color-dark)}tr:last-child td{border-bottom:none}#file-table button,#json-table button{cursor:pointer}.table{border-collapse:collapse;margin-top:10px}.table td,.table th{padding:10px;border:1px solid;text-align:left}body.light .table{border-color:var(--table-border-light)}body.dark .table{border-color:var(--table-border-dark)}body.light .table .selected{background-color:#e0f7fa}body.dark .table .selected{background-color:#566283}.table th{background-color:#f0f0f0}body.dark .table th{background-color:#555}.table td{color:var(--text-color-light)}body.dark .table td{color:var(--text-color-dark)}body.light #swal-edit-table tr.selected{background-color:#e6f2ff!important}body.dark #swal-edit-table tr.selected{background-color:#566283!important}body.light #swal-edit-table tr.selected td{background-color:#e6f2ff!important}body.dark #swal-edit-table tr.selected td{background-color:#566283!important}#swal-edit-table td{word-break:break-word;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#swal-edit-table th{min-width:80px}.analysis-cell{border:1px solid #ddd;padding:8px;text-align:left}.dir-blocks,.display{max-height:300px;overflow-y:auto;width:100%;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.folder-item{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:5px;cursor:pointer;font-size:.88em;transition:background .12s,border-color .12s;border:1px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-item::before{content:"📁";flex-shrink:0;font-size:1em}body.light .folder-item:hover{background:#e8f0fe}body.dark .folder-item:hover{background:#2a3a4a}body.light .folder-item.selected{background:#d0e4ff;border-color:#4a90d9;font-weight:600}body.dark .folder-item.selected{background:#1e3a5f;border-color:#5b9bd5;font-weight:600}.folder-section-toggle{cursor:pointer;user-select:none;display:flex;align-items:center;justify-content:space-between;gap:6px}.folder-chevron{font-size:.65em;display:inline-block;transition:transform .25s;flex-shrink:0;opacity:.6}.folder-chevron.collapsed-chevron{transform:rotate(-90deg)}.folder-list-collapse{overflow:hidden;max-height:400px;transition:max-height .3s,opacity .25s;opacity:1}.folder-list-collapse.collapsed{max-height:0;opacity:0}.section-collapse{overflow:hidden;max-height:2000px;transition:max-height .5s,opacity .3s;opacity:1}.section-collapse.collapsed{max-height:0;opacity:0}.file-table-container{overflow-y:auto;max-height:240px;width:100%;margin:20px auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.dir-blocks{max-height:200px}#directory{width:70%}#dir-suggestions,#dir-suggestions-top{margin-top:5px}.dir-blocks h3{margin:0;font-size:1em;font-weight:700}.dir-blocks div{padding:5px;cursor:pointer}.dir-blocks div:hover{background-color:#f0f0f0;color:var(--text-color-light);max-width:100%;overflow-wrap:anywhere}.scrollbar-style::-webkit-scrollbar{width:2px;height:2px}.scrollbar-style::-webkit-scrollbar-track{background:var(--scrollbar-track)}.scrollbar-style::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:4px;opacity:.7}body.light .scrollbar-style{--scrollbar-track:#f0f0f0;--scrollbar-thumb:rgba(0, 0, 0, 0.3)}body.dark .scrollbar-style{--scrollbar-track:#2a2a2a;--scrollbar-thumb:rgba(255, 255, 255, 0.4)}.utility-btn{margin-top:5px;padding:5px 10px}#mode-toggle{margin-bottom:10px}.script-controls{margin-top:10px}#plot-canvas{width:100%;height:280px}#chart-container{overflow-y:auto;height:40%;position:relative;max-height:600px;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.cal-chart-container{border:1px solid}body.light .cal-chart-container{border-color:#ddd;background:#fff}body.dark .cal-chart-container{border-color:var(--table-border-dark);background:var(--surface-dark)}.cal-metric-label{font-weight:700;margin-bottom:8px}body.light .cal-metric-label{color:#2c3e50}body.dark .cal-metric-label{color:#e2e8f0}body.light .display{border:1px solid #ddd;padding:10px;background-color:#f9f9f9;white-space:pre-wrap}body.dark .display{border:1px solid #555;padding:10px;background-color:#222;color:#eee;white-space:pre-wrap}body.light #plot-analysis{margin-top:10px;font-size:.9em;color:#333}body.dark #plot-analysis{color:var(--text-color-dark)}.swal2-input-group{margin-bottom:10px;text-align:left}.swal2-input-group label{display:block;margin-bottom:5px;font-weight:700}.swal2-input{width:50%;margin:15px 0!important;box-sizing:border-box;font-size:16px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:10px;outline:0;transition:.3s;box-shadow:none;display:block}.swal2-input:focus{border-color:#3085d6;box-shadow:0 0 0 4px rgba(48,133,214,.2)}.swal2-input::placeholder{color:#aaa}.invalid{border:2px solid red}.valid{border:2px solid green}.sel-quantity{font-weight:700}body.light .sel-quantity{color:#9400d3}body.dark .sel-quantity{color:orchid}.der-con-value{font-weight:700}#error-message,#wd-size-error{color:red;display:none}.error{color:red;margin-top:5px;animation:.3s fadeIn}@keyframes blink{0%,100%{border-color:var(--blink-color,transparent)}50%{border-color:transparent}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}#run-script-btn.blinking,#terminate-script-btn.blinking{border:2px solid red;--blink-color:#ff0000;animation:1s infinite blink}#cal-mode-select.blinking,#chart-container.blinking,#file-selection.blinking,#go-to-btn.blinking,#log-display.blinking,#measurement-mode.blinking,[id^=con-value-read].blinking{border:2px solid #0f0;--blink-color:#00ff00;animation:1s infinite blink}body.light .der-con-value.blinking{border:2px solid #9400d3;--blink-color:darkviolet;animation:1s infinite blink}body.dark .der-con-value.blinking{border:2px solid orchid;--blink-color:#DA70D6;animation:1s infinite blink}body.light #swal-input-content,body.light #swal-input-filename{background-color:#fff;color:#333;border:1px solid #ccc}body.dark #swal-input-content,body.dark #swal-input-filename{background-color:#444;color:#eee;border:1px solid #666}body.light .metadata-box{background:#f9f9f9;border:1px solid #ddd;padding:8px;border-radius:8px;margin-bottom:15px}body.light .metadata-box h4{margin:0 0 8px;font-size:1em;color:#333}body.light #swal-edit-table thead th,body.light #swal-metadata-table thead th{background:#f0f0f0;color:#333}body.light #swal-edit-table tbody td,body.light #swal-metadata-table tbody td{background:#fff;color:#000}.json-input{box-sizing:border-box;width:90%;padding:4px 8px 4px 4px;margin:0;font-family:monospace;line-height:1.4;border-radius:2px}body.light #swal-metadata-table tbody td.noneditable{background:#f5f5f5;color:#777;font-style:italic;pointer-events:none;user-select:none}body.dark .metadata-box{background:#2b2b2b;border:1px solid #555;padding:8px;border-radius:8px;margin-bottom:15px}body.dark .metadata-box h4{margin:0 0 8px;font-size:1em;color:#e0e0e0}body.dark #swal-edit-table thead th,body.dark #swal-metadata-table thead th{background:#3a3a3a;color:#e0e0e0}body.dark #swal-edit-table tbody td,body.dark #swal-metadata-table tbody td{background:#1e1e1e;color:#ddd}body.dark #swal-metadata-table tbody td.noneditable{background:#252525;color:#999;font-style:italic;pointer-events:none;user-select:none}#swal-edit-table{border-collapse:collapse;width:100%;font-family:Arial,sans-serif;font-size:.82em}body.light #swal-edit-table{background-color:#fff;color:#333}body.dark #swal-edit-table{background-color:#1e1e1e;color:#e5e5e5}body.light #swal-edit-table th{background-color:#f9f9f9;border:1px solid #ccc;color:#333}body.dark #swal-edit-table th{background-color:#2b2b2b;border:1px solid #444;color:#e5e5e5}body.light #swal-edit-table td{border:1px solid #ccc;color:#333}body.dark #swal-edit-table td{border:1px solid #444;color:#e5e5e5}#swal-edit-table td.non-editable{cursor:not-allowed}body.light #swal-edit-table td.non-editable{background-color:#f8f8f8;color:#999}body.dark #swal-edit-table td.non-editable{background-color:#333!important;color:#999}#swal-edit-table+p{font-size:.8em;margin-top:5px}body.light #swal-edit-table+p{color:#666}body.dark #swal-edit-table+p{color:#aaa}body.light .swal2-popup{background:#fff!important;color:#333!important;border:1px solid #ccc;box-shadow:0 4px 15px rgba(0,0,0,.1)}body.dark .swal2-popup{background:#1e1e1e!important;color:#eee!important;border:1px solid #444;box-shadow:0 4px 15px rgba(0,0,0,.6)}body.light .swal2-title{color:#222!important}body.dark .swal2-title{color:#eee!important}body.light .swal2-html-container{color:#333!important}body.dark .swal2-html-container{color:#ccc!important}body.light .swal2-container.swal2-backdrop-show{background:rgba(0,0,0,.4)!important}body.dark .swal2-container.swal2-backdrop-show{background:rgba(0,0,0,.7)!important}@media (max-width:768px){.top-left{position:relative;top:auto;left:auto;max-width:100%;max-height:none;margin-bottom:0;order:1}#top-left-scrollable{flex:none;min-height:unset;max-height:none;overflow-y:visible}.top-left>:not(.flex-group){margin-left:0}.top-right{display:block;position:relative;top:auto;left:auto;max-width:100%!important;margin-bottom:0}#right-deselect-btn{display:none!important}#init-prompt,#main-content{max-width:100%;width:100%;order:2}footer{order:3}}#drive-section{max-height:40vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-light) transparent;background:var(--secondary-gradient);color:#fff;padding:20px;border-radius:var(--border-radius);margin-bottom:20px;margin-right:0;box-shadow:0 4px 20px rgba(59,130,246,.3)}#drive-section h3{margin-top:0;color:#fff}#drive-section h4{color:#fff;font-size:1em}.badge-guest{background-color:#95a5a6;color:#fff}.badge-connected{background-color:#27ae60;color:#fff}.primary-btn{background-color:#3498db!important;color:#fff!important;border:none!important;border-radius:4px;cursor:pointer;transition:background-color .2s}.primary-btn:hover{background-color:#2980b9!important}#drive-sync-section{width:100%}.sync-buttons{display:flex;flex-wrap:wrap;gap:8px;width:100%}.danger-btn{background-color:#e74c3c!important;color:#fff!important;border:none!important;border-radius:4px;cursor:pointer;transition:background-color .2s}.danger-btn:hover{background-color:#c0392b!important}.sync-btn{background-color:#2ecc71!important;color:#fff!important;border:none!important;border-radius:4px;cursor:pointer;transition:background-color .2s;flex:1;display:flex;align-items:center;justify-content:center;white-space:nowrap;min-width:120px}.sync-btn:hover{background-color:#27ae60!important}.icon-btn{background-color:#ecf0f1!important;color:#2c3e50!important;border:1px solid #bdc3c7!important;border-radius:4px;cursor:pointer;transition:background-color .2s}.icon-btn:hover{background-color:#bdc3c7!important}.folder-selection-group{display:flex;gap:10px;margin-bottom:10px}.folder-selection-group label{color:#fff;cursor:pointer}#drive-folder-dropdown{padding:6px;border-radius:4px}#new-folder-name{padding:6px;border-radius:4px;border:1px solid #bdc3c7}.sync-info{padding:8px;background-color:rgba(255,255,255,.1);border-radius:4px;margin-top:10px}.checkbox-label{color:#fff;cursor:pointer}.checkbox-label input[type=checkbox]{margin-right:6px}#user-guide-btn{position:fixed;top:20px;right:20px;z-index:9999;padding:10px 20px;border-radius:25px;font-weight:700;font-size:14px;cursor:pointer;transition:.3s;box-shadow:0 2px 8px rgba(0,0,0,.2);display:flex;align-items:center;gap:8px}body.light #user-guide-btn{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);color:#fff;border:none}body.dark #user-guide-btn{background:linear-gradient(135deg,#4facfe 0,#00f2fe 100%);color:#1a1a1a;border:none}#user-guide-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.3)}#user-guide-btn::before{content:'?';display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.3);font-weight:700}.user-guide-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.3);z-index:10000;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;pointer-events:none}.user-guide-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.user-guide-spotlight{position:absolute;border-radius:8px;box-shadow:0 0 0 9999px rgba(0,0,0,.7);z-index:10001;pointer-events:none;opacity:0;visibility:hidden;transition:.4s cubic-bezier(.4, 0, .2, 1)}.user-guide-spotlight.active{opacity:1;visibility:visible;animation:2s ease-in-out infinite pulse-spotlight;pointer-events:auto}@keyframes pulse-spotlight{0%,100%{box-shadow:0 0 0 9999px rgba(0,0,0,.7),0 0 20px rgba(255,255,255,.3),inset 0 0 20px rgba(255,255,255,.1)}50%{box-shadow:0 0 0 9999px rgba(0,0,0,.7),0 0 30px rgba(255,255,255,.5),inset 0 0 30px rgba(255,255,255,.2)}}.user-guide-tooltip{position:absolute;max-width:400px;min-width:300px;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.3);z-index:10002;opacity:0;visibility:hidden;transform:scale(.9);transition:.3s cubic-bezier(.4, 0, .2, 1)}body.light .user-guide-tooltip{background:#fff;color:#333;border:2px solid #667eea}body.dark .user-guide-tooltip{background:#2a2a2a;color:#eee;border:2px solid #4facfe}.user-guide-tooltip.active{opacity:1;visibility:visible;transform:scale(1)}.tooltip-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid rgba(0,0,0,.1)}body.dark .tooltip-header{border-bottom:1px solid rgba(255,255,255,.1)}.tooltip-step-counter{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}body.light .tooltip-step-counter{color:#667eea}body.dark .tooltip-step-counter{color:#4facfe}.tooltip-close-btn{background:0 0;border:none;font-size:28px;line-height:1;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:.2s}body.light .tooltip-close-btn{color:#666}body.dark .tooltip-close-btn{color:#aaa}.tooltip-close-btn:hover{background:rgba(0,0,0,.1);transform:rotate(90deg)}body.dark .tooltip-close-btn:hover{background:rgba(255,255,255,.1)}.tooltip-content{padding:20px}.tooltip-title{margin:0 0 10px;font-size:20px;font-weight:700}body.light .tooltip-title{color:#333}body.dark .tooltip-title{color:#fff}.tooltip-description{margin:0;font-size:14px;line-height:1.6}body.light .tooltip-description{color:#666}body.dark .tooltip-description{color:#ccc}.tooltip-footer{display:flex;justify-content:space-between;gap:10px;padding:15px 20px;border-top:1px solid rgba(0,0,0,.1)}body.dark .tooltip-footer{border-top:1px solid rgba(255,255,255,.1)}.tooltip-btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:.2s;border:none;flex:1}.tooltip-prev-btn{background:0 0;border:1px solid #ccc}body.light .tooltip-prev-btn{color:#666}body.dark .tooltip-prev-btn{color:#aaa;border-color:#555}.tooltip-prev-btn:hover{transform:translateX(-2px)}body.light .tooltip-prev-btn:hover{background:#f5f5f5;border-color:#999}body.dark .tooltip-prev-btn:hover{background:#3a3a3a;border-color:#777}.tooltip-finish-btn,.tooltip-next-btn{color:#fff}body.light .tooltip-finish-btn,body.light .tooltip-next-btn{background:linear-gradient(135deg,#667eea 0,#764ba2 100%)}body.dark .tooltip-finish-btn,body.dark .tooltip-next-btn{background:linear-gradient(135deg,#4facfe 0,#00f2fe 100%);color:#1a1a1a}.tooltip-finish-btn:hover,.tooltip-next-btn:hover{transform:translateX(2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.tooltip-finish-btn{background:linear-gradient(135deg,#11998e 0,#38ef7d 100%)}.tooltip-finish-btn:hover{transform:scale(1.05)}#global-spinner{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);z-index:15000;display:flex;justify-content:center;align-items:center}#global-spinner.hidden{display:none!important}.spinner-container{display:flex;flex-direction:column;align-items:center;gap:20px}.spinner{border:8px solid rgba(255,255,255,.3);border-top:8px solid #3498db;border-radius:50%;width:60px;height:60px;animation:1s linear infinite global-spin;box-shadow:0 0 10px rgba(0,0,0,.1)}.spinner-message{color:#fff;font-size:1.25rem;font-weight:500;text-shadow:0 2px 5px rgba(0,0,0,.5);font-family:'Segoe UI',Arial,sans-serif;animation:2s ease-in-out infinite pulse-opac}@keyframes global-spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes pulse-opac{0%,100%{opacity:1;text-shadow:0 2px 5px rgba(0,0,0,.5)}50%{opacity:.6;text-shadow:0 1px 2px rgba(0,0,0,.2)}}@media (max-width:768px){.user-guide-tooltip{max-width:90vw;min-width:280px}#user-guide-btn{padding:8px 16px;font-size:12px}.tooltip-footer{flex-direction:column}.tooltip-btn{width:100%}}#report-items-container{border-radius:8px;box-shadow:inset 0 2px 4px rgba(0,0,0,.05)}.report-item-card{border:1px solid #e5e7eb;border-radius:6px;padding:10px;margin-bottom:10px;position:relative;background:#fff;transition:transform .2s;color:#1f2937}.report-item-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px rgba(0,0,0,.1)}#print-report-container.report-mode{display:block!important;visibility:visible!important;opacity:1!important;position:absolute!important;top:0!important;left:0!important;width:100%!important;min-height:100%!important;height:auto!important;background:#fff!important;z-index:9999999!important;margin:0!important;padding:0!important;overflow:visible!important}.report-chart-block{width:100%;margin-bottom:30px;text-align:center;page-break-inside:avoid}.report-chart-block img{display:block;width:100%;height:auto;border:1px solid #e5e7eb;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.05)}@media print{@page{margin:12mm}#print-report-container,#print-report-container *{box-sizing:border-box!important}body,html{height:auto!important;min-height:100%!important;overflow:visible!important;display:block!important;margin:0!important;padding:0!important;background:#fff!important;width:auto!important}body>:not(#print-report-container){display:none!important}#print-report-container{display:block!important;position:relative!important;width:100%!important;max-width:100%!important;height:auto!important;overflow:visible!important;overflow-x:visible!important;top:0!important;left:0!important;z-index:auto!important;background:#fff!important;padding:40px!important}#print-report-container.report-mode .report-body,#print-report-container.report-mode .report-header{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}.report-watermark-bg{display:none!important}.report-chart-block,.report-results{page-break-inside:avoid!important;break-inside:avoid!important;margin-bottom:24px!important}.report-header{page-break-after:auto!important}#print-report-container.report-mode{min-height:0!important}.report-footer{page-break-before:avoid!important;break-before:avoid!important;margin-top:20px!important}}body.dark #report-items-container{background:#111827!important;border-color:#374151!important}body.dark .report-layout-config{background:#1f2937!important;border-color:#374151!important}body.dark .report-item-card{background:#1f2937;border-color:#374151;color:#f3f4f6}body.dark .report-item-card:hover{box-shadow:0 4px 6px rgba(0,0,0,.5)}body.dark .report-item-header{background:#374151!important;border-bottom-color:#4b5563!important}body.dark .move-card-btn{border-color:#4b5563!important;color:#9ca3af!important;background:0 0!important}body.dark .move-card-btn:hover:enabled{border-color:#6b7280!important;color:#d1d5db!important;background:#374151!important}body.dark .item-mode-badge{color:#a5b4fc!important;background:#312e81!important}body.dark .delete-item-btn{background:0 0!important;border-color:#b91c1c!important;color:#fca5a5!important}body.dark .metric-console-block{background:#111827!important;border-color:#374151!important}body.dark .metric-console-block label{color:#d1d5db}body.dark .algo-include-label{background:#374151!important;color:#d1d5db!important}body.dark .algo-include-label:hover{background:#4b5563!important}body.dark .report-item-controls{color:#d1d5db}body.dark .report-item-controls label{color:#9ca3af}body.dark .control-group{color:#d1d5db}body.dark .report-derived-concentration{background:#1e3a5f!important;border-color:#2563eb!important}body.dark .report-derived-concentration h3{color:#60a5fa!important}body.dark .report-derived-concentration div{color:#93c5fd!important}body.dark .report-analysis{background:#1f2937!important;border-color:#374151!important}body.dark .report-analysis h3{color:#d1d5db!important}body.dark .report-analysis table{border-color:#374151!important}body.dark .report-analysis th{background:#374151!important;border-color:#4b5563!important;color:#f3f4f6!important}body.dark .report-analysis td{border-color:#374151!important;color:#d1d5db!important}.download-tagline{font-size:.82rem;color:#6b7280;margin:0 0 12px;line-height:1.4}body.dark .download-tagline{color:#9ca3af}.account-nav{display:flex;align-items:center;gap:8px;margin:0 0 12px;flex-wrap:wrap}.account-nav-label{font-size:.82rem;color:#6b7280}body.dark .account-nav-label{color:#9ca3af}.account-nav-btn{font-size:.8rem;font-weight:600;padding:4px 12px;border-radius:5px;text-decoration:none;transition:background .15s,color .15s}.signup-btn{background:#2d6a4f;color:#fff}.signup-btn:hover{background:#1b4332}.login-btn{background:0 0;color:#2d6a4f;border:1.5px solid #2d6a4f}.login-btn:hover{background:#f0fdf4}body.dark .login-btn{color:#6ee7b7;border-color:#6ee7b7}body.dark .login-btn:hover{background:#064e3b33}.logout-btn{background:0 0;color:#b91c1c;border:1.5px solid #b91c1c;cursor:pointer}.logout-btn:hover{background:#fef2f2}body.dark .logout-btn{color:#fca5a5;border-color:#fca5a5}body.dark .logout-btn:hover{background:#450a0a33}.token-btn{background:#1d4ed8;color:#fff;border:none;cursor:pointer}.token-btn:hover{background:#1e40af}.delete-account-btn{background:0 0;color:#b91c1c;border:1.5px solid #b91c1c;cursor:pointer;font-size:.78rem}.delete-account-btn:hover{background:#fef2f2}body.dark .delete-account-btn{color:#fca5a5;border-color:#fca5a5}body.dark .delete-account-btn:hover{background:#450a0a33}.download-version{font-size:.78rem;color:#6b7280;margin:-4px 0 10px;font-variant-numeric:tabular-nums;min-height:1em}body.dark .download-version{color:#9ca3af}.download-btn--unavailable{opacity:.4;cursor:not-allowed;pointer-events:none}.download-btn-group{display:flex;flex-direction:column;gap:8px}.download-btn{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--border-radius);text-decoration:none;font-family:Outfit,sans-serif;font-weight:600;font-size:.9rem;transition:transform .15s,box-shadow .15s;box-shadow:var(--shadow-sm);cursor:pointer}.download-btn:hover{transform:translateY(-1px)}.download-btn:active{transform:translateY(0)}.mac-btn{background:#1c1c1e;color:#f5f5f7!important}.mac-btn:hover{background:#2c2c2e;box-shadow:0 4px 12px rgba(0,0,0,.35)}.win-btn{background:#0078d4;color:#fff!important}.win-btn:hover{background:#006cbf;box-shadow:0 4px 12px rgba(0,120,212,.45)}.linux-btn{background:#e95420;color:#fff!important}.linux-btn:hover{background:#c94115;box-shadow:0 4px 12px rgba(233,84,32,.45)}.download-btn-icon{font-size:1.3rem;flex-shrink:0}.download-btn-text{display:flex;flex-direction:column;line-height:1.2}.download-btn-text small{font-weight:400;font-size:.75rem;opacity:.8}#okapi-ai-fab{position:fixed;bottom:24px;right:24px;z-index:9000;height:52px;border-radius:26px;background:var(--primary-gradient);border:none;cursor:pointer;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;padding:0;transition:.3s cubic-bezier(.4, 0, .2, 1);overflow:hidden;width:52px}#okapi-ai-fab:hover{width:auto;min-width:176px;padding:0 18px;box-shadow:0 8px 24px rgba(99,102,241,.4);justify-content:flex-end}.okapi-ai-icon{font-size:1.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:52px;height:52px;line-height:1}.okapi-ai-label{font-family:Inter,system-ui,sans-serif;font-size:.9rem;font-weight:600;color:#fff;white-space:nowrap;position:absolute;left:18px;top:50%;transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s cubic-bezier(.4, 0, .2, 1),visibility 0s .3s}#okapi-ai-fab:hover .okapi-ai-label{opacity:1;visibility:visible;transition:opacity .3s cubic-bezier(.4, 0, .2, 1),visibility}#okapi-ai-panel{position:fixed;bottom:88px;right:24px;z-index:8999;width:380px;max-height:560px;border-radius:16px;background:var(--surface-light);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg),0 0 0 1px rgba(99,102,241,.15);display:flex;flex-direction:column;font-family:Inter,system-ui,sans-serif;font-size:.875rem;opacity:0;transform:translateY(20px) scale(.96);pointer-events:none;transition:opacity .22s,transform .22s;overflow:hidden}#okapi-ai-panel.okapi-ai-panel-open{opacity:1;transform:translateY(0) scale(1);pointer-events:all}body.dark #okapi-ai-panel{background:rgba(17,24,39,.95);box-shadow:var(--shadow-lg),0 0 0 1px rgba(99,102,241,.25)}#okapi-ai-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 10px;background:var(--primary-gradient);color:#fff;border-radius:16px 16px 0 0;flex-shrink:0}#okapi-ai-title{font-weight:600;font-size:.95rem}#okapi-ai-header-btns{display:flex;gap:6px}#okapi-ai-header-btns button{background:rgba(255,255,255,.2);border:none;color:#fff;border-radius:8px;width:30px;height:30px;padding:0;cursor:pointer;font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:background .15s}#okapi-ai-header-btns button:hover{background:rgba(255,255,255,.35)}#okapi-ai-lang-btn{font-weight:700;font-size:.72rem;letter-spacing:.03em;width:auto!important;padding:0 9px!important}#okapi-ai-lang-menu{position:fixed;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.13);padding:4px;min-width:148px;z-index:10100}body.dark #okapi-ai-lang-menu{background:#1f2937;border-color:#374151}#okapi-ai-lang-menu button.okapi-ai-lang-opt{display:block;width:100%;height:auto;text-align:left;padding:6px 10px;border:none;background:0 0;border-radius:7px;cursor:pointer;font-size:.82rem;font-weight:400;font-family:inherit;color:#374151;transition:background .12s;box-sizing:border-box}body.dark #okapi-ai-lang-menu button.okapi-ai-lang-opt{color:#d1d5db}#okapi-ai-lang-menu button.okapi-ai-lang-opt:hover{background:rgba(99,102,241,.09);color:#4f46e5}body.dark #okapi-ai-lang-menu button.okapi-ai-lang-opt:hover{color:#a5b4fc}#okapi-ai-lang-menu button.okapi-ai-lang-opt.okapi-ai-lang-active{background:rgba(99,102,241,.12);color:#4f46e5;font-weight:600}body.dark #okapi-ai-lang-menu button.okapi-ai-lang-opt.okapi-ai-lang-active{color:#a5b4fc}#okapi-ai-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}#okapi-ai-messages{flex:1;overflow-y:auto;padding:12px 12px 4px;display:flex;flex-direction:column;gap:8px;min-height:0;max-height:320px}.okapi-ai-msg{max-width:88%;padding:9px 13px;border-radius:14px;line-height:1.45;word-break:break-word;font-size:.845rem}.okapi-ai-msg-user{align-self:flex-end;background:var(--primary-gradient);color:#fff;border-bottom-right-radius:4px}.okapi-ai-msg-assistant{align-self:flex-start;background:#f3f4f6;color:#1f2937;border-bottom-left-radius:4px}body.dark .okapi-ai-msg-assistant{background:#1f2937;color:#f3f4f6}.okapi-ai-msg-system{align-self:center;background:rgba(99,102,241,.08);color:#6366f1;font-style:italic;font-size:.8rem;border-radius:10px;padding:6px 12px;max-width:96%;text-align:center}body.dark .okapi-ai-msg-system{background:rgba(99,102,241,.18);color:#a5b4fc}.okapi-ai-msg code{background:rgba(0,0,0,.08);border-radius:4px;padding:1px 5px;font-family:monospace;font-size:.82em}body.dark .okapi-ai-msg code{background:rgba(255,255,255,.1)}.okapi-ai-msg pre{background:rgba(0,0,0,.06);border-radius:8px;padding:8px 10px;overflow-x:auto;font-size:.8em;margin:4px 0 0}body.dark .okapi-ai-msg pre{background:rgba(255,255,255,.07)}.okapi-ai-thinking{display:flex!important;align-items:center;gap:4px;padding:10px 16px!important}.okapi-ai-thinking span{width:7px;height:7px;background:#9ca3af;border-radius:50%;animation:1.2s infinite okapi-bounce}.okapi-ai-thinking span:nth-child(2){animation-delay:.2s}.okapi-ai-thinking span:nth-child(3){animation-delay:.4s}@keyframes okapi-bounce{0%,100%,80%{transform:scale(.7);opacity:.4}40%{transform:scale(1);opacity:1}}#okapi-ai-status-bar{padding:4px 12px 2px;min-height:22px;flex-shrink:0}.okapi-ai-badge{font-size:.72rem;padding:2px 8px;border-radius:20px;font-weight:500}.okapi-ai-badge-ok{background:rgba(16,185,129,.12);color:#059669}.okapi-ai-badge-warn{background:rgba(245,158,11,.12);color:#d97706}body.dark .okapi-ai-badge-ok{color:#34d399}body.dark .okapi-ai-badge-warn{color:#fbbf24}#okapi-ai-input-row{display:flex;gap:6px;padding:8px 12px 12px;border-top:1px solid #e5e7eb;flex-shrink:0}body.dark #okapi-ai-input-row{border-top-color:#374151}#okapi-ai-input{flex:1;border:1px solid #d1d5db;border-radius:10px;padding:7px 10px;font-family:inherit;font-size:.845rem;resize:none;outline:0;background:#fff;color:#1f2937;transition:border-color .15s;line-height:1.4}#okapi-ai-input:focus{border-color:#6366f1}body.dark #okapi-ai-input{background:#111827;color:#f3f4f6;border-color:#374151}body.dark #okapi-ai-input:focus{border-color:#6366f1}#okapi-ai-send-btn{background:var(--primary-gradient);border:none;color:#fff;border-radius:10px;width:38px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:opacity .15s;flex-shrink:0}#okapi-ai-send-btn:disabled{opacity:.45;cursor:default}#okapi-ai-send-btn:not(:disabled):hover{opacity:.85}#okapi-ai-send-btn.okapi-ai-stop-mode{background:#ef4444;font-size:.75rem}#okapi-ai-send-btn.okapi-ai-stop-mode:not(:disabled):hover{opacity:.8}#okapi-ai-settings{padding:14px 16px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;max-height:488px}#okapi-ai-settings h4{margin:0 0 4px;font-size:.92rem;color:#6366f1}#okapi-ai-settings label{display:flex;flex-direction:column;gap:4px;font-size:.8rem;font-weight:500;color:#374151}body.dark #okapi-ai-settings label{color:#d1d5db}#okapi-ai-lang-section{display:flex;flex-direction:column;gap:6px}.okapi-ai-set-label{font-size:.8rem;font-weight:500;color:#374151}body.dark .okapi-ai-set-label{color:#d1d5db}.okapi-ai-set-hint{font-weight:400;font-size:.73rem;color:#9ca3af}#okapi-ai-lang-checks{display:flex;flex-wrap:wrap;gap:4px 12px}#okapi-ai-lang-checks label{display:flex;flex-direction:row;align-items:center;gap:5px;font-size:.8rem;font-weight:400;cursor:pointer;color:#374151}body.dark #okapi-ai-lang-checks label{color:#d1d5db}#okapi-ai-lang-checks input[type=checkbox]{cursor:pointer}#okapi-ai-settings input[type=text],#okapi-ai-settings select{border:1px solid #d1d5db;border-radius:8px;padding:6px 8px;font-size:.83rem;font-family:inherit;background:#fff;color:#1f2937;outline:0}body.dark #okapi-ai-settings input[type=text],body.dark #okapi-ai-settings select{background:#111827;color:#f3f4f6;border-color:#374151}.okapi-ai-toggle-row{flex-direction:row!important;align-items:center;justify-content:space-between}#okapi-ai-settings-actions{display:flex;gap:8px;margin-top:4px}#okapi-ai-settings-actions button{flex:1;padding:7px;border-radius:9px;border:none;cursor:pointer;font-size:.83rem;font-weight:500;transition:opacity .15s}#okapi-ai-settings-actions button:first-child{background:var(--primary-gradient);color:#fff}#okapi-ai-settings-actions button:last-child{background:#f3f4f6;color:#374151}body.dark #okapi-ai-settings-actions button:last-child{background:#1f2937;color:#d1d5db}.okapi-ai-setup-box{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.3);border-radius:10px;padding:10px 12px;font-size:.8rem;color:#92400e;line-height:1.5}body.dark .okapi-ai-setup-box{color:#fbbf24;border-color:rgba(251,191,36,.3)}.okapi-ai-setup-box a{color:#6366f1}.okapi-ai-setup-box button{margin-top:8px;background:#6366f1;color:#fff;border:none;border-radius:7px;padding:5px 12px;cursor:pointer;font-size:.8rem}#okapi-ai-pull-section{display:flex;flex-direction:column;gap:6px}#okapi-ai-pull-info{font-size:.78rem;color:#6b7280}body.dark #okapi-ai-pull-info{color:#9ca3af}#okapi-ai-pull-bar-wrap{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}body.dark #okapi-ai-pull-bar-wrap{background:#374151}#okapi-ai-pull-bar{height:100%;width:0%;background:var(--primary-gradient);border-radius:3px;transition:width .4s}#okapi-ai-pull-btn{background:var(--secondary-gradient);color:#fff;border:none;border-radius:8px;padding:7px 12px;cursor:pointer;font-size:.83rem;font-weight:500}#okapi-ai-pull-btn:disabled{opacity:.5;cursor:default}.okapi-hidden{display:none!important}#okapi-ai-uninstall-details{font-size:.78rem;color:#6b7280}body.dark #okapi-ai-uninstall-details{color:#9ca3af}#okapi-ai-uninstall-details summary{cursor:pointer;color:#ef4444;font-weight:500;font-size:.8rem;padding:2px 0}#okapi-ai-uninstall-details summary:hover{text-decoration:underline}.okapi-ai-uninstall-box{margin-top:6px;background:rgba(239,68,68,.06);border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:8px 10px;line-height:1.7}body.dark .okapi-ai-uninstall-box{background:rgba(239,68,68,.1)}.okapi-ai-uninstall-box code{background:rgba(0,0,0,.07);border-radius:4px;padding:1px 5px;font-size:.78em}body.dark .okapi-ai-uninstall-box code{background:rgba(255,255,255,.1)}.okapi-ai-uninstall-box a{color:#6366f1}.okapi-ai-uninstall-box button{background:#fee2e2;color:#b91c1c;border:none;border-radius:6px;padding:3px 10px;cursor:pointer;font-size:.78rem;margin-left:4px}body.dark .okapi-ai-uninstall-box button{background:rgba(185,28,28,.25);color:#fca5a5}.okapi-ai-choice-btns{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.okapi-ai-choice-btn{flex:1;min-width:100px;padding:6px 12px;border:1px solid #6366f1;border-radius:8px;background:0 0;color:#6366f1;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.okapi-ai-choice-btn:hover:not(:disabled){background:#6366f1;color:#fff}.okapi-ai-choice-btn:disabled{opacity:.45;cursor:default}body.dark .okapi-ai-choice-btn{border-color:#a5b4fc;color:#a5b4fc}body.dark .okapi-ai-choice-btn:hover:not(:disabled){background:#6366f1;color:#fff}#okapi-ai-cmd-picker{margin:0 12px 4px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;max-height:180px;overflow-y:auto;box-shadow:0 -4px 16px rgba(0,0,0,.08);flex-shrink:0}body.dark #okapi-ai-cmd-picker{background:#1f2937;border-color:#374151;box-shadow:0 -4px 16px rgba(0,0,0,.3)}.okapi-ai-cmd-item{display:flex;align-items:baseline;gap:10px;padding:7px 12px;cursor:pointer;transition:background .1s}.okapi-ai-cmd-active,.okapi-ai-cmd-item:hover{background:rgba(99,102,241,.1)}body.dark .okapi-ai-cmd-active,body.dark .okapi-ai-cmd-item:hover{background:rgba(99,102,241,.2)}.okapi-ai-cmd-name{font-family:'Courier New',monospace;font-size:.8rem;font-weight:700;color:#6366f1;min-width:108px;flex-shrink:0;letter-spacing:-.01em}body.dark .okapi-ai-cmd-name{color:#a5b4fc}.okapi-ai-cmd-desc{font-size:.775rem;color:#6b7280;line-height:1.3}body.dark .okapi-ai-cmd-desc{color:#9ca3af}.okapi-ai-cursor{display:inline-block;animation:.6s step-end infinite okapi-cursor-blink;opacity:.7;font-size:.85em}@keyframes okapi-cursor-blink{0%,100%{opacity:.7}50%{opacity:0}}@media (max-width:440px){#okapi-ai-panel{width:calc(100vw - 32px);right:16px}}