:root{--tg-bg:var(--tg-theme-bg-color,#fff);--tg-secondary-bg:var(--tg-theme-secondary-bg-color,#efeff4);--tg-section-bg:var(--tg-theme-section-bg-color,#fff);--tg-text:var(--tg-theme-text-color,#000);--tg-hint:var(--tg-theme-hint-color,#8e8e93);--tg-link:var(--tg-theme-link-color,#007aff);--tg-button:var(--tg-theme-button-color,#007aff);--tg-button-text:var(--tg-theme-button-text-color,#fff);--tg-section-header:var(--tg-theme-section-header-text-color,#6d6d72);--tg-section-separator:var(--tg-theme-section-separator-color,#3c3c4321);--tg-accent:var(--tg-theme-accent-text-color,#007aff);--tg-subtitle:var(--tg-theme-subtitle-text-color,#8e8e93);--tg-destructive:var(--tg-theme-destructive-text-color,#ff3b30);--tg-bottom-bg:var(--tg-theme-bottom-bar-bg-color,var(--tg-bg));--bg:var(--tg-secondary-bg);--card:var(--tg-section-bg);--text:var(--tg-text);--hint:var(--tg-hint);--accent:var(--tg-accent);--link:var(--tg-link);--separator:var(--tg-section-separator);--caption:var(--tg-section-header);--destructive:var(--tg-destructive);--radius:10px;--row-gutter:16px;--row-min-height:44px;--section-spacing:28px;--tabbar-height:56px;--shadow-sheet:0 -8px 24px #00000014;color:var(--text);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,system-ui,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,sans-serif;font-size:17px;line-height:1.3}[data-color-scheme=dark]{--tg-bg:var(--tg-theme-bg-color,#000);--tg-secondary-bg:var(--tg-theme-secondary-bg-color,#1c1c1e);--tg-section-bg:var(--tg-theme-section-bg-color,#2c2c2e);--tg-text:var(--tg-theme-text-color,#fff);--tg-hint:var(--tg-theme-hint-color,#8e8e93);--tg-section-header:var(--tg-theme-section-header-text-color,#8e8e93);--tg-section-separator:var(--tg-theme-section-separator-color,#54545859)}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);min-height:100vh;overscroll-behavior-y:none;min-height:100dvh;margin:0;padding:0}[x-cloak]{display:none!important}a{color:var(--link);text-decoration:none}code{background:#78788029;border-radius:4px;padding:1px 4px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.92em}.topbar{z-index:10;background:var(--bg);text-align:center;padding:12px 16px;position:sticky;top:0}.topbar-title{letter-spacing:-.4px;color:var(--text);margin:0;font-size:17px;font-weight:600}.topbar-subtitle{color:var(--hint);margin:2px 0 0;font-size:13px;font-weight:400}.content{max-width:640px;margin:0 auto;padding:8px 16px 0}.caption{text-transform:uppercase;color:var(--caption);letter-spacing:-.08px;padding:16px 16px 6px;font-size:13px;font-weight:400}.footnote{color:var(--caption);margin:6px 16px 0;padding-bottom:8px;font-size:13px;line-height:1.35}.list{background:var(--card);border-radius:var(--radius);margin:0;padding:0;list-style:none;overflow:hidden}.row{min-height:var(--row-min-height);padding:11px var(--row-gutter);background:var(--card);align-items:center;gap:12px;display:flex;position:relative}.row+.row:before{content:"";left:calc(var(--row-gutter) + 36px);background:var(--separator);transform-origin:top;pointer-events:none;height:1px;position:absolute;top:0;right:0;transform:scaleY(.5)}.row.row-input+.row:before{left:var(--row-gutter)}.row:has(+.row.row-input):before{left:var(--row-gutter)}.row-leading{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.row-icon{width:24px;height:24px;display:inline-flex}.row-icon svg{width:100%;height:100%;display:block}.row-icon-tint{color:var(--accent)}.row-icon-destructive{color:var(--destructive)}.row-content{flex:1;min-width:0}.row-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:400;overflow:hidden}.row-title-multiline{white-space:normal;line-height:1.35}.row-subtitle{color:var(--hint);text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.row-trailing{color:var(--hint);flex-shrink:0;align-items:center;gap:6px;display:flex}.row-value{color:var(--hint);font-size:17px;font-weight:400}.row-chevron{color:#3c3c434d;width:18px;height:18px;display:inline-flex}.row-chevron svg{width:100%;height:100%;display:block}[data-color-scheme=dark] .row-chevron{color:#ebebf54d}.row-chevron-destructive{color:var(--destructive);opacity:.7}.row-tap{cursor:pointer;transition:background-color 80ms ease-out}.row-tap:active{background:#7878802e}.row-empty .row-title{color:var(--hint)}.row-input{align-items:center}.row-label{color:var(--text);flex-shrink:0;min-width:90px;font-size:17px}.row-field{-webkit-appearance:none;appearance:none;font:inherit;color:var(--text);text-align:right;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:4px 0}.row-field::placeholder{color:var(--hint);opacity:1}.row-textarea{flex-direction:column;align-items:stretch}.row-field-textarea{text-align:left;resize:vertical;width:100%;min-height:120px;font-family:inherit;line-height:1.4}.row-field-mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:14px}.switch{--switch-w:51px;--switch-h:31px;--switch-thumb:27px;-webkit-appearance:none;appearance:none;width:var(--switch-w);height:var(--switch-h);border-radius:var(--switch-h);cursor:pointer;background:#78788052;border:none;flex-shrink:0;padding:2px;transition:background-color .18s ease-out;position:relative}.switch.is-on{background:var(--accent,#34c759)}.switch-thumb{width:var(--switch-thumb);height:var(--switch-thumb);background:#fff;border-radius:50%;transition:transform .2s cubic-bezier(.4,0,.2,1);display:block;transform:translate(0);box-shadow:0 3px 8px #00000026,0 1px 1px #0000000f}.switch.is-on .switch-thumb{transform:translateX(calc(var(--switch-w) - var(--switch-thumb) - 4px))}.button{-webkit-appearance:none;appearance:none;cursor:pointer;font:inherit;border-radius:var(--radius);border:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:12px;padding:14px 16px;font-size:17px;font-weight:600;transition:opacity .1s ease-out,transform .1s ease-out;display:flex}.button:active{opacity:.7;transform:scale(.985)}.button-icon{width:18px;height:18px;display:inline-flex}.button-icon svg{width:100%;height:100%;display:block}.button-fill{background:var(--accent);color:#fff}.button-destructive{background:var(--card);color:var(--destructive)}.tabbar{z-index:20;background:var(--tg-bottom-bg);border-top:1px solid var(--separator);-webkit-backdrop-filter:saturate(180%)blur(20px);grid-template-columns:repeat(4,1fr);padding:6px 0;display:grid;position:fixed;bottom:0;left:0;right:0}.tab{-webkit-appearance:none;appearance:none;cursor:pointer;font:inherit;color:var(--hint);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:4px 0;transition:color .12s ease-out;display:flex}.tab.is-active{color:var(--accent)}.tab-icon{width:24px;height:24px;display:inline-flex}.tab-icon svg{width:100%;height:100%;display:block}.tab-label{letter-spacing:.04px;font-size:10px;font-weight:500}.sheet{z-index:100;background:#00000059;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.sheet-panel{background:var(--bg);width:100%;max-width:640px;max-height:92dvh;box-shadow:var(--shadow-sheet);border-top-left-radius:14px;border-top-right-radius:14px;flex-direction:column;display:flex;overflow-y:auto}.sheet-header{background:var(--bg);border-bottom:1px solid var(--separator);z-index:1;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:12px 16px;display:grid;position:sticky;top:0}.sheet-title{text-align:center;margin:0;font-size:17px;font-weight:600}.sheet-action{-webkit-appearance:none;appearance:none;cursor:pointer;font:inherit;color:var(--accent);text-align:left;background:0 0;border:none;padding:6px 0;font-size:17px}.sheet-action:last-child{text-align:right}.sheet-action-strong{font-weight:600}.sheet-action:disabled{color:var(--hint);cursor:default}.sheet-content{padding:0 16px 32px}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-out{0%{transform:translateY(0)}to{transform:translateY(100%)}}.sheet-enter .sheet-panel{animation:.24s cubic-bezier(.32,.72,0,1) sheet-in}.sheet-leave .sheet-panel{animation:.2s cubic-bezier(.4,0,.6,1) sheet-out}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
