*{box-sizing:border-box}html{font-size:14px}body{color:#172033;-webkit-font-smoothing:antialiased;background:#f6f8fb;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.app{min-height:100vh;display:flex}aside{z-index:20;color:#fff;background:#111827;width:230px;padding:22px 14px;position:fixed;top:0;bottom:0;overflow-y:auto}aside h2{letter-spacing:-.2px;margin:0 10px 25px;font-size:18px;font-weight:700}aside button{color:#cbd5e1;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;margin:2px 0;padding:11px 14px;font-size:13px;transition:background .15s,color .15s;display:block}aside button:hover,aside button.active{color:#fff;background:#263246}main{width:calc(100% - 230px);min-width:0;margin-left:230px}header{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;height:74px;padding:0 30px;display:flex}header small{color:#6b7280;margin-top:4px;display:block}.online{color:#16a34a}section{padding:30px}.error{color:#991b1b;background:#fee2e2;border-radius:8px;margin:20px 30px;padding:12px}.cards{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:25px;display:grid}.card,.panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;box-shadow:0 1px 2px #00000008}.card small{color:#6b7280}.card strong{margin-top:12px;font-size:28px;display:block}.row{border-bottom:1px solid #eee;grid-template-columns:2fr 1fr 1fr;padding:15px 0;display:grid}.toolbar{justify-content:flex-end;margin-bottom:18px;display:flex}.primary{cursor:pointer;border-radius:7px;padding:10px 16px;font-weight:600;color:#fff!important;background:#2563eb!important;border:0!important}.primary:hover{background:#1d4ed8!important}.primary:disabled{opacity:.55;cursor:not-allowed}.grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.clickable,.connector{cursor:pointer}.connector{border:1px solid #e5e7eb;border-radius:9px;padding:18px}.connector small{color:#6b7280;margin-top:5px;display:block}.hero{margin-bottom:18px}.tabs{background:#fff;border-bottom:1px solid #e5e7eb;padding:0 15px}.tabs button{cursor:pointer;background:0 0;border:0;padding:15px 18px}.tabs .tabactive{color:#2563eb;border-bottom:2px solid #2563eb}.field{margin:14px 0}.field label{margin-bottom:6px;font-weight:600;display:block}input,select{background:#fff;border:1px solid #cbd5e1;border-radius:7px;width:100%;padding:10px}button{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:7px;margin:6px;padding:9px 13px}button:hover{background:#f8fafc}.empty{color:#64748b;text-align:center;padding:70px}.odq-lg{--lg-primary:#6c47f0;--lg-primary-2:#8f6bff;--lg-ink:#181436;--lg-muted:#5f6682;--lg-border:#dcdff0;--lg-ease:cubic-bezier(.2, .8, .2, 1);width:100%;min-height:100vh;color:var(--lg-ink);-webkit-font-smoothing:antialiased;background:#f7f7fc;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;display:grid;position:relative}.odq-lg *,.odq-lg :before,.odq-lg :after{box-sizing:border-box}@media (width>=901px){.odq-lg{z-index:1;width:auto;min-height:0;position:fixed;inset:0;overflow:hidden}}.odq-lg button,.odq-lg input{font:inherit;margin:0}.odq-lg h1,.odq-lg h2,.odq-lg p,.odq-lg ul{margin:0;padding:0}.odq-lg ul{list-style:none}@keyframes odq-lg-rise{0%{opacity:0;transform:translateY(16px)}}@keyframes odq-lg-line{0%{transform:translateY(110%)}}@keyframes odq-lg-float{0%,to{transform:translateY(0)}50%{transform:translateY(-.8em)}}@keyframes odq-lg-gradient{0%,to{background-position:0%}50%{background-position:100%}}@keyframes odq-lg-orb{0%,to{transform:translate(0)scale(1)}33%{transform:translate(6%,-8%)scale(1.12)}66%{transform:translate(-7%,6%)scale(.94)}}@keyframes odq-lg-grid{to{background-position:48px 48px,48px 48px}}@keyframes odq-lg-spin-ring{to{transform:translateY(-50%)rotate(360deg)}}@keyframes odq-lg-twinkle{0%,to{opacity:.15;transform:translateY(0)scale(1)}50%{opacity:.85;transform:translateY(-18px)scale(1.4)}}@keyframes odq-lg-draw{0%{stroke-dashoffset:1px}}@keyframes odq-lg-fade{0%{opacity:0}}@keyframes odq-lg-grow{0%{transform:scaleX(0)}}@keyframes odq-lg-fill{0%{stroke-dasharray:0 100}}@keyframes odq-lg-pop{0%{opacity:0;transform:scale(0)}}@keyframes odq-lg-pulse{0%{box-shadow:0 0 #8df0c48c}to{box-shadow:0 0 0 10px #8df0c400}}@keyframes odq-lg-pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}@keyframes odq-lg-shine{0%{transform:translate(-120%)skew(-20deg)}to{transform:translate(260%)skew(-20deg)}}@keyframes odq-lg-shake{0%,to{transform:translate(0)}18%{transform:translate(-7px)}36%{transform:translate(6px)}54%{transform:translate(-4px)}72%{transform:translate(3px)}}@keyframes odq-lg-spin{to{transform:rotate(360deg)}}@keyframes odq-lg-glow{0%,to{box-shadow:0 8px 22px #6c47f047}50%{box-shadow:0 8px 34px #6c47f080}}.odq-lg .odq-lg-reveal{animation:odq-lg-rise .7s var(--lg-ease) both;animation-delay:var(--d,0s)}.odq-lg .odq-lg-logo{align-items:center;gap:14px;display:flex}.odq-lg .odq-lg-logo-mark{width:clamp(46px,6.6vh,58px);height:clamp(46px,6.6vh,58px);animation:odq-lg-pop .7s var(--lg-ease) both;background:#fff;border:1px solid #ebe7fb;border-radius:16px;flex:none;place-items:center;display:grid;box-shadow:0 8px 22px #6c47f029}.odq-lg .odq-lg-logo-mark svg{width:74%;height:74%}.odq-lg .odq-lg-logo-text{flex-direction:column;gap:3px;display:flex}.odq-lg .odq-lg-logo-name{letter-spacing:-1px;font-size:clamp(26px,4.4vh,34px);font-weight:750;line-height:1}.odq-lg .odq-lg-logo-sub{color:var(--lg-muted);letter-spacing:2px;font-size:clamp(9.5px,1.4vh,11.5px);font-weight:600}.odq-lg .odq-lg-logo.is-light .odq-lg-logo-name{color:#fff}.odq-lg .odq-lg-logo.is-light .odq-lg-logo-sub{color:#cfc4ff}.odq-lg .odq-lg-logo.is-light .odq-lg-logo-mark{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff24;border:1px solid #ffffff47;box-shadow:0 8px 24px #12064647}.odq-lg .odq-lg-brand{isolation:isolate;color:#fff;background:linear-gradient(135deg,#24106b 0%,#4426bd 48%,#6c47f0 100%) 0 0/200% 200%;grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;min-height:0;padding:clamp(28px,6vh,64px) clamp(28px,5vw,84px);animation:18s ease-in-out infinite odq-lg-gradient;display:grid;position:relative;overflow:hidden}.odq-lg .odq-lg-bg{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.odq-lg .odq-lg-orb{filter:blur(60px);border-radius:50%;animation:16s ease-in-out infinite odq-lg-orb;position:absolute}.odq-lg .odq-lg-orb--a{background:#a080ff80;width:46vmin;height:46vmin;top:-14%;right:-10%}.odq-lg .odq-lg-orb--b{background:#4628c899;width:54vmin;height:54vmin;animation-duration:21s;animation-direction:reverse;bottom:-18%;left:-12%}.odq-lg .odq-lg-orb--c{background:#5ad2dc33;width:28vmin;height:28vmin;animation-duration:25s;top:38%;left:36%}.odq-lg .odq-lg-grid{background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px);background-size:48px 48px;animation:14s linear infinite odq-lg-grid;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 55% 55%,#000 10%,#0000 72%);mask-image:radial-gradient(at 55% 55%,#000 10%,#0000 72%)}.odq-lg .odq-lg-ring{border:1px dashed #fff3;border-radius:50%;width:52vmin;height:52vmin;animation:60s linear infinite odq-lg-spin-ring;position:absolute;top:50%;right:-16vmin;transform:translateY(-50%)}.odq-lg .odq-lg-particle{opacity:.2;background:#fff;border-radius:50%;animation:9s ease-in-out infinite odq-lg-twinkle;position:absolute}.odq-lg .odq-lg-copy{margin-top:clamp(18px,4vh,44px)}.odq-lg .odq-lg-chipline{color:#e7e0ff;letter-spacing:.2px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #fff3;border-radius:99px;align-items:center;gap:9px;margin-bottom:clamp(10px,2vh,20px);padding:6px 14px 6px 10px;font-size:12px;font-weight:600;display:inline-flex}.odq-lg .odq-lg-chipline i{background:#5ff0b0;border-radius:50%;width:8px;height:8px;animation:1.8s ease-out infinite odq-lg-pulse}.odq-lg .odq-lg-copy h1{letter-spacing:-1.2px;font-size:clamp(30px,min(3.1vw,5.4vh),52px);font-weight:750;line-height:1.12}.odq-lg .odq-lg-line{padding-bottom:.06em;display:block;overflow:hidden}.odq-lg .odq-lg-line>span{animation:odq-lg-line .9s var(--lg-ease) both;animation-delay:var(--d,0s);display:inline-block}.odq-lg .odq-lg-grad{background:linear-gradient(90deg,#fff 0%,#cdbdff 35%,#9be8ff 60%,#fff 100%) 0 0/220% 100%;-webkit-text-fill-color:transparent;animation:odq-lg-line .9s var(--lg-ease) both, odq-lg-gradient 7s ease-in-out 1.2s infinite;animation-delay:var(--d,0s), 1.2s;-webkit-background-clip:text;background-clip:text}.odq-lg .odq-lg-copy p{color:#e3dcff;max-width:500px;margin-top:clamp(10px,2vh,20px);font-size:clamp(13px,1.95vh,16.5px);line-height:1.65}.odq-lg .odq-lg-visual{place-items:center;height:100%;min-height:0;margin:clamp(8px,2vh,24px) 0;display:grid;container-type:size}.odq-lg .odq-lg-stage{width:56em;height:36em;font-size:calc(min(100cqw,155cqh)/56);position:relative}.odq-lg .odq-lg-chip{z-index:3;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:5.6em;height:5.6em;animation:odq-lg-rise .8s .9s var(--lg-ease) both, odq-lg-float 7s ease-in-out 1.7s infinite;background:#ffffff29;border:1px solid #ffffff47;border-radius:1.6em;place-items:center;display:grid;position:absolute;top:0;left:-1%;box-shadow:0 1.2em 2.6em #12064659}.odq-lg .odq-lg-panel{-webkit-backdrop-filter:blur(16px);width:66%;animation:odq-lg-rise .9s .35s var(--lg-ease) both, odq-lg-float 9s ease-in-out 1.5s infinite;background:linear-gradient(160deg,#fff3,#ffffff12);border:1px solid #ffffff3d;border-radius:2em;padding:2em;position:absolute;top:6%;left:0;box-shadow:0 3em 6em #12064666,inset 0 1px #ffffff47}.odq-lg .odq-lg-panel-head{color:#ffffffc7;letter-spacing:.12em;justify-content:space-between;align-items:center;gap:1em;font-size:1.25em;font-weight:700;display:flex}.odq-lg .odq-lg-trend{color:#78f2bb;letter-spacing:.02em;background:#3cdc962e;border-radius:99em;align-items:center;gap:.4em;padding:.3em .9em;display:inline-flex}.odq-lg .odq-lg-score{letter-spacing:-.03em;font-variant-numeric:tabular-nums;align-items:baseline;gap:.15em;margin:.45em 0 .2em;font-size:5em;font-weight:750;line-height:1;display:flex}.odq-lg .odq-lg-score span{opacity:.8;font-size:.45em}.odq-lg .odq-lg-chart{width:100%;height:auto;display:block;overflow:visible}.odq-lg .odq-lg-linepath{stroke-dasharray:1;animation:odq-lg-draw 2s .9s var(--lg-ease) both}.odq-lg .odq-lg-area{animation:1.2s 1.8s both odq-lg-fade}.odq-lg .odq-lg-dot{transform-box:fill-box;transform-origin:50%;animation:odq-lg-pop .5s 2.7s var(--lg-ease) both, odq-lg-pulse-dot 2s ease-in-out 3.2s infinite}.odq-lg .odq-lg-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4em;margin-top:1.3em;display:grid}.odq-lg .odq-lg-metrics>div{flex-direction:column;gap:.3em;display:flex}.odq-lg .odq-lg-metrics span{color:#ffffffb3;font-size:1.15em}.odq-lg .odq-lg-metrics strong{font-size:1.6em;font-weight:700}.odq-lg .odq-lg-bar{background:#ffffff29;border-radius:99em;height:.55em;margin-top:.3em;overflow:hidden}.odq-lg .odq-lg-bar i{width:var(--w,100%);border-radius:inherit;transform-origin:0;height:100%;animation:odq-lg-grow 1.4s var(--lg-ease) both;animation-delay:var(--d,1s);background:linear-gradient(90deg,#8df0c4,#4fd1a5);display:block}.odq-lg .odq-lg-donut-card{color:#26224a;width:23em;animation:odq-lg-rise .9s .8s var(--lg-ease) both, odq-lg-float 8s ease-in-out 1.9s infinite reverse;background:#fffffff5;border-radius:1.8em;align-items:center;gap:1.4em;padding:1.6em;display:flex;position:absolute;top:20%;right:0;box-shadow:0 2em 4.4em #12064661}.odq-lg .odq-lg-donut-card svg{flex:0 0 8em;width:8em;height:8em;transform:rotate(-90deg)}.odq-lg .odq-lg-donut-track,.odq-lg .odq-lg-donut-fill{fill:none;stroke-width:4px}.odq-lg .odq-lg-donut-track{stroke:#ece8fb}.odq-lg .odq-lg-donut-fill{stroke:#6c47f0;stroke-dasharray:98 100;stroke-linecap:round;animation:odq-lg-fill 1.8s 1.2s var(--lg-ease) both}.odq-lg .odq-lg-donut-copy{flex-direction:column;gap:.2em;min-width:0;display:flex}.odq-lg .odq-lg-donut-copy strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2.4em;line-height:1}.odq-lg .odq-lg-donut-copy span{color:#7a7699;font-size:1.2em}.odq-lg .odq-lg-toast{z-index:4;color:#26224a;white-space:nowrap;background:#fff;border-radius:1.3em;align-items:center;gap:1em;min-width:20em;padding:1em 1.6em 1em 1.3em;display:flex;position:absolute}.odq-lg .odq-lg-toast>span{border-radius:50%;flex:0 0 2.8em;place-items:center;width:2.8em;height:2.8em;padding:.75em;display:grid}.odq-lg .odq-lg-toast--ok{animation:odq-lg-rise .8s 1.2s var(--lg-ease) both, odq-lg-float 6.5s ease-in-out 2s infinite;top:0;right:0;box-shadow:inset .35em 0 #2fb67a,0 1.6em 3.6em #12064657}.odq-lg .odq-lg-toast--ok>span{color:#fff;background:#2fb67a}.odq-lg .odq-lg-toast div{flex-direction:column;gap:.1em;line-height:1.25;display:flex}.odq-lg .odq-lg-toast strong{font-size:1.3em;font-weight:700}.odq-lg .odq-lg-toast em{color:#8b87a6;font-size:1.1em;font-style:normal}@keyframes odq-lg-pulse-amber{0%{box-shadow:0 0 #f5a52473}to{box-shadow:0 0 0 .9em #f5a52400}}.odq-lg .odq-lg-quar{z-index:4;color:#fff;-webkit-backdrop-filter:blur(14px);width:21em;animation:odq-lg-rise .8s 1.5s var(--lg-ease) both, odq-lg-float 7.5s ease-in-out 2.4s infinite reverse;background:linear-gradient(160deg,#301880d1,#1c0c56e6);border:1px solid #ffbe5061;border-radius:1.6em;padding:1.4em;position:absolute;bottom:0;right:0;box-shadow:0 1.8em 4em #0e043c80,0 0 3em #f5a52424,inset 0 1px #ffffff29}.odq-lg .odq-lg-quar-head{align-items:center;gap:1em;display:flex}.odq-lg .odq-lg-quar-icon{color:#4a2a00;background:linear-gradient(145deg,#ffc860,#f08a1c);border-radius:1em;flex:0 0 3.2em;place-items:center;width:3.2em;height:3.2em;padding:.8em;animation:2.2s ease-out infinite odq-lg-pulse-amber;display:grid}.odq-lg .odq-lg-quar-head div{flex-direction:column;gap:.15em;min-width:0;line-height:1.2;display:flex}.odq-lg .odq-lg-quar-head strong{font-size:1.4em;font-weight:700}.odq-lg .odq-lg-quar-head em{color:#ffffff9e;text-overflow:ellipsis;white-space:nowrap;font-size:1.1em;font-style:normal;overflow:hidden}.odq-lg .odq-lg-quar-count{color:#ffc760;background:#f5a5242e;border:1px solid #f5a52466;border-radius:.7em;flex:none;place-items:center;width:2.2em;height:2.2em;margin-left:auto;font-size:1.5em;font-weight:800;display:grid}.odq-lg .odq-lg-quar-rows{flex-direction:column;gap:.5em;margin:1.2em 0 1.1em;display:flex}.odq-lg .odq-lg-quar-rows p{background:#ffffff14;border:1px solid #0000;border-radius:.9em;grid-template-columns:1.2fr 1fr .8fr;align-items:center;gap:1em;padding:.75em 1em;display:grid}.odq-lg .odq-lg-quar-rows i{background:#ffffff4d;border-radius:99em;height:.5em;display:block}.odq-lg .odq-lg-quar-rows i:first-child{width:92%}.odq-lg .odq-lg-quar-rows i:nth-child(2){width:70%}.odq-lg .odq-lg-quar-rows i:nth-child(3){width:55%}.odq-lg .odq-lg-quar-rows p.is-bad{background:#f5a5242e;border-color:#f5a52480;grid-template-columns:1.2fr 1fr .8fr auto;animation:6s ease-in-out 3s infinite odq-lg-quarantine}.odq-lg .odq-lg-quar-rows p.is-bad i{background:#ffd282d9}.odq-lg .odq-lg-quar-rows b{color:#3a2300;background:#ffbf47;border-radius:50%;place-items:center;width:1.7em;height:1.7em;font-size:1em;font-weight:800;display:grid}.odq-lg .odq-lg-quar-foot{color:#ffffffc7;align-items:center;gap:.8em;font-size:1.15em;display:flex}.odq-lg .odq-lg-quar-foot time{color:#ffffff7a;margin-left:auto;font-size:.95em}.odq-lg .odq-lg-quar-dot{background:#ffbf47;border-radius:50%;flex:0 0 .7em;width:.7em;height:.7em;animation:1.6s ease-in-out infinite odq-lg-pulse-dot}@keyframes odq-lg-quarantine{0%,30%{opacity:1;transform:translate(0)}48%{opacity:0;transform:translate(28%)}49%{opacity:0;transform:translate(-28%)}68%,to{opacity:1;transform:translate(0)}}.odq-lg .odq-lg-features{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.odq-lg .odq-lg-features li{border-right:1px solid #ffffff38;align-items:center;gap:12px;min-width:0;padding:0 clamp(10px,1.4vw,22px);font-size:clamp(12px,1.85vh,14.5px);line-height:1.45;display:flex}.odq-lg .odq-lg-features li:first-child{padding-left:0}.odq-lg .odq-lg-features li:last-child{border-right:0;padding-right:0}.odq-lg .odq-lg-disc{background:#ffffff1f;border:1px solid #ffffff2e;border-radius:50%;flex:none;place-items:center;width:clamp(38px,5.6vh,50px);height:clamp(38px,5.6vh,50px);transition:transform .22s,background .22s;display:grid}.odq-lg .odq-lg-features li:hover .odq-lg-disc{background:#ffffff38;transform:translateY(-3px)scale(1.06)}.odq-lg .odq-lg-formside{isolation:isolate;background:linear-gradient(160deg,#fbfaff 0%,#f1eefc 100%);min-width:0;min-height:0;padding:clamp(28px,6vh,64px) clamp(24px,5vw,72px);display:flex;position:relative;overflow:hidden auto}.odq-lg .odq-lg-blob{z-index:-1;filter:blur(50px);pointer-events:none;border-radius:50%;animation:20s ease-in-out infinite odq-lg-orb;position:absolute}.odq-lg .odq-lg-blob--a{background:#9678ff47;width:36vmin;height:36vmin;top:-8%;right:-6%}.odq-lg .odq-lg-blob--b{background:#6ec8ff33;width:40vmin;height:40vmin;animation-duration:26s;animation-direction:reverse;bottom:-10%;left:-8%}.odq-lg .odq-lg-card{-webkit-backdrop-filter:blur(14px);width:100%;max-width:470px;animation:odq-lg-rise .8s var(--lg-ease) both;background:#ffffffd1;border:1px solid #ffffffe6;border-radius:26px;flex-direction:column;align-items:center;margin:auto;padding:clamp(26px,4.4vh,44px) clamp(24px,3.4vw,42px);display:flex;position:relative;box-shadow:0 30px 70px #3420801f,0 4px 14px #3420800f}.odq-lg .odq-lg-card:before{content:"";background:linear-gradient(90deg, transparent, var(--lg-primary), var(--lg-primary-2), transparent);border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:12%;right:12%}.odq-lg .odq-lg-card h2{letter-spacing:-.9px;text-align:center;margin-top:clamp(18px,3.6vh,34px);font-size:clamp(27px,4.4vh,36px);font-weight:750}.odq-lg .odq-lg-subtitle{color:var(--lg-muted);text-align:center;margin:8px 0 clamp(20px,3.8vh,34px);font-size:clamp(14px,2vh,16px)}.odq-lg .odq-lg-form{flex-direction:column;gap:clamp(12px,2vh,18px);width:100%;display:flex}.odq-lg .odq-lg-field{color:#7a80a0;border:1px solid var(--lg-border);background:#fff;border-radius:12px;align-items:center;gap:13px;width:100%;height:clamp(48px,6.8vh,56px);padding:0 12px 0 16px;transition:border-color .18s,box-shadow .18s,transform .18s,color .18s;display:flex}.odq-lg .odq-lg-field:hover{border-color:#c4c0e8}.odq-lg .odq-lg-field:focus-within{color:var(--lg-primary);border-color:var(--lg-primary);transform:translateY(-1px);box-shadow:0 0 0 4px #6c47f021}.odq-lg .odq-lg-field>svg{flex:none}.odq-lg .odq-lg-field input{width:auto;min-width:0;height:100%;color:var(--lg-ink);box-shadow:none;background:0 0;border:0;border-radius:0;outline:0;flex:1;padding:0;font-size:15px}.odq-lg .odq-lg-field input::placeholder{color:#8a8fab;opacity:1}.odq-lg .odq-lg-eye{color:#7a80a0;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:0 0 36px;place-items:center;width:36px;height:36px;padding:0;transition:color .16s,background .16s;display:grid}.odq-lg .odq-lg-eye:hover{color:var(--lg-primary);background:#f1edff}.odq-lg .odq-lg-eye:focus-visible{outline:2px solid var(--lg-primary)}.odq-lg .odq-lg-row{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.odq-lg .odq-lg-check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex;position:relative}.odq-lg .odq-lg-check input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.odq-lg .odq-lg-checkbox{color:#0000;border:1.5px solid var(--lg-border);background:#fff;border-radius:7px;flex:0 0 22px;place-items:center;width:22px;height:22px;transition:all .16s;display:grid}.odq-lg .odq-lg-checkbox svg{transition:transform .2s var(--lg-ease);transform:scale(.4)}.odq-lg .odq-lg-check input:checked+.odq-lg-checkbox{color:#fff;background:var(--lg-primary);border-color:var(--lg-primary)}.odq-lg .odq-lg-check input:checked+.odq-lg-checkbox svg{transform:scale(1)}.odq-lg .odq-lg-check input:focus-visible+.odq-lg-checkbox{outline-offset:2px;outline:3px solid #6c47f059}.odq-lg .odq-lg-link{color:var(--lg-primary);font-weight:600;text-decoration:none;position:relative}.odq-lg .odq-lg-link:after{content:"";transform-origin:0;height:1.5px;transition:transform .22s var(--lg-ease);background:currentColor;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.odq-lg .odq-lg-link:hover:after{transform:scaleX(1)}.odq-lg .odq-lg-error{color:#b42336;overflow-wrap:anywhere;background:#fff4f5;border:1px solid #f3c9d0;border-radius:10px;padding:12px 14px;font-size:14px;line-height:1.55;animation:.5s both odq-lg-shake}.odq-lg .odq-lg-submit{color:#fff;cursor:pointer;background:linear-gradient(105deg,#6944f5,#9252ff,#6944f5) 0 0/200% 100%;border:0;border-radius:12px;justify-content:center;align-items:center;gap:12px;width:100%;height:clamp(48px,6.8vh,56px);margin-top:2px;font-size:16px;font-weight:650;transition:background-position .5s,box-shadow .22s,transform .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 26px #6c47f047}.odq-lg .odq-lg-submit:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:40%;position:absolute;top:0;bottom:0;left:0;transform:translate(-120%)skew(-20deg)}.odq-lg .odq-lg-submit svg{transition:transform .22s var(--lg-ease)}.odq-lg .odq-lg-submit:hover:not(:disabled){background-position:100% 0;transform:translateY(-2px);box-shadow:0 16px 34px #6c47f066}.odq-lg .odq-lg-submit:hover:not(:disabled):after{animation:.9s odq-lg-shine}.odq-lg .odq-lg-submit:hover:not(:disabled) svg{transform:translate(5px)}.odq-lg .odq-lg-submit:active:not(:disabled){transform:translateY(0)scale(.99)}.odq-lg .odq-lg-submit:focus-visible{outline-offset:3px;outline:3px solid #6c47f066}.odq-lg .odq-lg-submit:disabled{opacity:.8;cursor:progress}.odq-lg .odq-lg-spin{animation:.9s linear infinite odq-lg-spin}.odq-lg .odq-lg-or{width:100%;color:var(--lg-muted);align-items:center;gap:16px;margin:clamp(14px,2.4vh,22px) 0;font-size:13.5px;display:flex}.odq-lg .odq-lg-or:before,.odq-lg .odq-lg-or:after{content:"";background:var(--lg-border);flex:1;height:1px}.odq-lg .odq-lg-google{width:100%;height:clamp(46px,6.4vh,54px);color:var(--lg-ink);border:1px solid var(--lg-border);cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:12px;padding:0;font-size:15px;font-weight:550;transition:background .16s,border-color .16s,transform .16s,box-shadow .16s;display:flex}.odq-lg .odq-lg-google:hover{background:#faf9ff;border-color:#c9c3ee;transform:translateY(-1px);box-shadow:0 6px 16px #34208014}.odq-lg .odq-lg-google:focus-visible{outline-offset:2px;outline:3px solid #6c47f059}.odq-lg .odq-lg-contact{color:var(--lg-muted);text-align:center;margin-top:clamp(18px,3vh,28px);font-size:14px}.odq-lg .odq-lg-secure{color:#8a8fab;border-top:1px solid #ecebf5;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:clamp(14px,2.4vh,20px);padding-top:clamp(14px,2.4vh,20px);font-size:12px;display:inline-flex}.odq-lg .odq-lg-secure svg{color:#2fb67a}.odq-lg .odq-lg-legal{color:#9a9db5;text-align:center;margin-top:clamp(10px,1.8vh,14px);font-size:11.5px;line-height:1.5}@media (width>=901px) and (height<=700px){.odq-lg .odq-lg-copy p,.odq-lg .odq-lg-secure{display:none}}@media (width>=901px) and (height<=560px){.odq-lg .odq-lg-visual{display:none}.odq-lg .odq-lg-brand{grid-template-rows:auto auto 1fr auto}}@media (width>=901px) and (width<=1100px){.odq-lg .odq-lg-brand,.odq-lg .odq-lg-formside{padding-left:28px;padding-right:28px}.odq-lg .odq-lg-features li{gap:8px;font-size:12px}}@media (width<=900px){.odq-lg{flex-direction:column;min-height:100dvh;display:flex}.odq-lg .odq-lg-brand{flex-direction:column;padding:30px 24px 34px;display:flex}.odq-lg .odq-lg-copy{margin-top:26px}.odq-lg .odq-lg-copy h1{font-size:clamp(30px,6vw,40px)}.odq-lg .odq-lg-copy p{font-size:15px}.odq-lg .odq-lg-visual{aspect-ratio:56/36;width:100%;max-width:560px;height:auto;margin:24px auto}.odq-lg .odq-lg-features{margin-top:4px}.odq-lg .odq-lg-formside{flex:1;padding:36px 20px 44px;overflow:visible}}@media (width<=520px){.odq-lg .odq-lg-brand{padding:24px 18px 28px}.odq-lg .odq-lg-copy h1{font-size:31px}.odq-lg .odq-lg-copy p{font-size:14px}.odq-lg .odq-lg-features{grid-template-columns:1fr;gap:14px}.odq-lg .odq-lg-features li,.odq-lg .odq-lg-features li:first-child,.odq-lg .odq-lg-features li:last-child{border-right:0;padding:0;font-size:14px}.odq-lg .odq-lg-formside{padding:28px 14px 36px}.odq-lg .odq-lg-card{border-radius:22px;padding:26px 20px}.odq-lg .odq-lg-row{font-size:13px}}@media (prefers-reduced-motion:reduce){.odq-lg *,.odq-lg :before,.odq-lg :after{transition-duration:.01ms!important;animation:none!important}}.project-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a8f;justify-content:center;align-items:center;padding:24px;animation:.16s ease-out project-overlay-in;display:flex;position:fixed;inset:0;overflow-y:auto}.project-modal{background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:100%;max-width:540px;max-height:calc(100vh - 48px);animation:.18s ease-out project-modal-in;overflow-y:auto;box-shadow:0 24px 60px #0f172a33,0 4px 12px #0f172a14}.project-modal-header{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:flex-start;gap:16px;padding:25px 26px 22px;display:flex}.project-modal-heading{align-items:flex-start;gap:14px;display:flex}.project-modal-icon{color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.project-modal-heading h2{color:#0f172a;letter-spacing:-.4px;margin:1px 0 6px;font-size:21px;font-weight:700;line-height:1.35}.project-modal-heading p{color:#64748b;margin:0;font-size:13px;line-height:1.6}.project-modal-close{color:#64748b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background .15s,color .15s;display:inline-flex}.project-modal-close:hover:not(:disabled){color:#0f172a;background:#f1f5f9}.project-modal-close:disabled{cursor:not-allowed;opacity:.5}.project-modal-body{flex-direction:column;gap:22px;padding:25px 26px;display:flex}.project-form-field{flex-direction:column;gap:8px;min-width:0;display:flex}.project-form-field label{color:#334155;font-size:13px;font-weight:650}.project-form-field label span{color:#dc2626}.project-form-field input,.project-form-field textarea,.project-form-field select{box-sizing:border-box;color:#0f172a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;padding:11px 13px;font-size:13px;transition:border-color .15s,box-shadow .15s}.project-form-field textarea{resize:vertical;min-height:92px;line-height:1.6}.project-form-field input::placeholder,.project-form-field textarea::placeholder{color:#94a3b8}.project-form-field input:hover:not(:disabled),.project-form-field textarea:hover:not(:disabled),.project-form-field select:hover:not(:disabled){border-color:#94a3b8}.project-form-field input:focus,.project-form-field textarea:focus,.project-form-field select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f621}.project-form-field input:disabled,.project-form-field textarea:disabled,.project-form-field select:disabled{cursor:not-allowed;opacity:.75;background:#f8fafc}.project-form-field small{color:#94a3b8;font-size:11px;line-height:1.5}.project-modal-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:flex-start;gap:9px;padding:12px 13px;font-size:12px;line-height:1.6;display:flex}.project-modal-error svg{flex-shrink:0;margin-top:1px}.project-modal-footer{background:#f8fafc;border-top:1px solid #edf0f5;border-radius:0 0 16px 16px;justify-content:flex-end;align-items:center;gap:10px;padding:18px 26px 22px;display:flex}.project-btn-cancel,.project-btn-submit{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;display:inline-flex}.project-btn-cancel{color:#475569;background:#fff;border:1px solid #cbd5e1}.project-btn-cancel:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.project-btn-submit{color:#fff;background:#2563eb;border:1px solid #2563eb;box-shadow:0 2px 4px #2563eb26}.project-btn-submit:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 4px 9px #2563eb33}.project-btn-submit:active:not(:disabled){transform:translateY(1px)}.project-btn-submit:disabled,.project-btn-cancel:disabled{cursor:not-allowed;opacity:.6}.project-btn-cancel:focus-visible,.project-btn-submit:focus-visible,.project-modal-close:focus-visible{outline-offset:2px;outline:3px solid #3b82f659}.project-spinner{animation:.9s linear infinite project-spin}@keyframes project-spin{to{transform:rotate(360deg)}}@keyframes project-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes project-modal-in{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=560px){.project-modal-overlay{align-items:center;padding:12px}.project-modal{border-radius:12px;max-height:calc(100vh - 24px)}.project-modal-header{padding:20px 18px}.project-modal-heading{gap:10px}.project-modal-heading h2{font-size:18px}.project-modal-body{gap:18px;padding:20px 18px}.project-modal-footer{padding:15px 18px 18px}.project-btn-cancel,.project-btn-submit{padding:0 12px}}@media (prefers-reduced-motion:reduce){.project-modal-overlay,.project-modal,.project-spinner{animation:none}}.odq-app{--odq-primary:#6c47f0;--odq-primary-dark:#5a38d8;--odq-primary-deep:#482bc7;--odq-primary-soft:#f1edff;--odq-primary-border:#e2dbff;--odq-text:#1f1d36;--odq-text-secondary:#5f5d77;--odq-text-muted:#9391a8;--odq-border:#e8e7f0;--odq-surface:#fff;--odq-page-bg:#f6f6fb;--odq-sidebar-bg:#fff;--odq-success:#16845b;--odq-success-bg:#eaf8f1;--odq-danger:#c83d50;--odq-danger-bg:#fff1f2;--odq-sidebar-width:256px;--odq-sidebar-collapsed-width:76px;--odq-topbar-height:64px;width:100%;min-height:100vh;color:var(--odq-text);background:var(--odq-page-bg);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5;display:flex}.odq-app *,.odq-app :before,.odq-app :after,.odq-loading-screen,.odq-loading-screen *{box-sizing:border-box}.odq-sidebar button,.odq-topbar button,.odq-api-warning button,.odq-empty-project button,.odq-mobile-overlay{color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0}.odq-app button,.odq-app input,.odq-app select,.odq-app textarea{font-family:inherit}.odq-app button:disabled{cursor:not-allowed}.odq-app button:focus-visible,.odq-app input:focus-visible{outline-offset:2px;outline:2px solid #6c47f0b3}.odq-loading-screen{color:#5f5d77;background:#f6f6fb;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;padding:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.odq-loading-screen p{margin:0;font-size:13px}.odq-loading-brand{color:#1f1d36;letter-spacing:-.5px;align-items:center;gap:10px;font-size:22px;font-weight:700;display:flex}.odq-brand-mark{color:#fff;background:linear-gradient(140deg,#8a6fff,#5a38d8);border-radius:11px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 4px 12px #6c47f047}.odq-loading-spinner{color:#6c47f0;animation:.9s linear infinite odq-spin}@keyframes odq-spin{to{transform:rotate(360deg)}}.odq-app .odq-sidebar{z-index:100;width:var(--odq-sidebar-width);background:var(--odq-surface);border-right:1px solid var(--odq-border);scrollbar-width:thin;scrollbar-color:#dcd9ea transparent;flex-direction:column;height:100dvh;padding:18px 14px 14px;transition:transform .22s;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden auto}.odq-app .odq-sidebar-brand{flex:none;align-items:center;gap:11px;padding:2px 6px 18px;display:flex}.odq-app .odq-brand-copy{flex-direction:column;flex:1;gap:3px;min-width:0;margin:0;line-height:1.1;display:flex}.odq-app .odq-brand-name{color:var(--odq-text);letter-spacing:-.5px;font-size:18px;font-weight:750}.odq-app .odq-brand-caption{color:var(--odq-text-muted);letter-spacing:1.3px;white-space:nowrap;font-size:8.5px;font-weight:700}.odq-app .odq-icon-button{width:38px;height:38px;color:var(--odq-text-secondary);border:1px solid #0000;border-radius:10px;flex:0 0 38px;place-items:center;transition:background .14s,color .14s,border-color .14s;display:inline-grid;position:relative}.odq-app .odq-icon-button:hover{color:var(--odq-primary-dark);background:var(--odq-primary-soft)}.odq-app .odq-sidebar-close,.odq-app .odq-menu-button{display:none}.odq-app .odq-sidebar-workspace{flex:none;margin-bottom:18px}.odq-app .odq-workspace-label,.odq-app .odq-nav-group-title{color:var(--odq-text-muted);letter-spacing:1.1px;margin-bottom:8px;padding:0 8px;font-size:10px;font-weight:700}.odq-app .odq-project-switcher{background:#faf9ff;border:1px solid #ece8fa;border-radius:12px;align-items:center;gap:10px;width:100%;padding:9px 10px;transition:background .14s,border-color .14s;display:flex}.odq-app .odq-project-switcher:hover,.odq-app .odq-project-switcher.is-open{background:#f4f0ff;border-color:#dcd3ff}.odq-app .odq-project-switcher-icon{width:34px;height:34px;color:var(--odq-primary);background:#ebe6ff;border-radius:9px;flex:0 0 34px;place-items:center;display:grid}.odq-app .odq-project-switcher-copy{flex-direction:column;flex:1;min-width:0;display:flex}.odq-app .odq-project-switcher-title{color:var(--odq-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.odq-app .odq-project-switcher-subtitle{color:var(--odq-text-muted);font-size:11px}.odq-app .odq-project-switcher-chevron{color:var(--odq-text-muted);flex:none;transition:transform .18s}.odq-app .odq-project-switcher-chevron.is-rotated{transform:rotate(180deg)}.odq-app .odq-project-dropdown{border:1px solid var(--odq-border);background:#fff;border-radius:12px;flex-direction:column;gap:2px;max-height:260px;margin-top:8px;padding:6px;display:flex;overflow-y:auto;box-shadow:0 10px 28px #231b4b1a}.odq-app .odq-project-dropdown-item{width:100%;min-height:36px;color:var(--odq-text-secondary);border-radius:8px;align-items:center;gap:9px;padding:8px 10px;font-size:13px;display:flex}.odq-app .odq-project-dropdown-item>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.odq-app .odq-project-dropdown-item:hover{color:var(--odq-primary-dark);background:#f6f3ff}.odq-app .odq-project-dropdown-item.is-selected{color:var(--odq-primary-dark);background:var(--odq-primary-soft);font-weight:650}.odq-app .odq-project-add{color:var(--odq-primary);font-weight:650}.odq-app .odq-project-dropdown-divider{background:var(--odq-border);height:1px;margin:4px 2px}.odq-app .odq-sidebar-navigation{flex-direction:column;flex:1 0 auto;gap:20px;display:flex}.odq-app .odq-nav-group{flex-direction:column;gap:2px;display:flex}.odq-app .odq-nav-item{width:100%;min-height:40px;color:var(--odq-text-secondary);border-radius:10px;align-items:center;gap:12px;padding:9px 12px;font-size:13.5px;font-weight:550;transition:background .14s,color .14s;display:flex;position:relative}.odq-app .odq-nav-item svg{flex:none}.odq-app .odq-nav-item span:not(.odq-nav-active-marker){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.odq-app .odq-nav-item:hover{color:var(--odq-primary-dark);background:#f8f6ff}.odq-app .odq-nav-item.is-active{color:var(--odq-primary-dark);background:var(--odq-primary-soft);font-weight:700}.odq-app .odq-nav-active-marker{background:var(--odq-primary);border-radius:0 4px 4px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.odq-app .odq-sidebar-bottom{flex:none;margin-top:22px}.odq-app .odq-sidebar-help{background:linear-gradient(135deg,#f4f0ff,#faf9ff);border:1px solid #e9e3ff;border-radius:12px;align-items:center;gap:11px;padding:12px;display:flex}.odq-app .odq-help-icon{width:34px;height:34px;color:var(--odq-primary);background:#fff;border-radius:9px;flex:0 0 34px;place-items:center;display:grid}.odq-app .odq-help-copy{flex-direction:column;min-width:0;line-height:1.35;display:flex}.odq-app .odq-help-copy strong{font-size:13px}.odq-app .odq-help-copy span{color:var(--odq-text-muted);font-size:11.5px}.odq-app .odq-sidebar-footer{color:var(--odq-text-muted);align-items:center;gap:8px;padding:14px 6px 0;font-size:11.5px;display:flex}.odq-app .odq-footer-status-dot{background:#2fb67a;border-radius:50%;flex:0 0 7px;width:7px;height:7px;margin-right:2px;display:inline-block;box-shadow:0 0 0 3px #2fb67a24}.odq-app .odq-footer-version{margin-left:auto}.odq-app .odq-main{min-width:0;min-height:100vh;margin-left:var(--odq-sidebar-width);flex-direction:column;flex:1;display:flex}.odq-app .odq-topbar{z-index:50;height:var(--odq-topbar-height);border-bottom:1px solid var(--odq-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;justify-content:space-between;align-items:center;gap:16px;padding:0 28px;display:flex;position:sticky;top:0}.odq-app .odq-topbar-left,.odq-app .odq-topbar-right{align-items:center;gap:12px;min-width:0;display:flex}.odq-app .odq-topbar-left{flex:1}.odq-app .odq-breadcrumb{min-width:0;color:var(--odq-text-muted);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:flex}.odq-app .odq-breadcrumb svg{flex:none}.odq-app .odq-breadcrumb-link:hover{color:var(--odq-primary-dark)}.odq-app .odq-breadcrumb-current{color:var(--odq-text);text-overflow:ellipsis;font-weight:700;overflow:hidden}.odq-app .odq-global-search{width:clamp(180px,22vw,300px);height:40px;color:var(--odq-text-muted);background:#f6f6fb;border:1px solid #0000;border-radius:10px;align-items:center;gap:9px;padding:0 12px;transition:background .14s,border-color .14s,box-shadow .14s;display:flex}.odq-app .odq-global-search:focus-within{border-color:var(--odq-primary);background:#fff;box-shadow:0 0 0 4px #6c47f01a}.odq-app .odq-global-search svg{flex:none}.odq-app .odq-global-search input{min-width:0;height:100%;color:var(--odq-text);font:inherit;background:0 0;border:0;outline:0;flex:1;padding:0;font-size:13.5px}.odq-app .odq-global-search input::placeholder{color:var(--odq-text-muted)}.odq-app .odq-global-search input::-webkit-search-cancel-button{display:none}.odq-app .odq-search-clear{border-radius:6px;flex:0 0 22px;place-items:center;width:22px;height:22px;display:grid}.odq-app .odq-search-clear:hover{color:var(--odq-primary-dark);background:var(--odq-primary-soft)}.odq-app .odq-notification-indicator{background:#ee4b63;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:9px;right:10px}.odq-app .odq-profile-container{position:relative}.odq-app .odq-profile-button{border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;max-width:280px;padding:4px 8px 4px 4px;transition:background .14s,border-color .14s;display:flex}.odq-app .odq-profile-button:hover,.odq-app .odq-profile-button.is-open{background:#faf9ff;border-color:#ece8fa}.odq-app .odq-profile-button>svg{color:var(--odq-text-muted);flex:none}.odq-app .odq-avatar{color:#fff;background:linear-gradient(145deg,#927cff,#6544ec);border-radius:10px;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:12px;font-weight:700;display:grid}.odq-app .odq-avatar-large{flex-basis:42px;width:42px;height:42px;font-size:14px}.odq-app .odq-profile-copy{flex-direction:column;min-width:0;line-height:1.3;display:flex}.odq-app .odq-profile-name{text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:13px;font-weight:650;overflow:hidden}.odq-app .odq-profile-role{color:var(--odq-text-muted);font-size:11.5px}.odq-app .odq-profile-menu{z-index:60;border:1px solid var(--odq-border);background:#fff;border-radius:14px;width:270px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 36px #231b4b24}.odq-app .odq-profile-menu-user{align-items:center;gap:12px;padding:10px;display:flex}.odq-app .odq-profile-menu-user>div{flex-direction:column;min-width:0;display:flex}.odq-app .odq-profile-menu-user strong,.odq-app .odq-profile-menu-user span:not(.odq-avatar){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.odq-app .odq-profile-menu-user span:not(.odq-avatar){color:var(--odq-text-muted);font-size:12px}.odq-app .odq-profile-menu-divider{background:var(--odq-border);height:1px;margin:6px 4px}.odq-app .odq-profile-menu-item{width:100%;min-height:40px;color:var(--odq-text-secondary);border-radius:9px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;display:flex}.odq-app .odq-profile-menu-item:hover{color:var(--odq-primary-dark);background:#f6f3ff}.odq-app .odq-profile-logout{color:#b23c4a}.odq-app .odq-profile-logout:hover{color:#a32f3e;background:#fff1f2}.odq-app .odq-api-warning{color:#9a3340;background:#fff3f4;border-bottom:1px solid #f6d9dd;align-items:center;gap:10px;padding:11px 28px;font-size:13px;display:flex}.odq-app .odq-api-warning svg{flex:none}.odq-app .odq-api-warning span{overflow-wrap:anywhere;flex:1;min-width:0}.odq-app .odq-api-warning button{color:#9a3340;background:#fff;border:1px solid #f0c4ca;border-radius:8px;padding:6px 14px;font-weight:650}.odq-app .odq-api-warning button:hover{background:#ffe9ec}.odq-app .odq-page-content{flex:1 0 auto;min-width:0;padding:28px}.odq-app .odq-page-loading{min-height:320px;color:var(--odq-text-muted);justify-content:center;align-items:center;gap:12px;display:flex}.odq-app .odq-page-loading .odq-loading-spinner{margin:0}.odq-app .odq-empty-project{text-align:center;border:1px solid var(--odq-border);background:#fff;border-radius:18px;flex-direction:column;align-items:center;max-width:520px;margin:40px auto;padding:56px 32px;display:flex;box-shadow:0 8px 28px #231b4b0d}.odq-app .odq-empty-project-icon{width:60px;height:60px;color:var(--odq-primary);background:var(--odq-primary-soft);border-radius:16px;place-items:center;margin-bottom:18px;display:grid}.odq-app .odq-empty-project h2{letter-spacing:-.3px;margin:0;font-size:20px}.odq-app .odq-empty-project p{color:var(--odq-text-secondary);margin-top:8px}.odq-app .odq-empty-project-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.odq-app .odq-button,.odq-app .odq-primary-btn,.odq-app button.odq-btn-primary{text-align:center;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 16px;font-size:13.5px;font-weight:650;transition:background .14s,border-color .14s,box-shadow .14s;display:inline-flex}.odq-app .odq-button-primary,.odq-app .odq-primary-btn,.odq-app button.odq-btn-primary{color:#fff;background:var(--odq-primary);box-shadow:0 6px 14px #6c47f033}.odq-app .odq-button-primary:hover,.odq-app .odq-primary-btn:hover,.odq-app button.odq-btn-primary:hover{background:var(--odq-primary-dark)}.odq-app .odq-button-secondary{color:var(--odq-text);border-color:var(--odq-border);background:#fff}.odq-app .odq-button-secondary:hover{background:#f8f6ff;border-color:#d9d0ff}.odq-app .odq-app-footer{color:var(--odq-text-muted);border-top:1px solid var(--odq-border);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 28px;font-size:12px;display:flex}.odq-app .odq-mobile-overlay{display:none}@media (width<=1100px){.odq-app{--odq-sidebar-width:232px}.odq-app .odq-topbar,.odq-app .odq-api-warning,.odq-app .odq-app-footer{padding-left:20px;padding-right:20px}.odq-app .odq-page-content{padding:22px 20px}.odq-app .odq-profile-name{max-width:120px}}@media (width<=900px){.odq-app .odq-sidebar{width:min(290px,86vw);transform:translate(-105%)}.odq-app .odq-sidebar.is-open{transform:translate(0);box-shadow:14px 0 40px #1f194429}.odq-app .odq-mobile-overlay{z-index:90;background:#1c183366;width:100%;height:100%;display:block;position:fixed;inset:0}.odq-app .odq-sidebar-close,.odq-app .odq-menu-button{display:inline-grid}.odq-app .odq-main{margin-left:0}.odq-app .odq-global-search{width:clamp(140px,30vw,240px)}}@media (width<=640px){.odq-app .odq-topbar{gap:8px;padding:0 12px}.odq-app .odq-global-search,.odq-app .odq-profile-copy,.odq-app .odq-profile-button>svg,.odq-app .odq-breadcrumb-root,.odq-app .odq-breadcrumb-root+svg{display:none}.odq-app .odq-profile-button{padding:0}.odq-app .odq-page-content{padding:16px 12px}.odq-app .odq-api-warning{flex-wrap:wrap;padding:10px 12px}.odq-app .odq-app-footer{padding:12px}.odq-app .odq-app-footer>span:last-child{display:none}.odq-app .odq-profile-menu{width:min(270px,100vw - 24px)}}@media (prefers-reduced-motion:reduce){.odq-app *,.odq-app :before,.odq-app :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.odq-app .odq-primary-btn,.odq-app button.odq-btn-primary,.odq-app button.is-solid-primary{color:#fff!important;background:var(--odq-primary)!important;border:1px solid var(--odq-primary)!important}.odq-app .odq-primary-btn:hover,.odq-app button.odq-btn-primary:hover,.odq-app button.is-solid-primary:hover{color:#fff!important;background:var(--odq-primary-dark)!important;border-color:var(--odq-primary-dark)!important}.odq-app .odq-primary-btn:active,.odq-app button.odq-btn-primary:active,.odq-app button.is-solid-primary:active{color:#fff!important;background:var(--odq-primary-deep)!important;border-color:var(--odq-primary-deep)!important}.odq-app .odq-primary-btn:disabled,.odq-app button.odq-btn-primary:disabled,.odq-app button.is-solid-primary:disabled{color:#fff!important;background:#b2a5f2!important;border-color:#b2a5f2!important}.odq-app .odq-primary-btn *,.odq-app button.odq-btn-primary *,.odq-app button.is-solid-primary *{color:inherit}.odq-app{--odq-page-gutter:28px;--odq-content-max:1480px}.odq-app .odq-page-content{min-width:0;width:auto!important;max-width:none!important;padding:var(--odq-page-gutter)!important;margin:0!important}.odq-app .odq-page-content:before,.odq-app .odq-page-content:after{content:none!important}.odq-app .odq-page-content>:not(.odq-empty-project):not(.odq-page-loading){box-sizing:border-box;min-width:0;width:100%!important;max-width:var(--odq-content-max)!important;margin:0 auto!important;padding:0!important;left:0!important;transform:none!important}@media (width<=1100px){.odq-app{--odq-page-gutter:20px}}@media (width<=640px){.odq-app{--odq-page-gutter:14px}}.odq-app .odq-brand-name b,.odq-loading-brand b{color:#6c47f0;font-weight:inherit}.odq-app .odq-sidebar-brand{gap:10px}.odq-app .odq-nav-group-toggle{width:100%;min-height:26px;color:var(--odq-text-muted);letter-spacing:1.1px;border-radius:8px;align-items:center;gap:8px;margin-bottom:8px;padding:0 8px;font-size:10px;font-weight:700;transition:color .14s,background .14s;display:flex}.odq-app .odq-nav-group-toggle:hover{color:var(--odq-primary-dark);background:#f8f6ff}.odq-app .odq-nav-group-toggle>svg{margin-left:auto;transition:transform .2s}.odq-app .odq-nav-group-toggle>svg.is-collapsed{transform:rotate(-90deg)}.odq-app .odq-nav-admin-badge{color:var(--odq-primary-dark);letter-spacing:.4px;background:var(--odq-primary-soft);border:1px solid var(--odq-primary-border);border-radius:99px;padding:2px 8px;font-size:9px}.odq-app{--odq-gap-block:20px;--odq-gap-tile:16px;--odq-tile-pad:18px 20px;--odq-tile-min-h:112px;--odq-radius-card:14px;--odq-card-border:#ebe9f5;--odq-card-border-hover:#d9d0ff;--odq-card-shadow:0 1px 2px #1f1d360a;--odq-card-shadow-hover:0 8px 22px #4c34be1a;--odq-ease:cubic-bezier(.22, .7, .2, 1)}.odq-app .odq-page-content.odq-page-content .odq-page-header{width:100%;min-width:0;padding:0 0 var(--odq-gap-block);border:0;border-bottom:1px solid var(--odq-border);box-shadow:none;background:0 0;border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 24px;margin:0;display:flex}.odq-app .odq-page-content.odq-page-content .odq-page-header-main{flex:420px;align-items:center;gap:14px;min-width:0;margin:0;padding:0;display:flex}.odq-app .odq-page-content.odq-page-content .odq-page-header-icon{width:46px;height:46px;color:var(--odq-primary);background:var(--odq-primary-soft);border:1px solid var(--odq-primary-border);border-radius:13px;flex:0 0 46px;justify-content:center;align-items:center;margin:0;display:flex}.odq-app .odq-page-content.odq-page-content .odq-page-header-icon svg{width:22px;height:22px}.odq-app .odq-page-content.odq-page-content .odq-page-header-copy{flex:auto;min-width:0;margin:0;padding:0}.odq-app .odq-page-content.odq-page-content .odq-page-header-category{color:var(--odq-text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:650;line-height:1.3;display:block}.odq-app .odq-page-content.odq-page-content .odq-page-header-title{color:var(--odq-text);letter-spacing:-.02em;margin:0;font-size:24px;font-weight:750;line-height:1.2}.odq-app .odq-page-content.odq-page-content .odq-page-header-subtitle{max-width:100ch;color:var(--odq-text-secondary);margin:4px 0 0;font-size:13.5px;font-weight:450;line-height:1.5}.odq-app .odq-page-content.odq-page-content .odq-page-header-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;margin:0;padding:0;display:flex}.odq-app .odq-page-content.odq-page-content :has(>.odq-page-header){gap:var(--odq-gap-block);flex-direction:column;min-width:0;display:flex}.odq-app .odq-page-content.odq-page-content :has(>.odq-page-header)>*{min-width:0;margin-top:0;margin-bottom:0}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats){--odq-tile-cols:4;grid-template-columns:repeat(var(--odq-tile-cols), minmax(0, 1fr));gap:var(--odq-gap-tile);width:100%;margin:0;padding:0;display:grid}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats):not(:has(>:nth-child(4))){--odq-tile-cols:3}.odq-app .odq-page-content.odq-page-content :is(.connections-stat-card,.datasets-stat-card,.profile-stat-card,.dq-stat-card,.execution-summary-card,.issues-summary-card,.quarantine-summary-card,.alert-summary-card,.report-stat-card,.settings-stat,.schedules-stat-card,.odq-admin-stat){min-width:0;min-height:var(--odq-tile-min-h);padding:var(--odq-tile-pad);background:var(--odq-surface);border:1px solid var(--odq-card-border);border-radius:var(--odq-radius-card);box-shadow:var(--odq-card-shadow);transition:transform .2s var(--odq-ease), box-shadow .2s var(--odq-ease), border-color .2s var(--odq-ease);margin:0;position:relative}.odq-app .odq-page-content.odq-page-content :is(.connections-stat-card,.datasets-stat-card,.profile-stat-card,.dq-stat-card,.execution-summary-card,.issues-summary-card,.quarantine-summary-card,.alert-summary-card,.report-stat-card,.settings-stat,.schedules-stat-card,.odq-admin-stat):hover{border-color:var(--odq-card-border-hover);box-shadow:var(--odq-card-shadow-hover);transform:translateY(-2px)}.odq-app .odq-page-content.odq-page-content :is(.connections-stat-value,.profile-stat-value,.execution-summary-value,.issues-summary-value,.quarantine-summary-value,.alert-summary-value,.odq-admin-stat-value){letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:750;line-height:1.1}.odq-app .odq-page-content.odq-page-content :has(>.odq-page-header)>:is(.datasets-panel,.execution-card,.issues-card,.report-table-card,.schedules-panel){border-radius:var(--odq-radius-card);padding:0}.odq-app .odq-page-content.odq-page-content :has(>.odq-page-header)>.dq-panel{border-radius:var(--odq-radius-card);padding:20px}.odq-app .odq-page-header-actions :is(button,a){min-height:38px;font-size:13px}.odq-app .odq-button{transition:background .16s ease, border-color .16s ease, box-shadow .2s var(--odq-ease), transform .12s ease}.odq-app .odq-button:not(:disabled):hover{transform:translateY(-1px)}.odq-app .odq-button:not(:disabled):active{transform:translateY(0)scale(.98)}.odq-app .odq-button-primary:not(:disabled):hover{box-shadow:0 10px 20px #6c47f047}@keyframes odq-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes odq-icon-pop{0%{opacity:0;transform:scale(.82)}60%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}.odq-app .odq-page-content.odq-page-content .odq-page-header{animation:odq-rise .32s var(--odq-ease) backwards}.odq-app .odq-page-content.odq-page-content .odq-page-header-icon{animation:odq-icon-pop .52s var(--odq-ease) 80ms backwards}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats)>*{animation:odq-rise .42s var(--odq-ease) backwards}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats)>:first-child{animation-delay:90ms}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats)>:nth-child(2){animation-delay:.145s}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats)>:nth-child(3){animation-delay:.2s}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats)>:nth-child(n+4){animation-delay:.255s}.odq-app .odq-page-content.odq-page-content :has(>.odq-page-header)>:not(.odq-page-header):not([role=dialog]):not([class*=modal]):not([class*=overlay]):not([class*=backdrop]):not(:is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats)){animation:odq-rise .42s var(--odq-ease) .18s backwards}.odq-app .odq-page-content.odq-page-content .odq-admin-stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}@keyframes odq-shimmer{0%{background-position:150% 0}to{background-position:-50% 0}}@keyframes odq-row-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes odq-check-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}.odq-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.odq-skeleton{background:linear-gradient(90deg,#f0eefa 25%,#f8f7fd 45%,#f0eefa 65%) 0 0/250% 100%;border-radius:6px;height:12px;animation:1.5s linear infinite odq-shimmer;display:block}.odq-skeleton-sm{height:9px}.odq-skeleton-pill{border-radius:99px;width:74px;height:24px}.odq-skeleton-cell{width:110px;height:12px}.odq-skeleton-avatar{border-radius:10px;flex:0 0 36px;width:36px;height:36px}.odq-skeleton-value{vertical-align:middle;border-radius:8px;width:56px;height:28px;display:inline-block}.odq-table-skeleton{flex-direction:column;width:100%;display:flex}.odq-table-skeleton-row{border-top:1px solid var(--odq-border);animation:odq-row-in .32s var(--odq-ease) backwards;align-items:center;gap:16px;padding:16px 22px;display:flex}.odq-table-skeleton-row:first-child{border-top:0}.odq-table-skeleton-text{flex-direction:column;flex:auto;gap:8px;min-width:0;display:flex}@media (width<=720px){.odq-table-skeleton-row .odq-skeleton-cell{display:none}}.odq-app .odq-page-header-actions button[data-busy] svg{animation:.9s linear infinite odq-spin}.odq-app .odq-page-header-actions button[data-refreshed]{color:var(--odq-success);background:var(--odq-success-bg);border-color:#bfe8d4}.odq-app .odq-page-header-actions button[data-refreshed] svg{display:none}.odq-app .odq-page-header-actions button[data-refreshed]:before{content:"";width:16px;height:16px;animation:odq-check-pop .38s var(--odq-ease) both;background:currentColor;flex:0 0 16px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") 50%/contain no-repeat}.odq-app .odq-page-header-actions button[data-refreshed]>span{font-size:0}.odq-app .odq-page-header-actions button[data-refreshed]>span:after{content:"Updated";font-size:13px}@media (width<=1180px){.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats){--odq-tile-cols:2}.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats):not(:has(>:nth-child(4))){--odq-tile-cols:3}}@media (width<=720px){.odq-app .odq-page-content.odq-page-content .odq-page-header-actions{justify-content:flex-start;width:100%}}@media (width<=560px){:is(.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats),.odq-app .odq-page-content.odq-page-content :is(.connections-stats,.datasets-stats-grid,.profile-stats-grid,.dq-stat-grid,.execution-summary,.issues-summary,.quarantine-summary,.alerts-summary,.report-summary-grid,.settings-stats,.schedules-stats-grid,.odq-admin-stats):not(:has(>:nth-child(4)))){--odq-tile-cols:1}}@media (prefers-reduced-motion:reduce){.odq-app .odq-page-content.odq-page-content *,.odq-app .odq-button{transition-duration:.01ms!important;animation:none!important}}
