/* TradeHub1 chart workspace. Scoped to preserve existing pages and themes. */
.lab{--lab-bg:#0d1717;--lab-card:#132121;--lab-soft:#192b29;--lab-line:#2c4140;--lab-text:#edf5f1;--lab-muted:#a7bcb4;--lab-accent:#e3c579;--lab-green:#77dfb4;--lab-red:#ffa3a3;color:var(--lab-text);font-size:1rem;line-height:1.7}
.light .lab{--lab-bg:#f2f6f4;--lab-card:#fff;--lab-soft:#e8f0ec;--lab-line:#c5d6ce;--lab-text:#183b30;--lab-muted:#4c665b;--lab-accent:#795712;--lab-green:#126545;--lab-red:#a32936}
.main:has(.lab){max-width:1560px;padding:28px clamp(16px,2.4vw,40px)}
.lab button,.lab input,.lab select{font:inherit}.lab button{transition:background .18s,border-color .18s}.lab button:disabled{opacity:.5;cursor:not-allowed}.lab :focus-visible{outline:3px solid var(--lab-accent);outline-offset:4px}.lab svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.lab-top,.lab-heading,.lab-row,.lab-actions,.lab-file,.lab-result-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lab-top{justify-content:space-between;margin-bottom:26px}.lab-eyebrow{color:var(--lab-accent);font-size:.875rem;letter-spacing:.05em;margin-bottom:8px}.lab h1{font-size:clamp(1.65rem,2.6vw,2.2rem);margin:0 0 8px}.lab h2{font-size:1.18rem}.lab h3{font-size:1rem}.lab p,.lab small{color:var(--lab-muted)}.lab small{font-size:.875rem}.lab-mark{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--lab-line);border-radius:15px;background:var(--lab-soft);color:var(--lab-accent)}
.lab-badge{display:inline-flex;align-items:center;gap:8px;padding:5px 11px;border-radius:7px;border:1px solid var(--lab-line);font-size:.875rem;color:var(--lab-muted)}.lab-badge i{width:6px;height:6px;background:var(--lab-green);border-radius:50%}.lab-steps{display:flex;gap:18px;flex-wrap:wrap;border-block:1px solid var(--lab-line);padding:14px 0;margin-bottom:24px;color:var(--lab-muted);font-size:.875rem}.lab-step{display:flex;align-items:center;gap:8px}.lab-step b{font-family:'IBM Plex Mono',monospace;font-size:.875rem;color:var(--lab-accent)}
.lab-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:22px;align-items:start}.lab-card{background:var(--lab-card);border:1px solid var(--lab-line);border-radius:18px;min-width:0;overflow:hidden}.lab-card-head{padding:20px 22px;border-bottom:1px solid var(--lab-line);display:flex;justify-content:space-between;align-items:center;gap:12px}.lab-card-body{padding:22px}.lab-label{display:block;font-size:.875rem;color:var(--lab-muted);margin-bottom:7px}.lab-upload{width:100%;min-height:240px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px dashed #637d70;border-radius:12px;background:var(--lab-bg);color:var(--lab-text);text-align:center;cursor:pointer}.lab-upload:hover,.lab-upload.drag{border-color:var(--lab-accent);background:var(--lab-soft)}.lab-upload svg{width:34px;height:34px;color:var(--lab-accent)}.lab-upload strong{font-size:1.12rem}.lab-upload img{display:block;max-height:290px;max-width:100%;object-fit:contain;border-radius:7px}.lab-upload.has-image{padding:10px;min-height:180px}.lab-file{justify-content:space-between;flex-wrap:nowrap;padding-top:12px}.lab-file div{min-width:0}.lab-file b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:270px;font-size:.875rem}.lab-file small{font-size:.875rem}.lab-icon-btn{border:1px solid var(--lab-line);background:transparent;color:var(--lab-muted);border-radius:8px;padding:8px;display:grid;place-items:center}.lab-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 12px}.lab input,.lab select{width:100%;min-width:0;border:1px solid var(--lab-line);background:var(--lab-bg);color:var(--lab-text);border-radius:9px;padding:10px 12px;min-height:46px}.lab input::placeholder{color:var(--lab-muted);opacity:.85}.lab-hint{font-size:.875rem;margin-top:8px}.lab-primary,.lab-secondary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;padding:10px 16px;min-height:44px;font-weight:700;white-space:normal}.lab-primary{background:#e3c579;color:#14221c;border:1px solid #e3c579}.lab-primary:hover{background:#eed69e}.lab-secondary{background:transparent;color:var(--lab-text);border:1px solid var(--lab-line)}.lab-secondary:hover{background:var(--lab-soft);border-color:var(--lab-muted)}.lab-submit{width:100%;margin-top:20px}.lab-tip{margin-top:18px;padding-top:16px;border-top:1px solid var(--lab-line);font-size:.875rem;color:var(--lab-muted)}
.lab-empty{min-height:390px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;gap:16px}.lab-empty .lab-mark{height:70px;width:70px;border-radius:20px}.lab-empty .lab-mark svg{height:32px;width:32px}.lab-empty p{max-width:360px}.lab-placeholders{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin-top:12px}.lab-placeholders div{padding:14px 8px;background:var(--lab-bg);border:1px solid var(--lab-line);border-radius:10px;font-size:.875rem;color:var(--lab-muted)}.lab-placeholders b{display:block;font-size:1.3rem;color:var(--lab-muted)}.lab-progress{width:100%;max-width:220px;height:3px;background:var(--lab-line);overflow:hidden}.lab-progress::after{content:'';display:block;width:35%;height:100%;background:var(--lab-accent);animation:lab-loading 1.4s ease-in-out infinite alternate}@keyframes lab-loading{to{transform:translateX(185%)}}@media(prefers-reduced-motion:reduce){.lab-progress::after{animation:none}.lab *{scroll-behavior:auto!important;transition:none!important}}
.lab-error{padding:13px 16px;margin-top:16px;border:1px solid var(--lab-red);border-radius:10px;color:var(--lab-red);font-size:.875rem}.lab-result-head{justify-content:space-between;margin-bottom:18px}.lab-symbol{font-size:1.35rem;font-family:'IBM Plex Mono',monospace;overflow-wrap:anywhere}.lab-trend{padding:6px 12px;border-radius:7px;background:var(--lab-soft);color:var(--lab-muted);font-size:.875rem}.lab-trend.bullish{color:var(--lab-green)}.lab-trend.bearish{color:var(--lab-red)}.lab-summary{padding:16px;border-inline-start:3px solid var(--lab-accent);background:var(--lab-bg);border-radius:8px;margin-bottom:18px;overflow-wrap:anywhere}.lab-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:22px}.lab-metrics div{padding:12px 8px;background:var(--lab-bg);border-radius:8px;text-align:center}.lab-metrics small{display:block}.lab-price{font-family:'IBM Plex Mono',monospace;direction:ltr;unicode-bidi:isolate;font-size:1rem;overflow-wrap:anywhere}.lab-levels{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lab-levels h3{margin-bottom:9px}.lab-level{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--lab-line)}.lab-level span:first-child{font-family:'IBM Plex Mono',monospace;font-size:.875rem;color:var(--lab-muted)}.lab-levels .support h3{color:var(--lab-green)}.lab-levels .resistance h3{color:var(--lab-red)}.lab-detail{margin-top:20px;border-top:1px solid var(--lab-line);padding-top:16px}.lab-detail summary{cursor:pointer;font-weight:700}.lab-detail p{font-size:.875rem;margin-block:8px}.lab-notes{padding-inline-start:20px;margin-top:10px;color:var(--lab-muted);overflow-wrap:anywhere}.lab-notes li{padding:4px 0}.lab-result-footer{border-top:1px solid var(--lab-line);padding-top:16px;margin-top:20px}.lab-result-footer p{font-size:.875rem;margin-bottom:12px}.lab-history{margin-top:24px}.lab-history .lab-card-head{padding:16px 22px}.lab-history-list{display:flex;gap:10px;flex-wrap:wrap;padding:16px 22px}.lab-history-item{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px 16px;background:var(--lab-bg);border:1px solid var(--lab-line);color:var(--lab-text);border-radius:9px;min-width:155px}.lab-history-item:hover{border-color:var(--lab-accent)}.lab-history-item small{font-size:.875rem}.lab-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1600px){.lab-upload{min-height:310px}.lab-empty{min-height:460px}}@media(max-width:1100px){.lab-grid{grid-template-columns:1fr}.lab-empty{min-height:260px}.lab-upload{min-height:200px}}@media(max-width:480px){.lab-card-body,.lab-card-head{padding:16px}.lab-fields{grid-template-columns:1fr}.lab-metrics{grid-template-columns:1fr}.lab-metrics div{display:flex;justify-content:space-between;gap:10px}.lab-steps{gap:12px}.lab-actions>*{flex:1}.lab-placeholders{gap:6px}.lab-file b{max-width:190px}.lab-levels{gap:12px}.lab-history-item{width:100%}}

/* LUXE / AI — luminous glass, orbital geometry and state-driven motion. */
.lab{--lab-bg:#0b0b1b;--lab-card:#111124;--lab-soft:#1b1935;--lab-line:#35304f;--lab-text:#f4f0ff;--lab-muted:#b4afca;--lab-accent:#c5afff;--lab-green:#80ebd4;--lab-red:#ffa6c1;position:relative;isolation:isolate;padding:30px;border:1px solid #9f86e526;border-radius:30px;background:linear-gradient(135deg,#17152acf,#0b0c1bec 55%,#111828db);box-shadow:0 28px 90px #0004;overflow:hidden;min-width:0}
.light .lab{--lab-bg:#f5f4ff;--lab-card:#ffffff;--lab-soft:#eeebff;--lab-line:#d4cbea;--lab-text:#282040;--lab-muted:#655b7d;--lab-accent:#6842a7;--lab-green:#126956;--lab-red:#a82c51;background:linear-gradient(130deg,#f4efffff,#fdfcffed 60%,#eefbfffa);border-color:#c8b4e6;box-shadow:0 24px 80px #46397c18}
body:has(.lab){background:#070910}body:has(.lab)::before{background:radial-gradient(ellipse at 80% 20%,#42257130,transparent 55%),radial-gradient(ellipse at 10% 90%,#12596c26,transparent 55%)}.light body:has(.lab){background:#eceaf5}.main:has(.lab){max-width:1660px;padding:24px}.side:has(~ .main .lab),body:has(.lab) .side{background:#0b0d17;border-color:#25243b}body:has(.lab) .side-nav button.active{background:linear-gradient(100deg,#a68afb20,#5de1ed10);color:#cdbbff;box-shadow:inset 3px 0 #bda3ff}.light body:has(.lab) .side{background:#f8f6ff;border-color:#d8d0e5}.light body:has(.lab) .side-nav button.active{color:#67439e}
.lab-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;border-radius:inherit}.lab-atmosphere i{position:absolute;display:block;width:620px;height:620px;border-radius:50%;opacity:.7;animation:lab-aurora 16s ease-in-out infinite alternate;background:radial-gradient(circle,#8b54dd2e,transparent 65%);inset-inline-start:-250px;top:30%}.lab-atmosphere i:nth-child(2){width:650px;height:450px;top:-270px;inset-inline-start:auto;inset-inline-end:-80px;animation-delay:-8s;background:radial-gradient(ellipse,#7a76fa40,transparent 68%)}.lab-atmosphere i:nth-child(3){top:auto;bottom:-280px;inset-inline-start:30%;background:radial-gradient(circle,#3cf2dd1a,transparent 66%);animation-duration:23s}.lab-atmosphere::after{content:'';position:absolute;inset:0;opacity:.24;background-image:radial-gradient(circle,#c9c1ff 1px,transparent 1.5px),radial-gradient(circle,#7fdbe9 1px,transparent 1.5px);background-size:173px 191px,271px 233px;background-position:20px 34px,99px 118px;mask-image:linear-gradient(#000,transparent 90%)}
.lab-top{position:relative;margin-bottom:26px;align-items:center;gap:22px;padding:5px 4px 14px}.lab-eyebrow{display:flex;align-items:center;gap:13px;font-family:'IBM Plex Mono',monospace;font-size:.8rem;letter-spacing:.14em;color:#d3c2f7;margin-bottom:14px;direction:ltr;justify-content:flex-end}.lab-brand-star{font-size:1.3rem;color:#ddccff;text-shadow:0 0 18px #bb97ff}.lab-edition{font-size:.72rem;letter-spacing:.08em;padding:3px 8px;border:1px solid #b894ff46;border-radius:5px;background:#a677f510;color:#d5b9ff}.lab h1{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.4;font-weight:700;color:#efe8ff;background:linear-gradient(110deg,#7fd5f2,#dfceff 40%,#fff0cf 85%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 45px #c3a5ff14}.lab-top p{font-size:1.06rem;color:var(--lab-muted);letter-spacing:.01em}.lab-header-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.lab-vision-badge{border-color:#75cbbb30;color:var(--lab-green);background:#58eccb08;border-radius:30px;padding:9px 14px}.lab-vision-badge i{box-shadow:0 0 13px #66ffde99}.lab-motion-btn{display:flex;align-items:center;gap:8px;border:1px solid var(--lab-line);background:#ffffff04;color:var(--lab-muted);padding:9px 12px;border-radius:30px;min-height:42px;font-size:.875rem!important}.lab-motion-btn:hover{border-color:var(--lab-accent);color:var(--lab-text)}
.lab-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px;background:#09091680;border:1px solid #8d76bc2d;border-radius:14px;gap:6px;margin-bottom:25px;overflow:hidden}.lab-step{justify-content:center;padding:9px 12px;position:relative;border-radius:9px;font-size:.94rem}.lab-step b{display:grid;place-items:center;width:25px;height:25px;font-size:.73rem;border:1px solid var(--lab-line);border-radius:50%;color:var(--lab-muted)}.lab-step:first-child{color:#e7dbff;background:linear-gradient(110deg,#a886f22b,#79cfff12);box-shadow:inset 0 1px #d8c1ff23}.lab-step:first-child b{background:#b397ff20;border-color:#ae91f17a;color:#e0d0ff}.lab-steps.has-upload .lab-step:nth-child(2),.lab-steps.has-result .lab-step:nth-child(3){color:var(--lab-text);background:linear-gradient(110deg,#a886f220,#79cfff0b)}
.lab-grid{grid-template-columns:minmax(300px,.94fr) minmax(0,1.06fr);gap:24px;align-items:stretch}.lab-card{position:relative;border:1px solid #8975b840;background:linear-gradient(135deg,#18152ee8,#0f1022f2);border-radius:21px;box-shadow:0 14px 38px #0002,inset 0 1px #ddcfff0d;transition:box-shadow .35s,border-color .35s}.lab-card::before{content:'';position:absolute;inset-block-start:0;inset-inline:12%;height:1px;background:linear-gradient(90deg,transparent,#bca0ffb0,transparent);pointer-events:none}.lab-card:hover{border-color:#a58acb6b;box-shadow:0 14px 44px #0003,0 0 36px #b788ff09}.lab-card-head{padding:21px 24px;border-color:#b99bef1a}.lab-card-body{padding:24px}.lab-card-head h2{font-size:1.22rem}.lab-section-number{color:#a69bb9;font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.06em}.lab-mark{width:43px;height:43px;border-radius:12px;background:linear-gradient(145deg,#ba99ff25,#67c8e618);border:1px solid #bfa2ff4a;box-shadow:inset 0 0 14px #bfa2ff12;color:#d5c0ff}
.lab-upload-shell{position:relative;border-radius:15px;overflow:hidden}.lab-upload{position:relative;min-height:250px;border-color:#8b72be66;border-radius:15px;background:radial-gradient(ellipse at 50% 10%,#a073e613,transparent 70%),#0b0b1c;gap:15px;padding:25px 15px;transition:border-color .3s,background .3s,box-shadow .3s!important}.lab-upload:hover,.lab-upload.drag{border-color:#bfa5ff;background:#16112b;box-shadow:inset 0 0 45px #986bd71c}.lab-upload>svg{box-sizing:content-box;width:31px;height:31px;padding:18px;border:1px solid #bda3ff46;background:linear-gradient(145deg,#ab88ed29,#8eadee0c);border-radius:20px;color:#d5baff;box-shadow:0 0 30px #966ced18;transform:rotate(-6deg);transition:transform .4s}.lab-upload:hover>svg{transform:rotate(0deg) translateY(-4px)}.lab-upload strong{font-size:1.24rem}.lab-upload .lab-badge{font-family:'IBM Plex Mono',monospace;font-size:.72rem;padding:5px 9px;background:#ffffff03;color:#aca4bd;border-color:#a48fc328}.lab-upload.has-image{padding:14px;min-height:250px;background:#070914}.lab-upload img{max-height:320px}.lab-upload-corner{position:absolute;width:22px;height:22px;pointer-events:none;border-color:#c3a1ff99}.corner-a{top:0;right:0;border-top:2px solid;border-right:2px solid;border-radius:0 15px 0 0}.corner-b{bottom:0;left:0;border-bottom:2px solid;border-left:2px solid;border-radius:0 0 0 15px}.lab-scan-beam{position:absolute;left:8px;right:8px;top:0;height:70px;background:linear-gradient(transparent,#83eafa18);border-bottom:1px solid #92fff4;box-shadow:0 7px 26px -10px #7bfff6;pointer-events:none;opacity:0}.is-analyzing .lab-scan-beam{opacity:1;animation:lab-scan 3s ease-in-out infinite alternate}.lab input,.lab select{background:#0d0c1f;border-color:#71608c55;border-radius:10px;transition:border-color .2s,box-shadow .2s}.lab input:focus,.lab select:focus{border-color:#b694f4;box-shadow:0 0 0 3px #a277e615}.lab-fields{margin-top:23px}.lab-label{color:#c4bad5}.lab-tip{border-color:#b69bdf20;color:#a89fba;line-height:1.8}.lab-hint{line-height:1.8}.lab-primary{position:relative;overflow:hidden;border:1px solid #d9c2ff99;background:linear-gradient(105deg,#b695f9,#c3b4fc 43%,#75cde9);color:#16112c;box-shadow:0 8px 30px #9272ff2b,inset 0 1px #ffffff70;font-size:1.06rem!important;min-height:52px;border-radius:12px;transition:box-shadow .3s,transform .3s!important}.lab-primary::after{content:'';position:absolute;inset:-50% auto -50% -75%;width:40%;background:linear-gradient(90deg,transparent,#fff6,transparent);transform:skewX(-20deg);animation:lab-shimmer 7s ease-in-out infinite;pointer-events:none}.lab-primary:not(:disabled):hover{background:linear-gradient(105deg,#c2a4ff,#cdc0ff 43%,#8fe1f9);box-shadow:0 8px 38px #b48fff55;transform:translateY(-2px)}.lab-primary:disabled{opacity:.56}.lab-primary:disabled::after{animation:none;opacity:0}.lab-secondary{background:#a587df08;border-color:#9f83c63d;border-radius:10px}.lab-secondary:hover{background:#a587df18}.lab-file b{color:var(--lab-text)}
.lab-insight-card{background:radial-gradient(ellipse at 50% 25%,#7e4ecb18,transparent 65%),linear-gradient(150deg,#121022,#0e1020)}.lab-insight-card>.lab-card-head .lab-badge{border:0;background:transparent;font-size:.82rem;padding:0}.lab-empty{min-height:568px;padding:16px 27px 25px;gap:13px;justify-content:center;position:relative}.lab-empty h3{font-size:1.45rem;color:var(--lab-text);line-height:1.4}.lab-empty>p{font-size:.94rem;max-width:350px;line-height:1.8}.lab-ready{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#c2b3e0;border:1px solid #b190e73d;background:#a27af30d;border-radius:30px;padding:4px 13px;margin-bottom:3px}.lab-ready i{width:6px;height:6px;background:#bb97ff;border-radius:50%;box-shadow:0 0 12px #b792ff;animation:lab-pulse 3s ease-in-out infinite}.lab-placeholders{margin-top:18px;gap:10px}.lab-placeholders div{position:relative;background:#b38de907;border-color:#b38de922;border-radius:12px;padding:14px 8px;color:#bfb3d3}.lab-placeholders div::before{content:'';width:18px;height:2px;display:block;margin:0 auto 8px;background:linear-gradient(90deg,#b894fa,#6bd8e9);opacity:.8}.lab-placeholders b{font-size:1.05rem;margin:0 0 3px;font-weight:400}.lab-progress{background:#ae85ef20;border-radius:5px;margin-top:10px}.lab-progress::after{background:linear-gradient(90deg,#ac85f5,#79ebed);box-shadow:0 0 12px #b090ff}
.lab-reactor{position:relative;display:grid;place-items:center;width:280px;height:260px;flex:none;perspective:700px;margin:0 auto 2px}.lab-reactor-grid{position:absolute;inset:25px 2px;border:1px solid #b6a1f51a;border-radius:50%;background:repeating-radial-gradient(circle at center,transparent 0 31px,#a695e20c 32px,transparent 33px 63px)}.lab-orbit{position:absolute;border-radius:50%;border:1px solid #9b7ada55;box-shadow:0 0 16px #b187ff09,inset 0 0 16px #b187ff09;pointer-events:none}.lab-orbit::before{content:'';position:absolute;top:50%;left:-3px;width:6px;height:6px;border-radius:50%;background:#b9a1ff;box-shadow:0 0 15px 3px #ad86ff8c}.orbit-one{width:224px;height:224px;border-inline-start:2px solid #8cdeee;border-top:2px solid #b894f2;animation:lab-orbit-spin 18s linear infinite}.orbit-two{width:190px;height:190px;border-bottom:2px solid #d1b0ff;border-inline-end-color:#ceafff;animation:lab-orbit-spin 13s linear infinite reverse}.orbit-two::before{background:#79e4f4;box-shadow:0 0 15px 3px #76d9ed77}.orbit-three{width:260px;height:260px;border-color:#b69ee752;animation:lab-orbit-tilt 16s linear infinite}.orbit-three::before{width:4px;height:4px;background:#fff2d3;box-shadow:0 0 12px #efcfff}.orbit-four{width:260px;height:260px;border-color:#88d9ec42;animation:lab-orbit-cross 21s linear infinite}.orbit-four::before{display:none}.lab-core-halo{position:absolute;width:175px;height:175px;border-radius:50%;background:radial-gradient(circle,#9b6ff242,transparent 68%);animation:lab-breathe 5s ease-in-out infinite}.lab-core{position:relative;width:88px;height:88px;display:grid;place-items:center;isolation:isolate;border-radius:50%;background:radial-gradient(circle at 28% 25%,#fff9ff 0,#d4bcff 13%,#9874de 35%,#695db5 56%,#63b9cc 82%,#191b44 100%);box-shadow:inset -8px -10px 22px #0b113a70,inset 5px 6px 16px #fff3,0 0 28px #bb83ff3b,0 0 70px #7751ba22;animation:lab-core-float 6s ease-in-out infinite}.lab-core::before{content:'';position:absolute;inset:-7px;border-radius:50%;border:1px solid #d4bcff3b;box-shadow:inset 0 0 10px #d7afff14}.lab-core svg{width:32px;height:32px;color:#ffffffcc;stroke-width:1.2;filter:drop-shadow(0 0 8px #fdf0ff77)}.lab-core-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-family:'IBM Plex Mono',monospace;font-size:.66rem;letter-spacing:.35em;color:#9a8eb2}.lab-crosshair{position:absolute;width:10px;height:10px;top:46%;left:7px;border:1px solid #a78bc06b;transform:rotate(45deg);background:#17142b}.crosshair-two{left:auto;right:7px;width:5px;height:5px;top:55%;background:#8fc6d166;border:0}.is-analyzing .orbit-one{animation-duration:5s}.is-analyzing .orbit-two{animation-duration:4s}.is-analyzing .orbit-three{animation-duration:7s}.is-analyzing .lab-core-halo{background:radial-gradient(circle,#91cef95c,transparent 68%);animation-duration:2s}.is-analyzing .lab-core{box-shadow:inset -8px -10px 22px #0b113a70,0 0 42px #bb83ff6b,0 0 80px #58d7f133}.lab-processing{min-height:568px}.lab-processing .lab-reactor{margin-bottom:12px}
.lab-result-head{padding-bottom:16px;border-bottom:1px solid #c39bf31c}.lab-symbol{background:linear-gradient(90deg,#d6b9ff,#93dce9);background-clip:text;-webkit-background-clip:text;color:transparent}.lab-summary{border-inline-start-color:#b797f2;background:linear-gradient(110deg,#ac85df14,#7db9e208);margin-top:16px}.lab-metrics div{background:#9c76c60a;border:1px solid #a588cb20;border-radius:12px}.lab-metrics b{font-size:1.06rem}.lab-level{border-color:#9b7bce20}.lab-detail,.lab-result-footer{border-color:#ac8ee22a}.lab-price{color:var(--lab-text)}.lab-trend{border:1px solid #8db9b233;background:#a587df08}.lab-history{margin-top:20px}.lab-history-item{background:#b391f008;border-color:#9c81b733;border-radius:12px}.lab-history .lab-card-head{border-color:#9d81c72b}.lab-bottomline{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:21px;padding:0 5px;color:#968ca9;font-size:.8rem}.lab-bottomline>span:first-child{font-family:'IBM Plex Mono',monospace;letter-spacing:.1em;font-size:.7rem;direction:ltr}.lab-bottomline b{color:#bba1e0;padding:0 7px;font-weight:400}
@keyframes lab-aurora{to{transform:translate(65px,45px) scale(1.15)}}@keyframes lab-orbit-spin{to{transform:rotate(360deg)}}@keyframes lab-orbit-tilt{from{transform:rotateX(65deg) rotateZ(-25deg)}to{transform:rotateX(65deg) rotateZ(335deg)}}@keyframes lab-orbit-cross{from{transform:rotateY(66deg) rotateZ(32deg)}to{transform:rotateY(66deg) rotateZ(392deg)}}@keyframes lab-breathe{50%{transform:scale(1.2);opacity:.65}}@keyframes lab-core-float{50%{transform:translateY(-7px)}}@keyframes lab-pulse{50%{opacity:.55}}@keyframes lab-shimmer{0%,55%{left:-75%}85%,100%{left:135%}}@keyframes lab-scan{from{top:-70px}to{top:100%}}
.lab.motion-paused *,.lab.motion-paused *::before,.lab.motion-paused *::after{animation-play-state:paused!important}.lab.motion-paused .lab-scan-beam{display:none}
.light .lab-eyebrow,.light .lab-brand-star,.light .lab-edition{color:#67448f;text-shadow:none}.light .lab h1{background-image:linear-gradient(110deg,#26788d,#6540a2 50%,#805c28)}.light .lab-steps{background:#ded7ee59;border-color:#c6b4e16b}.light .lab-step:first-child,.light .lab-step:first-child b{color:#603b97}.light .lab-card,.light .lab-insight-card{background:linear-gradient(150deg,#fff,#f6f3fc);border-color:#c5b1dd80;box-shadow:0 10px 28px #69509009}.light .lab-card-head,.light .lab-tip{border-color:#c9b6de66}.light .lab-mark{color:#694998}.light .lab-upload{background:#f4effb;border-color:#ab91cc90}.light .lab-upload:hover,.light .lab-upload.drag{background:#eee6f8}.light .lab-upload>svg{color:#704aa4}.light .lab-upload .lab-badge,.light .lab-label,.light .lab-tip,.light .lab-ready,.light .lab-placeholders div{color:#68577d}.light .lab input,.light .lab select{background:#faf8ff;border-color:#c4afdd80}.light .lab-core-caption,.light .lab-section-number{color:#78618f}.light .lab-price{color:#322046}.light .lab-symbol{background-image:linear-gradient(90deg,#764bab,#2c798c)}.light .lab-level,.light .lab-detail,.light .lab-result-footer{border-color:#c9b5df6b}.light .lab-bottomline{color:#776389}.light .lab-vision-badge{border-color:#38766544}.light .lab-orbit{border-color:#8a63ba6b}.light .lab-reactor-grid{border-color:#8a63ba26}.light .lab-atmosphere{opacity:.6}
@media(min-width:1500px){.lab{padding:36px}.lab-empty,.lab-processing{min-height:620px}.lab-reactor{width:310px;height:295px}.orbit-one{width:250px;height:250px}.orbit-two{width:212px;height:212px}.orbit-three,.orbit-four{width:286px;height:286px}.lab-core{width:100px;height:100px}.lab-upload{min-height:285px}}
@media(max-width:1190px){.lab{padding:22px}.lab-grid{gap:18px;grid-template-columns:minmax(280px,1fr) minmax(0,1fr)}.lab-card-body,.lab-card-head{padding:19px}.lab-header-actions{gap:8px}.lab-reactor{width:250px;height:245px}.orbit-one{width:210px;height:210px}.orbit-two{width:174px;height:174px}.orbit-three,.orbit-four{width:230px;height:230px}.lab-fields{gap:10px}.lab-empty{padding-inline:19px}.lab-section-number{font-size:.65rem}}
@media(max-width:1000px){.lab-grid{grid-template-columns:1fr}.lab-empty,.lab-processing{min-height:470px}.lab-upload{min-height:220px}.lab-top{gap:16px}.lab-header-actions{width:100%;justify-content:space-between}.lab-card-body{padding:22px}.lab-reactor{width:280px;height:250px}.orbit-one{width:224px;height:224px}.orbit-two{width:190px;height:190px}.orbit-three,.orbit-four{width:250px;height:250px}}
@media(max-width:680px){.main:has(.lab){padding:12px}.lab{padding:17px;border-radius:21px}.lab-top{padding:3px 0 4px;margin-bottom:20px}.lab h1{font-size:1.7rem}.lab-top p{font-size:.98rem}.lab-eyebrow{font-size:.68rem;gap:9px;letter-spacing:.07em}.lab-edition{font-size:.61rem}.lab-steps{gap:2px;margin-bottom:18px}.lab-step{font-size:.8rem;padding:7px 3px;gap:6px}.lab-step b{width:22px;height:22px;font-size:.64rem;flex-shrink:0}.lab-card{border-radius:16px}.lab-card-head{padding:16px}.lab-card-head h2{font-size:1.1rem}.lab-card-body{padding:17px}.lab-vision-badge{font-size:.78rem}.lab-motion-btn{font-size:.78rem!important}.lab-atmosphere i{animation:none;opacity:.45}.lab-reactor{width:250px;height:235px}.orbit-one{width:205px;height:205px}.orbit-two{width:172px;height:172px}.orbit-three,.orbit-four{width:228px;height:228px}.orbit-four{display:none}.lab-core{width:78px;height:78px}.lab-empty{padding:10px 17px 22px;min-height:460px}.lab-empty h3{font-size:1.3rem}.lab-placeholders{gap:7px}.lab-placeholders div{font-size:.8rem}.lab-fields{grid-template-columns:1fr 1fr}.lab-bottomline{justify-content:center;text-align:center}.lab-card{box-shadow:none}.lab-core-halo{animation:none}}
@media(max-width:410px){.lab{padding:13px}.lab-fields{grid-template-columns:1fr}.lab-step{font-size:.72rem}.lab-step b{display:none}.lab-section-number{display:none}.lab-empty{padding-inline:12px}.lab-metrics{grid-template-columns:1fr}.lab-header-actions{gap:7px}.lab-vision-badge{padding:8px 9px}.lab-motion-btn{padding:8px 9px}.lab-levels{grid-template-columns:1fr}.lab h1{font-size:1.48rem}}
@media(prefers-reduced-motion:reduce){.lab *,.lab *::before,.lab *::after{animation:none!important;transition:none!important}.lab-scan-beam{display:none}.orbit-three{transform:rotateX(65deg) rotateZ(-25deg)}.orbit-four{transform:rotateY(66deg) rotateZ(32deg)}}

/* Public lab and global asset picker. */
.lab-home-section{max-width:1560px;margin:30px auto 65px;padding:0 24px;scroll-margin-top:100px}
.lab-market-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:24px 0 12px;color:var(--lab-text);font-size:.94rem}.lab-market-heading b{font-family:'IBM Plex Mono',monospace;letter-spacing:.12em;font-size:.63rem;font-weight:400;color:var(--lab-muted)}
.lab-market-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lab-market-tabs button{min-height:42px;border:1px solid #a183ce36;border-radius:10px;background:linear-gradient(130deg,#a78bd80b,#91cce406);color:var(--lab-muted);font-size:.83rem;padding:8px 5px;box-shadow:inset 0 1px #e0caff08}.lab-market-tabs button:hover{border-color:#c0a0fb88;color:var(--lab-text);background:#b490f515}.lab-market-tabs button.selected{color:#ebdcff;border-color:#bc98ff99;background:linear-gradient(120deg,#a884ef30,#6edbef16);box-shadow:0 0 16px #ab86ef0e,inset 0 1px #dac1ff28}
.lab-input-card .lab-fields{margin-top:17px}.lab-card::before{inset-inline:5%;background:linear-gradient(90deg,transparent,#bda1ff80,#83d5e7a6,#d9bafa80,transparent)}.lab-insight-card{box-shadow:0 16px 42px #0003,inset 0 0 55px #8c68d006}.lab-header-actions::after{content:'✧';color:#d7bffc;font-size:2rem;text-shadow:0 0 22px #bd93f67a;padding-inline:8px}.lab-home-section .lab{box-shadow:0 35px 100px #0003,0 0 60px #8964bc09}.lab-home-section .lab h1{font-size:clamp(1.6rem,3vw,2.65rem)}
.light .lab-market-tabs button{border-color:#bc9bda66;color:#6c5586}.light .lab-market-tabs button.selected{color:#593380;background:linear-gradient(120deg,#b699e636,#7fcfdf20);border-color:#9b70cb}.light .lab-header-actions::after{color:#8d63bd}
@media(max-width:680px){.lab-home-section{padding:0 12px;margin:20px auto 40px}.lab-market-tabs{gap:6px}.lab-market-tabs button{font-size:.79rem}.lab-market-heading b{font-size:.58rem}.lab-header-actions::after{display:none}}

/* Compact workspace: size against the available panel, including the member sidebar. */
.main:has(.lab){max-width:1240px;padding:18px 22px;margin-inline:auto}
.lab-home-section{max-width:1240px;padding-inline:22px;margin:24px auto 40px}
.lab{container-type:inline-size;padding:20px;border-radius:22px;width:100%}
.lab-top{gap:12px;padding:0;margin-bottom:15px}.lab-eyebrow{margin-bottom:5px;font-size:.72rem;gap:10px}.lab h1,.lab-home-section .lab h1{font-size:clamp(1.5rem,2.2vw,1.95rem);margin-bottom:3px}.lab-top p{font-size:1rem}.lab-header-actions::after{display:none}.lab-vision-badge{padding:6px 10px;font-size:.875rem}
.lab-steps{margin-bottom:16px;padding:4px;gap:4px}.lab-step{padding:5px 8px;font-size:.875rem}.lab-step b{width:22px;height:22px}
.lab-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.lab-card{border-radius:16px}.lab-card-head{padding:13px 16px;gap:8px}.lab-card-head h2{font-size:1.06rem}.lab-mark{width:34px;height:34px;border-radius:10px}.lab-mark svg{width:20px;height:20px}.lab-card-body{padding:16px}
.lab-upload,.lab-upload.has-image{min-height:155px;padding:14px;gap:8px}.lab-upload img{max-height:190px}.lab-upload>svg{width:24px;height:24px;padding:10px;border-radius:13px}.lab-upload strong{font-size:1rem}.lab-upload small{font-size:.875rem}.lab-file{padding-top:8px}.lab-file b{max-width:230px}.lab-icon-btn{padding:6px}
.lab-market-heading{margin:15px 0 8px}.lab-market-tabs{gap:6px}.lab-market-tabs button{min-height:36px;padding:5px;font-size:.875rem}.lab-input-card .lab-fields,.lab-fields{margin:12px 0 6px;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lab-label{margin-bottom:4px;font-size:.875rem}.lab input,.lab select{padding:8px 10px;min-height:42px}.lab-hint{font-size:.875rem;line-height:1.5;margin-top:6px}.lab-submit{margin-top:12px}.lab-primary{min-height:44px;font-size:1rem!important;padding:8px 14px}.lab-tip{margin-top:12px;padding-top:10px;font-size:.875rem;line-height:1.5}
.lab-empty,.lab-processing{min-height:0;padding:18px 16px 20px;gap:10px}.lab-empty h3{font-size:1.2rem}.lab-empty>p{font-size:.94rem;line-height:1.6;max-width:320px}.lab-reactor{width:220px;height:210px;margin:0 auto}.lab-reactor-grid{inset:17px 2px}.orbit-one{width:180px;height:180px}.orbit-two{width:150px;height:150px}.orbit-three,.orbit-four{width:204px;height:204px}.lab-core{width:70px;height:70px}.lab-core svg{width:26px;height:26px}.lab-core-halo{width:145px;height:145px}.lab-placeholders{margin-top:10px;gap:8px}.lab-placeholders div{padding:10px 6px;font-size:.875rem}.lab-ready{font-size:.875rem}.lab-bottomline{margin-top:12px}.lab-history{margin-top:14px}.lab-history .lab-card-head{padding:12px 16px}.lab-history-list{padding:12px 16px;gap:8px}.lab-history-item{min-width:135px;padding:9px 12px}
.lab-result-head{margin-bottom:10px;padding-bottom:10px;gap:8px}.lab-symbol{font-size:1.12rem}.lab-summary{padding:12px;margin:10px 0 12px;line-height:1.6}.lab-metrics{margin-bottom:14px;gap:6px}.lab-metrics div{padding:9px 6px}.lab-metrics b{font-size:.94rem}.lab-level{padding:6px 0}.lab-levels{gap:12px}.lab-detail{margin-top:14px;padding-top:12px}.lab-notes{margin-top:6px;line-height:1.6}.lab-notes li{padding:3px 0}.lab-result-footer{margin-top:14px;padding-top:12px}.lab-result-footer p{line-height:1.5}.lab-actions{gap:8px}.lab-actions .lab-secondary{padding:8px 12px;font-size:.875rem;min-height:40px}
@container(max-width:760px){.lab-grid{grid-template-columns:1fr}.lab-header-actions{width:auto}.lab-upload,.lab-upload.has-image{min-height:145px}.lab-empty,.lab-processing{padding-block:14px}.lab-reactor{width:190px;height:178px}.orbit-one{width:152px;height:152px}.orbit-two{width:126px;height:126px}.orbit-three,.orbit-four{width:174px;height:174px}.lab-core{width:60px;height:60px}.lab-core-halo{width:125px;height:125px}.lab-empty>p{max-width:420px}.lab-fields{grid-template-columns:1fr 1fr}.lab-market-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container(max-width:420px){.lab-fields,.lab-input-card .lab-fields{grid-template-columns:1fr}.lab-top{align-items:start}.lab-header-actions{width:100%}.lab-vision-badge{font-size:.875rem}.lab-section-number,.lab-market-heading b{display:none}.lab-market-tabs button{font-size:.875rem}.lab-step{font-size:.875rem;padding:5px 3px}.lab-step b{display:none}.lab-card-head,.lab-card-body{padding:12px}.lab-metrics{grid-template-columns:1fr}.lab-metrics div{display:flex;justify-content:space-between;gap:8px}.lab-levels{grid-template-columns:1fr}.lab-file b{max-width:180px}.lab-bottomline{justify-content:center}.lab-history-item{width:100%}}
@media(max-width:680px){.main:has(.lab){padding:10px}.lab-home-section{padding-inline:10px;margin-block:18px 28px}.lab{padding:12px;border-radius:18px}.lab h1,.lab-home-section .lab h1{font-size:1.5rem}.lab-top p{font-size:.94rem}.lab-eyebrow{font-size:.68rem}.lab-grid{grid-template-columns:1fr}.lab-header-actions{gap:6px}.lab-steps{margin-bottom:12px}.lab-top{margin-bottom:12px}}
@media(min-width:1001px) and (max-height:800px){.lab-reactor{height:185px}.lab-upload,.lab-upload.has-image{min-height:135px}.lab-upload img{max-height:160px}.lab-upload>svg{padding:7px}.lab-top{margin-bottom:11px}.lab-steps{margin-bottom:12px}}

/* Daily allowance, scoped to the lab only. */
.lab-quota{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 14px;margin:14px 0 0;border:1px solid var(--lab-line);border-radius:11px;background:linear-gradient(110deg,#b799e114,#79c8d509);font-size:14px}.lab-quota b{color:var(--lab-text);font-size:15px}.lab-quota small{font-size:12px;display:block;margin-top:2px}.lab-quota-count{font-family:'IBM Plex Mono',monospace;color:var(--lab-accent);font-size:18px;direction:ltr}.lab-quota .quota-dots{display:flex;flex-wrap:wrap;max-width:140px;gap:4px;margin-top:6px;direction:ltr}.quota-dots i{width:14px;height:4px;border-radius:3px;background:var(--lab-line)}.quota-dots i.used{background:var(--lab-accent)}.lab-quota.exhausted{border-color:var(--lab-red)}.plan-lab-benefit{color:#d5b6ff}
