@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&display=swap";:root{--bg: var(--tg-theme-bg-color, #fafaf8);--text: var(--tg-theme-text-color, #111111);--hint: var(--tg-theme-hint-color, #8a8a8e);--link: var(--tg-theme-link-color, #1f1f1f);--accent: var(--tg-theme-button-color, #1f1f1f);--accent-text: var(--tg-theme-button-text-color, #ffffff);--surface: var(--tg-theme-secondary-bg-color, #f2f2ec);--header-bg: var(--tg-theme-secondary-bg-color, #f2f2ec);--border: color-mix(in srgb, var(--text) 10%, transparent);--border-strong: color-mix(in srgb, var(--text) 20%, transparent);--surface-hover: color-mix(in srgb, var(--text) 4%, var(--surface));--success: #2d6a45;--success-bg: color-mix(in srgb, var(--success) 14%, transparent);--danger: #9a2929;--danger-bg: color-mix(in srgb, var(--danger) 14%, transparent);--warning: #8a6a1f;--warning-bg: color-mix(in srgb, var(--warning) 14%, transparent);--info: #2d4b7a;--info-bg: color-mix(in srgb, var(--info) 14%, transparent);--merged: #5a2d8a;--merged-bg: color-mix(in srgb, var(--merged) 14%, transparent);--font-display: "Instrument Serif", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--nav-height: 58px;--header-height: 48px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;font-feature-settings:"ss01","cv11"}.tabular,.mono,code,pre,time{font-variant-numeric:tabular-nums}#root{max-width:480px;margin:0 auto;min-height:100vh;position:relative}.page{padding:calc(var(--header-height) + var(--safe-top) + 18px) 18px calc(var(--nav-height) + var(--safe-bottom) + 18px);animation:pageIn .36s cubic-bezier(.2,.8,.2,1) both}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}h1,h2,h3{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em}.display{font-family:var(--font-display);font-weight:400}.page-title{font-family:var(--font-display);font-size:30px;line-height:1.1;letter-spacing:-.015em;margin-bottom:14px}.section-label{font-family:var(--font-body);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--hint);padding:22px 2px 8px}.hint{color:var(--hint);font-size:12.5px}.label{font-size:13px;font-weight:500}.mono{font-family:var(--font-mono);font-size:12.5px;letter-spacing:-.01em}.card{background:var(--surface);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:10px;border:1px solid var(--border)}.card--tight{padding:10px 14px}.card--plain{background:transparent;border:1px solid var(--border)}.card--group{padding:0;overflow:hidden}.card--group>.row{padding:12px 16px;border-bottom:1px solid var(--border)}.card--group>.row:last-child{border-bottom:none}.card-title{font-size:15px;font-weight:600;margin-bottom:4px;letter-spacing:-.005em}.card-desc{color:var(--hint);font-size:12.5px;line-height:1.5;margin-bottom:12px}.card--interactive{cursor:pointer;transition:background .14s ease,transform .14s ease;text-align:left;width:100%;display:block;border-width:1px;color:inherit;font:inherit;font-family:var(--font-body)}.card--interactive:hover{background:var(--surface-hover)}.card--interactive:active{transform:scale(.992)}.input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;font-size:14px;width:100%;color:var(--text);outline:none;font-family:inherit;transition:border-color .15s ease}.input:focus-visible{border-color:var(--accent)}textarea.input{resize:vertical;line-height:1.5}.btn{background:var(--accent);color:var(--accent-text);border:none;border-radius:var(--radius-sm);padding:11px 16px;font-size:14px;font-weight:600;cursor:pointer;width:100%;font-family:inherit;transition:opacity .15s ease,transform .12s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;letter-spacing:-.005em}.btn:disabled{opacity:.5;cursor:default}.btn:active:not(:disabled){transform:scale(.985)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn--ghost{background:transparent;color:var(--text);border:1px solid var(--border-strong)}.btn--ghost:hover{background:var(--surface-hover)}.btn--danger-ghost{background:transparent;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.btn--danger{background:var(--danger);color:#fff}.btn--success{background:var(--success);color:#fff}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-family:inherit;transition:background .14s ease,border-color .14s ease}.btn-icon:hover{background:var(--surface-hover);border-color:var(--border-strong)}.pill{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--hint);cursor:pointer;font-size:12.5px;font-weight:500;font-family:inherit;letter-spacing:-.005em;transition:color .14s ease,border-color .14s ease,background .14s ease}.pill--active{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.toggle-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--border)}.toggle-row:last-child{border-bottom:none}.toggle-row__text{flex:1;font-size:13.5px}.toggle-row__desc{font-size:11.5px;color:var(--hint);margin-top:3px;line-height:1.45}.toggle{position:relative;width:40px;height:22px;border-radius:999px;background:var(--border-strong);border:none;cursor:pointer;flex-shrink:0;transition:background .2s ease;padding:0}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.toggle--on{background:var(--text)}.toggle--on:after{transform:translate(18px)}.status{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;font-family:var(--font-mono);letter-spacing:.03em;text-transform:uppercase;line-height:1}.status--success{color:var(--success);background:var(--success-bg)}.status--danger{color:var(--danger);background:var(--danger-bg)}.status--warning{color:var(--warning);background:var(--warning-bg)}.status--info{color:var(--info);background:var(--info-bg)}.status--merged{color:var(--merged);background:var(--merged-bg)}.status--muted{color:var(--hint);background:var(--border)}.row{display:flex;align-items:center;gap:10px}.col{display:flex;flex-direction:column;gap:10px}.flex1{flex:1;min-width:0}.empty{text-align:center;padding:64px 20px 40px}.empty__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;color:var(--hint);border:1px solid var(--border);margin-bottom:14px}.empty__title{font-family:var(--font-display);font-size:22px;margin-bottom:4px;letter-spacing:-.01em}.empty__desc{color:var(--hint);font-size:13px;line-height:1.5;max-width:320px;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:24px;height:24px;border:1.5px solid var(--border);border-top-color:var(--text);border-radius:50%;animation:spin .75s linear infinite}.spinner-wrap{display:flex;justify-content:center;align-items:center;min-height:180px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider{height:1px;background:var(--border);margin:8px 0}.link{color:var(--text);text-decoration:none;border-bottom:1px solid var(--border-strong);padding-bottom:1px;font-weight:500}.link:hover{border-bottom-color:var(--text)}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-family:var(--font-mono);color:var(--hint);letter-spacing:.02em}
