:root{--gl-ink: #0f1115;--gl-slate: #5c6370;--gl-white: #ffffff;--gl-bg: #f7faf9;--gl-surface: #ffffff;--gl-surface-soft: #f8fafc;--gl-surface-elevated: rgba(255, 255, 255, .94);--gl-surface-hover: rgba(15, 23, 42, .04);--gl-border: rgba(0, 0, 0, .08);--gl-border-strong: rgba(15, 23, 42, .12);--gl-header-bg: rgba(255, 255, 255, .86);--gl-tabbar-bg: rgba(255, 255, 255, .96);--gl-muted-bg: rgba(240, 253, 250, .92);--gl-danger-bg: #fff2f2;--gl-danger-text: #991b1b;--gl-card-shadow: 0 12px 28px rgba(15, 23, 42, .08);--gl-emerald: #00C953;--gl-mint: #34f5c5;--gl-yellow: #f59e0b;--gl-red: #ef4444;--gl-grad: linear-gradient(135deg, #00C953 0%, #34f5c5 85%, #7cf7e5 100%);--gl-grad-soft: linear-gradient( 135deg, rgba(16, 185, 129, .08), rgba(52, 245, 197, .1) );--gl-radius-sm: 10px;--gl-radius-md: 14px;--gl-radius-lg: 16px;--gl-radius-xl: 22px;--gl-radius-pill: 999px;--gl-shadow-xs: 0 2px 6px rgba(0, 0, 0, .06);--gl-shadow-sm: 0 6px 18px rgba(0, 0, 0, .08);--gl-shadow-md: 0 10px 24px rgba(0, 0, 0, .12);--gl-shadow-lg: 0 18px 40px rgba(0, 0, 0, .16);--gl-container: clamp(280px, 92vw, 1120px);color-scheme:light}:root[data-theme=dark]{--gl-ink: #eefcf7;--gl-slate: #a8b7b1;--gl-white: #101a16;--gl-bg: #08130f;--gl-surface: #101a16;--gl-surface-soft: #14231d;--gl-surface-elevated: rgba(16, 26, 22, .94);--gl-surface-hover: rgba(222, 252, 240, .06);--gl-border: rgba(222, 252, 240, .12);--gl-border-strong: rgba(222, 252, 240, .18);--gl-header-bg: rgba(8, 19, 15, .84);--gl-tabbar-bg: rgba(16, 26, 22, .96);--gl-muted-bg: rgba(16, 185, 129, .14);--gl-danger-bg: rgba(239, 68, 68, .14);--gl-danger-text: #fca5a5;--gl-grad-soft: linear-gradient( 135deg, rgba(16, 185, 129, .16), rgba(52, 245, 197, .1) );--gl-shadow-xs: 0 2px 8px rgba(0, 0, 0, .28);--gl-shadow-sm: 0 8px 22px rgba(0, 0, 0, .32);--gl-shadow-md: 0 14px 32px rgba(0, 0, 0, .38);--gl-shadow-lg: 0 22px 48px rgba(0, 0, 0, .44);--gl-card-shadow: 0 14px 32px rgba(0, 0, 0, .34);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme]){--gl-ink: #eefcf7;--gl-slate: #a8b7b1;--gl-white: #101a16;--gl-bg: #08130f;--gl-surface: #101a16;--gl-surface-soft: #14231d;--gl-surface-elevated: rgba(16, 26, 22, .94);--gl-surface-hover: rgba(222, 252, 240, .06);--gl-border: rgba(222, 252, 240, .12);--gl-border-strong: rgba(222, 252, 240, .18);--gl-header-bg: rgba(8, 19, 15, .84);--gl-tabbar-bg: rgba(16, 26, 22, .96);--gl-muted-bg: rgba(16, 185, 129, .14);--gl-danger-bg: rgba(239, 68, 68, .14);--gl-danger-text: #fca5a5;--gl-grad-soft: linear-gradient( 135deg, rgba(16, 185, 129, .16), rgba(52, 245, 197, .1) );--gl-shadow-xs: 0 2px 8px rgba(0, 0, 0, .28);--gl-shadow-sm: 0 8px 22px rgba(0, 0, 0, .32);--gl-shadow-md: 0 14px 32px rgba(0, 0, 0, .38);--gl-shadow-lg: 0 22px 48px rgba(0, 0, 0, .44);--gl-card-shadow: 0 14px 32px rgba(0, 0, 0, .34);color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}#root{min-height:100svh}html,body{margin:0;padding:0;width:100%;overflow-x:hidden}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-weight:400;line-height:1.45;color:var(--gl-ink);background:var(--gl-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden;overscroll-behavior-y:none}img,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;font-weight:700;letter-spacing:-.01em;margin:0}p{margin:0}small{color:var(--gl-slate)}.container{width:100%;max-width:var(--gl-container);margin-inline:auto;padding-inline:clamp(12px,3vw,24px)}.card,.soft-card{background:var(--gl-surface);border-radius:var(--gl-radius-lg);border:1px solid var(--gl-border);box-shadow:var(--gl-shadow-sm)}.card-pad{padding:16px}.card-compact{padding:12px}.skeleton{border-radius:var(--gl-radius-lg);background:linear-gradient(90deg,color-mix(in srgb,var(--gl-ink) 7%,transparent) 25%,color-mix(in srgb,var(--gl-ink) 12%,transparent) 37%,color-mix(in srgb,var(--gl-ink) 7%,transparent) 63%);background-size:400% 100%;animation:gl-skeleton 1.2s ease-in-out infinite}@keyframes gl-skeleton{0%{background-position:100% 50%}to{background-position:0 50%}}button{font-family:inherit}.btn{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:44px;padding-inline:16px;font-weight:700;letter-spacing:.2px;border-radius:var(--gl-radius-md);border:1px solid var(--gl-border);color:var(--gl-ink);background:var(--gl-surface);box-shadow:var(--gl-shadow-xs);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--gl-shadow-sm)}.btn:active{transform:translateY(0);box-shadow:var(--gl-shadow-xs)}.btn-primary{border:none;color:#fff;background:var(--gl-grad);box-shadow:var(--gl-shadow-md)}.btn-ghost{background:var(--gl-surface);border:1px solid var(--gl-border)}.btn-danger{border:none;color:#fff;background:linear-gradient(135deg,#ef4444,#ff6b6b);box-shadow:var(--gl-shadow-md)}input,select,textarea{font-family:inherit;color:var(--gl-ink);font-size:16px}.input{width:100%;height:44px;border-radius:var(--gl-radius-md);border:1px solid var(--gl-border);padding:0 12px;background:var(--gl-surface);outline:none}.input:focus{border-color:#10b9818c;box-shadow:0 0 0 4px #10b9811f}.textarea{width:100%;min-height:100px;border-radius:var(--gl-radius-md);border:1px solid var(--gl-border);padding:10px 12px;background:var(--gl-surface);outline:none;resize:vertical}.textarea:focus{border-color:#10b9818c;box-shadow:0 0 0 4px #10b9811f}.field{display:grid;gap:6px}.label{font-weight:600;color:var(--gl-slate);font-size:13px}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--gl-radius-pill);font-weight:700;font-size:12px}.pill-green{color:var(--gl-emerald);background:#10b9811f}.pill-yellow{color:var(--gl-yellow);background:#f59e0b24}.pill-red{color:var(--gl-red);background:#ef444424}.row{display:flex;align-items:center;gap:12px}.stack{display:grid;gap:12px}.header-compact{padding:16px;background:var(--gl-grad-soft);border-radius:var(--gl-radius-xl);border:1px solid var(--gl-border);box-shadow:var(--gl-shadow-sm)}.app-logo-cluster{margin-right:-8px}.app-logo-button{width:clamp(118px,18vw,168px);max-width:36vw;height:44px;min-width:0;min-height:44px;padding:0;border:none;background:transparent;display:grid;place-items:center;cursor:pointer;user-select:none;-webkit-user-select:none;flex-shrink:0}.app-logo{grid-area:1 / 1;max-width:100%;max-height:40px;width:auto;height:auto;object-fit:contain;display:block}.app-logo-dark{display:none}:root[data-theme=dark] .app-logo-light{display:none}:root[data-theme=dark] .app-logo-dark{display:block}@keyframes mini-reaction-confetti{0%{opacity:0;transform:translate(-50%,-50%) scale(.7) rotate(0)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1) rotate(var(--r))}}:root[data-reduced-motion=true] *,:root[data-reduced-motion=true] *:before,:root[data-reduced-motion=true] *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}@media(prefers-color-scheme:dark){:root:not([data-theme]) .app-logo-light{display:none}:root:not([data-theme]) .app-logo-dark{display:block}}@media(max-width:420px){h1{font-size:22px!important}h2{font-size:16px!important}.btn{height:42px;padding-inline:14px}.container{padding-inline:16px}.app-logo-cluster{margin-right:-4px}.app-logo-button{width:min(132px,35vw);height:42px}.app-logo{max-height:38px}}:root{--tap-min: 44px;--app-viewport-height: 100svh;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--app-header-safe-top: max(0px, calc(var(--safe-top) - 6px));--app-header-base: 64px;--app-header-height: calc(var(--app-header-base) + var(--app-header-safe-top));--app-tabbar-base: 64px;--app-tabbar-gap: max(10px, calc(var(--safe-bottom) + 10px));--app-tabbar-height: calc(var(--app-tabbar-base) + var(--app-tabbar-gap) + 14px);--app-page-pad-x: clamp(12px, 4vw, 24px)}@supports (height: 100dvh){:root{--app-viewport-height: 100dvh}}html{min-height:100%;background:var(--gl-bg);-webkit-tap-highlight-color:transparent}html.native-shell,html.native-shell body,html.native-shell #root{width:100%;height:100%;min-height:100%;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}html.native-shell body{position:fixed;inset:0;-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}html.native-shell input,html.native-shell select,html.native-shell textarea{font-size:16px!important;-webkit-user-select:text;user-select:text}button,[role=button],a,input,select,textarea{min-height:var(--tap-min);font-weight:800;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,[role=button],a{min-width:var(--tap-min);user-select:none;-webkit-user-select:none}[data-app-scroll]{scrollbar-gutter:stable}html.native-shell [data-app-scroll]{overscroll-behavior-y:contain}button .hit,a .hit{position:relative}button .hit:after,a .hit:after{content:"";position:absolute;inset:-8px}body{min-height:var(--app-viewport-height);background-color:var(--gl-bg);font-family:Outfit,system-ui,sans-serif}@supports (-webkit-touch-callout: none){body{overscroll-behavior-y:none}}.navbar{position:fixed;bottom:0;left:0;right:0;z-index:300;border-top:1px solid var(--gl-border);background:var(--gl-surface);padding-bottom:max(8px,var(--safe-bottom))}@media(max-width:430px){:root{--app-header-base: 58px;--app-tabbar-base: 64px;--app-page-pad-x: 12px}}
