:root,[data-theme=light]{--bg: oklch(.98 0 0);--fg: oklch(.15 0 0);--bg-raised: oklch(.95 0 0);--border: oklch(.85 0 0);--primary: oklch(.72 .19 145);--overlay: oklch(.15 0 0 / .5);--error-bg: oklch(.92 .05 25);--error-fg: oklch(.45 .15 25);--success-bg: oklch(.92 .05 145);--success-fg: oklch(.4 .12 145);--sql-keyword: oklch(.45 .2 290);--sql-string: oklch(.5 .15 25);--sql-number: oklch(.5 .15 145);--sql-comment: oklch(.6 .02 250);--sql-type: oklch(.55 .12 220);--sql-operator: oklch(.55 .15 60);--sql-punctuation: oklch(.6 0 0)}[data-theme=dark]{--bg: oklch(.15 0 0);--fg: oklch(.93 0 0);--bg-raised: oklch(.22 0 0);--border: oklch(.35 0 0);--primary: oklch(.72 .19 145);--overlay: oklch(.05 0 0 / .7);--error-bg: oklch(.25 .08 25);--error-fg: oklch(.8 .1 25);--success-bg: oklch(.25 .06 145);--success-fg: oklch(.8 .08 145);--sql-keyword: oklch(.7 .2 290);--sql-string: oklch(.75 .12 25);--sql-number: oklch(.75 .12 145);--sql-comment: oklch(.55 .02 250);--sql-type: oklch(.7 .1 220);--sql-operator: oklch(.75 .12 60);--sql-punctuation: oklch(.55 0 0)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;font-family:inherit}html{font-family:Fredoka,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}body{background:var(--bg);color:var(--fg);min-height:100dvh}.text-xs{font-size:.7rem}.text-sm{font-size:.8rem}.text-base{font-size:.9rem}.text-lg{font-size:1.1rem}.text-xl{font-size:1.4rem}.text-2xl{font-size:1.6rem}.text-3xl{font-size:2rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semi{font-weight:600}.font-bold{font-weight:700}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.4rem}.p-6{padding:2rem}.p-8{padding:2.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.4rem;padding-right:1.4rem}.px-8{padding-left:2.5rem;padding-right:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.4rem;padding-bottom:1.4rem}.m-0{margin:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.4rem}.mb-6{margin-bottom:2rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:2rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.4rem}.gap-6{gap:2rem}.gap-8{gap:2.5rem}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-1{flex:1}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.self-start{justify-self:start}.self-center{justify-self:center}.self-end{justify-self:end}.grid{display:grid}.text-center{text-align:center}.text-left{text-align:left}.w-full{width:100%}.h-full{height:100%}.shrink-0{flex-shrink:0}.overflow-y{overflow-y:auto}.hidden{display:none}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.border-b{border-bottom:1px solid var(--border)}.border-r{border-right:1px solid var(--border)}.border-t{border-top:1px solid var(--border)}.rounded{border-radius:6px}.rounded-lg{border-radius:12px}.btn{background:none;border:none;cursor:pointer;color:var(--fg);transition:opacity .15s;padding:0}.btn:hover{opacity:.7}.logo{font-size:1.6rem;font-weight:700;letter-spacing:-.03em;color:var(--fg);text-decoration:none}.input{width:100%;padding:.65rem .8rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:6px;color:var(--fg);font-size:.9rem;box-sizing:border-box;transition:border-color .15s}.input:focus{outline:none;border-color:var(--fg)}.input::placeholder{color:var(--fg);opacity:.3}.btn-solid{width:100%;padding:.65rem;background:var(--fg);color:var(--bg);border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-solid:hover{opacity:.85}.msg{padding:.5rem .75rem;border-radius:6px;font-size:.8rem;font-weight:500;text-align:center}.msg-error{background:var(--error-bg);color:var(--error-fg)}.msg-success{background:var(--success-bg);color:var(--success-fg)}.pw-field{position:relative}.pw-field .pw-input{padding-right:2.5rem;width:100%;box-sizing:border-box}.pw-eye{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--fg);opacity:.4;display:flex;align-items:center;padding:4px;transition:opacity .15s}.pw-eye:hover{opacity:1}.pw-eye svg{display:block}.turnstile-box{display:flex;justify-content:center;margin:.25rem 0}
